From e7cc2f15413677aa5edbf2243cd89dcb13b85344 Mon Sep 17 00:00:00 2001 From: rivers Date: Fri, 19 Mar 2010 21:59:09 +0000 Subject: [PATCH] New file git-svn-id: https://subversion.xor.aps.anl.gov/synApps/areaDetector/trunk@10287 dc6c5ff5-0b8b-c028-a01f-ffb33f00fc8b --- documentation/NDPluginProcess.html | 1077 ++++++++++++++++++++++++++++ documentation/NDPluginStats.html | 383 ++++++++++ documentation/NDProcess.png | Bin 0 -> 54292 bytes documentation/NDStats.png | Bin 0 -> 42842 bytes 4 files changed, 1460 insertions(+) create mode 100755 documentation/NDPluginProcess.html create mode 100755 documentation/NDPluginStats.html create mode 100755 documentation/NDProcess.png create mode 100755 documentation/NDStats.png diff --git a/documentation/NDPluginProcess.html b/documentation/NDPluginProcess.html new file mode 100755 index 0000000..9953f29 --- /dev/null +++ b/documentation/NDPluginProcess.html @@ -0,0 +1,1077 @@ + + + + areaDetector Plugin NDPluginROI + + + +
+

+ areaDetector Plugin NDPluginROI

+

+ March 7, 2010

+

+ Mark Rivers

+

+ University of Chicago

+
+

+ Contents

+ +

+ Overview +

+

+ NDPluginROI selects one or more rectangular "Regions-Of-Interest" (ROIs) from the + NDArray callback data. The maximum number of ROIs is defined when the plugin is + created. Each ROI can be any size, from a single array element to the entire array. + NDPluginROI optinally does the following operations with these ROIs, in this order: +

+
    +
  1. Extracts of the selected region. When the ROI is extracted the following operations + can be performed: +
      +
    • Binning in any dimension.
    • +
    • Orientation reversal (mirroring) in any dimension.
    • +
    • Conversion to a new data type.
    • +
    +
  2. +
  3. Subtracts a background array which has been previously acquired.
  4. +
  5. Clips to minimum and maximum specified values.
  6. +
  7. Computes statistics, e.g. mean, maximum, minimum, total, net (background subtracted), + and centroid values.
  8. +
  9. Computes a histogram of the values (e.g. number of pixels versus intensity per + pixel)
  10. +
  11. Exports the ROI as a new NDArray object. In this regard NDPluginROI is different + from the NDPluginStdArrays and NDPluginFile plugins because it is both a recipient + of callbacks (as they are) and a source of NDArray callbacks, as a driver + is. This means that the NDPluginStdArrays and NDPluginFile plugins can be connected + to an NDPluginROI plugin, in which case they will save or display the selected ROI + rather than the full detector driver data.
  12. +
+

+ Each of these operations can be enabled or disabled independently. +

+

+ Each NDPluginROI can handle any number of ROIs. Several ROI plugins could be created + for a single detector driver to increase the number of threads running in parallel, + maximizing the use of multiple CPU cores. Individual ROIs are addressed through + the asyn interfaces by the asyn "addr" field in the asynUser structure. Note that + while the NDPluginROI should be N-dimensional, the EPICS interface to the definition + of the ROI is currently limited to a maximum of 3-D. This limitation may be removed + in a future release. +

+

+ NDPluginROI inherits from NDPluginDriver. The + NDPluginROI class documentation describes this class in detail. +

+

+ NDPluginROI.h defines the following parameters that are global to all ROIs for a + plugin. It also implements all of the standard plugin parameters from + NDPluginDriver. The EPICS database NDROI.template provide access to these + parameters, listed in the following table. +

+ + + + + + + + + + + + + + + + + + + + + + + + +
+ Parameter Definitions in NDPluginROI.h and EPICS Record Definitions in NDROI.template
+ Enum name + asyn interface + Access + Description + drvUser string + EPICS record name + EPICS record type
+ NDPluginROIHighlight + asynInt32 + r/w + Flag to indicate if the borders of ROIs should be highlighted (0=No, 1=Yes). If + set then the borders of all ROIs will be highlighted in all other ROIs where they + overlap. One common use of this is to set the first ROI to be the entire detector, + and then the location of all other ROIs will be visible when the first ROI is displayed. + The highlighting is done by replacing the border pixels with the maximum value of + the data in that ROI. Statistics are computed before the highlighting is done. + HIGHLIGHT + $(P)$(R)Highlight
+ $(P)$(R)Highlight_RBV
+ bo
+ bi
+

+ NDPluginROI.h defines the following parameters that are specific to each individual + ROI in the plugin. The EPICS database NDROIN.template provide access to these parameters, + listed in the following table. The pasynUser->addr is used to control which ROI + is being addressed. Note that to reduce the width of this table the enum names have + been split into 2 lines, but these are just a single name, for example NDPluginROIName. +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Parameter Definitions in NDPluginROI.h and EPICS Record Definitions in NDROIN.template
+ Enum name + asyn interface + Access + Description + drvUser string + EPICS record name + EPICS record type
+ NDPluginROI
+ Name
+ asynOctet + r/w + Name of this ROI + NAME + $(P)$(R)Name
+ $(P)$(R)Name_RBV
+ stringout
+ stringin
+ NDPluginROI
+ Use
+ asynInt32 + r/w + Flag to control whether this ROI is used (0=No, 1=Yes). Not using an ROI reduces + CPU load. + USE + $(P)$(R)Use
+ $(P)$(R)Use_RBV
+ bo
+ bi
+ ROI definition
+ NDPluginROI
+ Dim0Bin
+ asynInt32 + r/w + Binning in the X direction + DIM0_BIN + $(P)$(R)BinX
+ $(P)$(R)BinX_RBV
+ longout
+ longin
+ NDPluginROI
+ Dim1Bin
+ asynInt32 + r/w + Binning in the Y direction + DIM1_BIN + $(P)$(R)BinY
+ $(P)$(R)BinY_RBV
+ longout
+ longin
+ NDPluginROI
+ Dim2Bin
+ asynInt32 + r/w + Binning in the Z direction + DIM2_BIN + $(P)$(R)BinZ
+ $(P)$(R)BinZ_RBV
+ longout
+ longin
+ NDPluginROI
+ Dim0Min
+ asynInt32 + r/w + First pixel in the ROI in the X direction. +
+ 0 is the first pixel in the array.
+ DIM0_MIN + $(P)$(R)MinX
+ $(P)$(R)MinX_RBV
+ longout
+ longin
+ NDPluginROI
+ Dim1Min
+ asynInt32 + r/w + First pixel in the ROI in the Y direction.
+ 0 is the first pixel in the array.
+ DIM1_MIN + $(P)$(R)MinY
+ $(P)$(R)MinY_RBV
+ longout
+ longin
+ NDPluginROI
+ Dim2Min
+ asynInt32 + r/w + First pixel in the ROI in the Z direction.
+ 0 is the first pixel in the array.
+ DIM2_MIN + $(P)$(R)MinZ
+ $(P)$(R)MinZ_RBV
+ longout
+ longin
+ NDPluginROI
+ Dim0Size
+ asynInt32 + r/w + Size of the ROI in the X direction + DIM0_SIZE + $(P)$(R)SizeX
+ $(P)$(R)SizeX_RBV
+ longout
+ longin
+ NDPluginROI
+ Dim1Size
+ asynInt32 + r/w + Size of the ROI in the Y direction + DIM1_SIZE + $(P)$(R)SizeY
+ $(P)$(R)SizeY_RBV
+ longout
+ longin
+ NDPluginROI
+ Dim2Size
+ asynInt32 + r/w + Size of the ROI in the Z direction + DIM2_SIZE + $(P)$(R)SizeZ
+ $(P)$(R)SizeZ_RBV
+ longout
+ longin
+ NDPluginROI
+ Dim0MaxSize
+ asynInt32 + r/o + Maximum size of the ROI in the X direction + DIM0_MAX_SIZE + $(P)$(R)MaxSizeX_RBV + longin
+ NDPluginROI
+ Dim1MaxSize
+ asynInt32 + r/o + Maximum size of the ROI in the Y direction + DIM1_MAX_SIZE + $(P)$(R)MaxSizeY_RBV + longin
+ NDPluginROI
+ Dim2MaxSize
+ asynInt32 + r/o + Maximum size of the ROI in the Z direction + DIM2_MAX_SIZE + $(P)$(R)MaxSizeZ_RBV + longin
+ NDPluginROI
+ Dim0Reverse
+ asynInt32 + r/w + Reverse ROI in the X direction
+ (0=No, 1=Yes)
+ DIM0_REVERSE + $(P)$(R)ReverseX
+ $(P)$(R)ReverseX_RBV
+ longout
+ longin
+ NDPluginROI
+ Dim1Reverse
+ asynInt32 + r/w + Reverse ROI in the Y direction
+ (0=No, 1=Yes)
+ DIM1_REVERSE + $(P)$(R)ReverseY
+ $(P)$(R)ReverseY_RBV
+ longout
+ longin
+ NDPluginROI
+ Dim2Reverse
+ asynInt32 + r/w + Reverse ROI in the Z direction
+ (0=No, 1=Yes)
+ DIM2_REVERSE + $(P)$(R)ReverseZ
+ $(P)$(R)ReverseZ_RBV
+ longout
+ longin
+ NDPluginROI
+ DataType
+ asynInt32 + r/w + Data type of the ROI (NDDataType_t). This can be different from the data type of + the NDArray callback data. + ROI_DATA_TYPE + $(P)$(R)DataType
+ $(P)$(R)DataType_RBV
+ mbbo
+ mbbi
+ NDPluginROI
+ BgdWidth
+ asynInt32 + r/w + Width of the background in pixels to use when computing net counts. 0=no background + subtraction, so the net counts is the same as the total counts. + BGD_WIDTH + $(P)$(R)BgdWidth
+ $(P)$(R)BgdWidth_RBV
+ longout
+ longin
+ NDArraySizeX + asynInt32 + r/o + Size of the ROI data in the X direction + ARRAY_SIZE_X + $(P)$(R)ArraySizeX_RBV + longin
+ NDArraySizeY + asynInt32 + r/o + Size of the ROI data in the Y direction + ARRAY_SIZE_Y + $(P)$(R)ArraySizeY_RBV + longin
+ NDArraySizeZ + asynInt32 + r/o + Size of the ROI data in the Z direction + ARRAY_SIZE_Z + $(P)$(R)ArraySizeZ_RBV + longin
+ ROI clipping and background subtraction
+ NDPluginROI
+ GrabBackground
+ asynInt32 + r/w + Command to use the most recently acquired ROI array as a background. Note that this + recently acquired ROI should have been acquired with EnableBackground=0, or else + that array will already have had the background subtracted, which is probably not + what was intended! + GRAB_BACKGROUND + $(P)$(R)GrabBackground
+ $(P)$(R)GrabBackground_RBV
+ bo
+ bi
+ NDPluginROI
+ ValidBackground
+ asynInt32 + r/o + Flag indicating whether there is a valid background array that has been acquired + for this ROI using GrabBackground. This flag will be Invalid (0) if no background + has been acquired, or of the size of the ROI has changed since the background was + last acquired. + VALID_BACKGROUND + $(P)$(R)ValidBackground_RBV + bi
+ NDPluginROI
+ EnableBackground
+ asynInt32 + r/w + Flag indicating whether the background array acquired with GrabBackground should + be subtracted when computing this ROI. This background subtraction is done before + the clipping operations, and before the statistics are computed. If ValidBackground=0 + then no background subtraction is done. This background subtraction modifies the + ROI data, so other plugins that use this ROI will receive the background subtracted + data. + ENABLE_BACKGROUND + $(P)$(R)EnableBackground
+ $(P)$(R)EnableBackground_RBV
+ bo
+ bi
+ NDPluginROI
+ EnableLowClip
+ asynInt32 + r/w + Flag to control whether to clip values to the LowClip value for this ROI (0=No, + 1=Yes). + + ENABLE_LOW_CLIP + $(P)$(R)EnableLowClip
+ $(P)$(R)EnableLowClip_RBV
+ bo
+ bi
+ NDPluginROI
+ LowClip
+ asynFloat64 + r/w + The minimum allowed value for this ROI. If EnableLowClip=1, then all values in the + array less than LowClip will be replaced by LowClip. This clipping operation is + performed after the background is subtracted (if EnableBackground=1). This clipping + modifies the ROI data, so other plugins that use this ROI will receive the clipped + data. + + LOW_CLIP + $(P)$(R)LowClip
+ $(P)$(R)LowClip_RBV
+ ao
+ ai
+ NDPluginROI
+ EnableHighClip
+ asynInt32 + r/w + Flag to control whether to clip values to the HighClip value for this ROI (0=No, + 1=Yes). + + ENABLE_HIGH_CLIP + $(P)$(R)EnableHighClip
+ $(P)$(R)EnableHighClip_RBV
+ bo
+ bi
+ NDPluginROI
+ HighClip
+ asynFloat64 + r/w + The maximum allowed value for this ROI. If EnableHighClip=1, then all values in + the array greater than HighClip will be replaced by HighClip. This clipping operation + is performed after the background is subtracted (if EnableBackground=1). This clipping + modifies the ROI data, so other plugins that use this ROI will receive the clipped + data. + + HIGH_CLIP + $(P)$(R)HighClip
+ $(P)$(R)HighClip_RBV
+ ao
+ ai
+ ROI statistics
+ NDPluginROI
+ ComputeStatistics
+ asynInt32 + r/w + Flag to control whether to compute statistics for this ROI (0=No, 1=Yes). Not computing + statistics reduces CPU load. + COMPUTE_STATISTICS + $(P)$(R)ComputeStatistics
+ $(P)$(R)ComputeStatistics_RBV
+ bo
+ bi
+ NDPluginROI
+ MinValue
+ asynFloat64 + r/o + Minimum value in any element in the ROI + MIN_VALUE + $(P)$(R)MinValue_RBV + ai
+ NDPluginROI
+ MaxValue
+ asynFloat64 + r/o + Maximum value in any element in the ROI + MAX_VALUE + $(P)$(R)MaxValue_RBV + ai
+ NDPluginROI
+ MeanValue
+ asynFloat64 + r/o + Mean value in the ROI + MEAN_VALUE + $(P)$(R)MeanValue_RBV + ai
+ NDPluginROI
+ Total
+ asynFloat64 + r/o + Sum (total) of all elements in the ROI + TOTAL + $(P)$(R)Total_RBV + ai
+ NDPluginROI
+ Net
+ asynFloat64 + r/o + Net (background subtracted) total of all elements in the ROI. The background is + calculated by determining the average counts per array element in a border around + the ROI of width NDPluginROIBgdWidth. This average background counts per element + is then subtracted from all elements inside the ROI. If NDPluginROIBgdWidth is ≤ + 0 then no background is computed. Note that this background subtraction is done + after the "array" background is subtracted if EnableBackground=1, as described above. + + NET + $(P)$(R)Net_RBV + ai
+ NDPluginROI
+ CentroidX
+ asynFloat64 + r/o + X centroid of the ROI. + CENTROIDX_VALUE + $(P)$(R)CentroidX_RBV + ai
+ NDPluginROI
+ CentroidY
+ asynFloat64 + r/o + Y centroid of the ROI. + CENTROIDY_VALUE + $(P)$(R)CentroidY_RBV + ai
+ ROI histogram
+ NDPluginROI
+ ComputeHistogram
+ asynInt32 + r/w + Flag to control whether to compute the histogram for this ROI (0=No, 1=Yes). Not + computing the histogram reduces CPU load. + COMPUTE_HISTOGRAM + $(P)$(R)ComputeHistogram
+ $(P)$(R)ComputeHistogram_RBV
+ bo
+ bi
+ NDPluginROI
+ HistSize
+ asynInt32 + r/w + Number of elements (bins) in the histogram + HIST_SIZE + $(P)$(R)HistSize
+ $(P)$(R)HistSize_RBV
+ longout
+ longin
+ NDPluginROI
+ HistMin
+ asynFloat64 + r/w + Minimum value for the histogram. All values less than or equal to this will be in + the first bin of the histogram. + HIST_MIN + $(P)$(R)HistMin
+ $(P)$(R)HistMin_RBV
+ ao
+ ai
+ NDPluginROI
+ HistMax
+ asynFloat64 + r/w + Maximum value for the histogram. All values greater than or equal to this will be + in the last bin of the histogram. + HIST_MAX + $(P)$(R)HistMax
+ $(P)$(R)HistMax_RBV
+ ao
+ ai
+ NDPluginROI
+ HistEntropy
+ asynFloat64 + r/o + Entropy of the image. This is a measure of the sharpness of the histogram, and is + often a useful figure of merit for determining sharpness of focus, etc. It is defined + as -SUM(BIN[i]*log(BIN[i]), where the sum is over the number of bins in the histogram + and BIN[i] is the number of elements in bin i. + HIST_ENTROPY + $(P)$(R)HistEntropy_RBV + ai
+ NDPluginROI
+ HistArray
+ asynFloat64Array + r/o + Histogram array, i.e. counts in each histogram bin. + HIST_ARRAY + $(P)$(R)Histogram_RBV + waveform
+

+ A special case is made when the NDArray data has colorMode=NDColorModeRGB1 or NDColorModeRGB2. + In these cases the user interface to the array dimensions is changed so that the + Z PVs always refer to the color dimension (as for NDColorModeRGB3), the X dimension + refers to the horizontal direction, and the Y direction refers to the vertical direction. + This is very convenient, because it means that the ROI does not need to redefined + if, for example, the color mode is changed from Mono to RGB1, which would be required + if the X, Y and Z directions were not automatically switched.

+

+ Configuration

+

+ The NDPluginROI plugin is created with the NDROIConfigure command, either from C/C++ + or from the EPICS IOC shell.

+
+NDROIConfigure(const char *portName, int queueSize, int blockingCallbacks,
+               const char *NDArrayPort, int NDArrayAddr, int maxROIs,
+               int maxBuffers, size_t maxMemory,
+               int priority, int stackSize)
+  
+

+ For details on the meaning of the parameters to this function refer to the detailed + documentation on the NDROIConfigure function in the + NDPluginROI.cpp documentation and in the documentation for the constructor + for the NDPluginROI + class. +

+

+ Screen shots

+

+ The following is the MEDM screen that provides access to the parameters in NDPluginDriver.h + and NDPluginROI.h through records in NDPluginBase.template and NDROI.template. This + is the MEDM screen that is used to control the behavior of the ROI plugin, but not + the individual ROIs. +

+
+

+ NDROI.adl

+ NDROI.png +
+

+ The following is the MEDM screen that provides access to the parameters in NDPluginROI.h + for an individual ROI through records in NDROIN.template. This is the MEDM screen + that is used to control the behavior of a specific ROI. +
+

+
+

+ NDROIN.adl

+ NDROIN.png +
+

+ The following is another MEDM screen that provides access to the parameters in NDPluginROI.h + through records in NDROIN.template. This is the MEDM screen that is used to control + the most commonly used properties of 8 ROIs. +

+
+

+ NDROI8.adl

+ NDROI8.png +
+

+ The following is an IDL + epics_ad_display screen illustrating the highlighting of ROIs. In this example + the ROIs defined are those in the 8 ROI display above. The NDPluginStdArrays driver + has been configured to be receiving its NDArray callbacks from the first ROI (which + is defined to be the entire detector array), and the NDPluginROIHighlight flag is + set to Yes. +

+
+

+ Highlighted Regions-of-Interest

+ ROI_outlines.png +
+ + diff --git a/documentation/NDPluginStats.html b/documentation/NDPluginStats.html new file mode 100755 index 0000000..0d9948a --- /dev/null +++ b/documentation/NDPluginStats.html @@ -0,0 +1,383 @@ + + + + areaDetector Plugin NDPluginROI + + + +
+

+ areaDetector Plugin NDPluginStats

+

+ March 7, 2010

+

+ Mark Rivers

+

+ University of Chicago

+
+

+ Contents

+ +

+ Overview +

+

+ NDPluginStats computes array statistics, including minimum, maximum, mean, sigma, total, + net (background subtracted),and centroid values. + It can also compute a histogram of the values (e.g. number of pixels versus intensity per + pixel). The basic statistics, centroid, and histogram calculationscan be enabled or disabled independently. +

+

+ NDPluginROI inherits from NDPluginDriver. The + NDPluginStats class documentation describes this class in detail. +

+

+ NDPluginStats.h defines the following parameters. It also implements all of the standard plugin parameters from + NDPluginDriver. The EPICS database NDStats.template provide access to these + parameters, listed in the following table. +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Parameter Definitions in NDPluginStats.h and EPICS Record Definitions in NDStats.template
+ Enum name + asyn interface + Access + Description + drvUser string + EPICS record name + EPICS record type
+ NDPluginROI
+ BgdWidth
+ asynInt32 + r/w + Width of the background in pixels to use when computing net counts. 0=no background + subtraction, so the net counts is the same as the total counts. + BGD_WIDTH + $(P)$(R)BgdWidth
+ $(P)$(R)BgdWidth_RBV
+ longout
+ longin
+ NDPluginROI
+ ComputeStatistics
+ asynInt32 + r/w + Flag to control whether to compute statistics for this ROI (0=No, 1=Yes). Not computing + statistics reduces CPU load. + COMPUTE_STATISTICS + $(P)$(R)ComputeStatistics
+ $(P)$(R)ComputeStatistics_RBV
+ bo
+ bi
+ NDPluginROI
+ MinValue
+ asynFloat64 + r/o + Minimum value in any element in the ROI + MIN_VALUE + $(P)$(R)MinValue_RBV + ai
+ NDPluginROI
+ MaxValue
+ asynFloat64 + r/o + Maximum value in any element in the ROI + MAX_VALUE + $(P)$(R)MaxValue_RBV + ai
+ NDPluginROI
+ MeanValue
+ asynFloat64 + r/o + Mean value in the ROI + MEAN_VALUE + $(P)$(R)MeanValue_RBV + ai
+ NDPluginROI
+ Total
+ asynFloat64 + r/o + Sum (total) of all elements in the ROI + TOTAL + $(P)$(R)Total_RBV + ai
+ NDPluginROI
+ Net
+ asynFloat64 + r/o + Net (background subtracted) total of all elements in the ROI. The background is + calculated by determining the average counts per array element in a border around + the ROI of width NDPluginROIBgdWidth. This average background counts per element + is then subtracted from all elements inside the ROI. If NDPluginROIBgdWidth is ≤ + 0 then no background is computed. Note that this background subtraction is done + after the "array" background is subtracted if EnableBackground=1, as described above. + + NET + $(P)$(R)Net_RBV + ai
+ NDPluginROI
+ CentroidX
+ asynFloat64 + r/o + X centroid of the ROI. + CENTROIDX_VALUE + $(P)$(R)CentroidX_RBV + ai
+ NDPluginROI
+ CentroidY
+ asynFloat64 + r/o + Y centroid of the ROI. + CENTROIDY_VALUE + $(P)$(R)CentroidY_RBV + ai
+ ROI histogram
+ NDPluginROI
+ ComputeHistogram
+ asynInt32 + r/w + Flag to control whether to compute the histogram for this ROI (0=No, 1=Yes). Not + computing the histogram reduces CPU load. + COMPUTE_HISTOGRAM + $(P)$(R)ComputeHistogram
+ $(P)$(R)ComputeHistogram_RBV
+ bo
+ bi
+ NDPluginROI
+ HistSize
+ asynInt32 + r/w + Number of elements (bins) in the histogram + HIST_SIZE + $(P)$(R)HistSize
+ $(P)$(R)HistSize_RBV
+ longout
+ longin
+ NDPluginROI
+ HistMin
+ asynFloat64 + r/w + Minimum value for the histogram. All values less than or equal to this will be in + the first bin of the histogram. + HIST_MIN + $(P)$(R)HistMin
+ $(P)$(R)HistMin_RBV
+ ao
+ ai
+ NDPluginROI
+ HistMax
+ asynFloat64 + r/w + Maximum value for the histogram. All values greater than or equal to this will be + in the last bin of the histogram. + HIST_MAX + $(P)$(R)HistMax
+ $(P)$(R)HistMax_RBV
+ ao
+ ai
+ NDPluginROI
+ HistEntropy
+ asynFloat64 + r/o + Entropy of the image. This is a measure of the sharpness of the histogram, and is + often a useful figure of merit for determining sharpness of focus, etc. It is defined + as -SUM(BIN[i]*log(BIN[i]), where the sum is over the number of bins in the histogram + and BIN[i] is the number of elements in bin i. + HIST_ENTROPY + $(P)$(R)HistEntropy_RBV + ai
+ NDPluginROI
+ HistArray
+ asynFloat64Array + r/o + Histogram array, i.e. counts in each histogram bin. + HIST_ARRAY + $(P)$(R)Histogram_RBV + waveform
+

+ Configuration

+

+ The NDPluginROI plugin is created with the NDStatsConfigure command, either from C/C++ + or from the EPICS IOC shell.

+
+NDStatsConfigure(const char *portName, int queueSize, int blockingCallbacks,
+               const char *NDArrayPort, int NDArrayAddr,
+               int maxBuffers, size_t maxMemory,
+               int priority, int stackSize)
+  
+

+ For details on the meaning of the parameters to this function refer to the detailed + documentation on the NDROIConfigure function in the + NDPluginStats.cpp documentation and in the documentation for the constructor + for the NDPluginStats + class. +

+

+ Screen shots

+

+ The following is the MEDM screen that provides access to the parameters in NDPluginDriver.h + and NDPluginStats.h through records in NDPluginBase.template and NDStats.template. +

+
+

+ NDROI.adl

+ NDStats.png +
+ + diff --git a/documentation/NDProcess.png b/documentation/NDProcess.png new file mode 100755 index 0000000000000000000000000000000000000000..763ff2e650ab364e3614ad0b48f0f1cf7d5cb251 GIT binary patch literal 54292 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
DPOsEi` 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