1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 <2017> 2018 2019 2020 2021 2022 2023 2024 | Index | 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 <2017> 2018 2019 2020 2021 2022 2023 2024 |
<== Date ==> | <== Thread ==> |
---|
Subject: | RE: NTNDArrays, Java |
From: | "Madden, Timothy J." <[email protected]> |
To: | "Rivers, Mark L." <[email protected]>, "'bob dalesio'" <[email protected]>, Marty Kraimer [[email protected]] <[email protected]>, Stefan <[email protected]>, Heinz Junkes <[email protected]> |
Cc: | EPICS tech-talk <[email protected]> |
Date: | Mon, 13 Mar 2017 17:47:24 +0000 |
Folks
I posted my source code with some comments at https://github.com/argonnexraydetector/MaddenNTNDArrayJavaClient/blob/master/src/epicsv4test/imageget.java I can get the data, but it does not show up as a real NTNDArray, only the fields I ask for. If I ask for whole NTNDArray on the createMonitor command, I crash the host IOC that hosts the PV. I started this on late Nov as Mark said, then got really busy and forgot about it. I am getting back to it. The PvaDriver source code seems to request the default settings when monitor is started. I understand default is not complete NTNDArray, but value, timestamp, and something else that I can't remember. I am probably confused on this. I can call pvinfo, pvget from the command line and see the NTNDArray. pvget only gets some fields, unless you request them. Not sure how to request the entire normative type on pvget. T From: Mark Rivers [[email protected]]
Sent: Friday, March 10, 2017 11:42 AM To: Madden, Timothy J.; 'bob dalesio' Cc: EPICS tech-talk Subject: RE: NTNDArrays, Java Ø I think I need just monitor the uniqueID, and when it changes, then I can do a full get of the ntndarray.
That is how the existing Channel Access client used to work. However, it was recently changed to monitor ArrayCounter_RBV rather than UniqueId. The reason is that areaDetector now supports processing plugins again without waiting for a new NDArray to arrive. In that case the UniqueId will not change, so ImageJ would not display the new array. The ArrayCounter_RBV field in the NDPluginStdArrays (Channel Access) or NDPluginPva (pvAccess) will always increment, so you could monitor that instead.
However, this approach will make your code specific to that areaDetector plugin since that PV is not part of the NTNDArray structure. Thus your ImageJ plugin would not work with other PV access servers sending NTNDArrays. I would be surprised if you cannot monitor the entire NTNDArray rather than having to monitor something else and then do a get. It seems to work fine in the pvaDriver.cpp C++ code. I suggest you try to make that original approach work.
Mark
From: Madden, Timothy J. [mailto:[email protected]]
folks From: Mark Rivers [[email protected]] He is correctly connected to the NDPluginPva server.
From:
[email protected] [mailto:[email protected]]
On Behalf Of bob dalesio
Are you connected to the area detector server or the waveform record? We are now working on making records put in the metadata. Bob
On Mar 10, 2017 11:16 AM, "Madden, Timothy J." <[email protected]> wrote: I am playing with NTNDArrays. I generate them from AD 2-5 with a sim detector and the pva plugin.
|