areaDetector  3-5-0
EPICS areaDetector framework
Classes | Macros | Typedefs | Enumerations
NDPluginStats.h File Reference
#include <epicsTypes.h>
#include "NDPluginDriver.h"

Go to the source code of this file.

Classes

struct  NDStats
 
class  NDPluginStats
 Does image statistics. More...
 

Macros

#define NDPluginStatsComputeStatisticsString   "COMPUTE_STATISTICS" /* (asynInt32, r/w) Compute statistics? */
 
#define NDPluginStatsBgdWidthString   "BGD_WIDTH" /* (asynInt32, r/w) Width of background region when computing net */
 
#define NDPluginStatsMinValueString   "MIN_VALUE" /* (asynFloat64, r/o) Minimum counts in any element */
 
#define NDPluginStatsMinXString   "MIN_X" /* (asynFloat64, r/o) X position of minimum counts */
 
#define NDPluginStatsMinYString   "MIN_Y" /* (asynFloat64, r/o) Y position of minimum counts */
 
#define NDPluginStatsMaxValueString   "MAX_VALUE" /* (asynFloat64, r/o) Maximum counts in any element */
 
#define NDPluginStatsMaxXString   "MAX_X" /* (asynFloat64, r/o) X position of maximum counts */
 
#define NDPluginStatsMaxYString   "MAX_Y" /* (asynFloat64, r/o) Y position of maximum counts */
 
#define NDPluginStatsMeanValueString   "MEAN_VALUE" /* (asynFloat64, r/o) Mean counts of all elements */
 
#define NDPluginStatsSigmaValueString   "SIGMA_VALUE" /* (asynFloat64, r/o) Sigma of all elements */
 
#define NDPluginStatsTotalString   "TOTAL" /* (asynFloat64, r/o) Sum of all elements */
 
#define NDPluginStatsNetString   "NET" /* (asynFloat64, r/o) Sum of all elements minus background */
 
#define NDPluginStatsComputeCentroidString   "COMPUTE_CENTROID" /* (asynInt32, r/w) Compute centroid? */
 
#define NDPluginStatsCentroidThresholdString   "CENTROID_THRESHOLD" /* (asynFloat64, r/w) Threshold when computing centroids */
 
#define NDPluginStatsCentroidTotalString   "CENTROID_TOTAL" /* (asynFloat64, r/o) Total centroid */
 
#define NDPluginStatsCentroidXString   "CENTROIDX_VALUE" /* (asynFloat64, r/o) X centroid */
 
#define NDPluginStatsCentroidYString   "CENTROIDY_VALUE" /* (asynFloat64, r/o) Y centroid */
 
#define NDPluginStatsSigmaXString   "SIGMAX_VALUE" /* (asynFloat64, r/o) Sigma X */
 
#define NDPluginStatsSigmaYString   "SIGMAY_VALUE" /* (asynFloat64, r/o) Sigma Y */
 
#define NDPluginStatsSigmaXYString   "SIGMAXY_VALUE" /* (asynFloat64, r/o) Sigma XY */
 
#define NDPluginStatsSkewXString   "SKEWX_VALUE" /* (asynFloat64, r/o) Skew X */
 
#define NDPluginStatsSkewYString   "SKEWY_VALUE" /* (asynFloat64, r/o) Skew Y */
 
#define NDPluginStatsKurtosisXString   "KURTOSISX_VALUE" /* (asynFloat64, r/o) Kurtosis X */
 
#define NDPluginStatsKurtosisYString   "KURTOSISY_VALUE" /* (asynFloat64, r/o) Kurtosis Y */
 
#define NDPluginStatsEccentricityString   "ECCENTRICITY_VALUE" /* (asynFloat64, r/o) Eccentricity */
 
#define NDPluginStatsOrientationString   "ORIENTATION_VALUE" /* (asynFloat64, r/o) Orientation */
 
#define NDPluginStatsComputeProfilesString   "COMPUTE_PROFILES" /* (asynInt32, r/w) Compute profiles? */
 
#define NDPluginStatsProfileSizeXString   "PROFILE_SIZE_X" /* (asynInt32, r/o) X profile size */
 
#define NDPluginStatsProfileSizeYString   "PROFILE_SIZE_Y" /* (asynInt32, r/o) Y profile size */
 
#define NDPluginStatsCursorXString   "CURSOR_X" /* (asynInt32, r/w) X cursor position */
 
#define NDPluginStatsCursorYString   "CURSOR_Y" /* (asynInt32, r/w) Y cursor position */
 
#define NDPluginStatsProfileAverageXString   "PROFILE_AVERAGE_X" /* (asynFloat64Array, r/o) X average profile array */
 
#define NDPluginStatsProfileAverageYString   "PROFILE_AVERAGE_Y" /* (asynFloat64Array, r/o) Y average profile array */
 
#define NDPluginStatsProfileThresholdXString   "PROFILE_THRESHOLD_X" /* (asynFloat64Array, r/o) X average profile array after threshold */
 
#define NDPluginStatsProfileThresholdYString   "PROFILE_THRESHOLD_Y" /* (asynFloat64Array, r/o) Y average profile array after threshold */
 
#define NDPluginStatsProfileCentroidXString   "PROFILE_CENTROID_X" /* (asynFloat64Array, r/o) X centroid profile array */
 
#define NDPluginStatsProfileCentroidYString   "PROFILE_CENTROID_Y" /* (asynFloat64Array, r/o) Y centroid profile array */
 
#define NDPluginStatsProfileCursorXString   "PROFILE_CURSOR_X" /* (asynFloat64Array, r/o) X cursor profile array */
 
#define NDPluginStatsProfileCursorYString   "PROFILE_CURSOR_Y" /* (asynFloat64Array, r/o) Y cursor profile array */
 
#define NDPluginStatsComputeHistogramString   "COMPUTE_HISTOGRAM" /* (asynInt32, r/w) Compute histogram? */
 
#define NDPluginStatsHistSizeString   "HIST_SIZE" /* (asynInt32, r/w) Number of elements in histogram */
 
#define NDPluginStatsHistMinString   "HIST_MIN" /* (asynFloat64, r/w) Minimum value for histogram */
 
#define NDPluginStatsHistMaxString   "HIST_MAX" /* (asynFloat64, r/w) Maximum value for histogram */
 
#define NDPluginStatsHistBelowString   "HIST_BELOW" /* (asynInt32, r/o) Number of pixels below minimum */
 
#define NDPluginStatsHistAboveString   "HIST_ABOVE" /* (asynInt32, r/o) Number of pixels above maximum */
 
#define NDPluginStatsHistEntropyString   "HIST_ENTROPY" /* (asynFloat64, r/o) Image entropy calculcated from histogram */
 
#define NDPluginStatsHistArrayString   "HIST_ARRAY" /* (asynFloat64Array, r/o) Histogram array */
 
#define NDPluginStatsHistXArrayString   "HIST_X_ARRAY" /* (asynFloat64Array, r/o) Histogram X axis array */
 
#define NDPluginStatsCallbackPeriodString   "CALLBACK_PERIOD" /* (asynFloat64, r/w) Callback period */
 
#define FIRST_NDPLUGIN_STATS_PARAM   NDPluginStatsComputeStatistics
 

Typedefs

typedef struct NDStats NDStats_t
 

Enumerations

enum  NDStatProfileType {
  profAverage, profThreshold, profCentroid, profCursor,
  MAX_PROFILE_TYPES
}
 
enum  NDStatTSType {
  TSMinValue, TSMinX, TSMinY, TSMaxValue,
  TSMaxX, TSMaxY, TSMeanValue, TSSigmaValue,
  TSTotal, TSNet, TSCentroidTotal, TSCentroidX,
  TSCentroidY, TSSigmaX, TSSigmaY, TSSigmaXY,
  TSSkewX, TSSkewY, TSKurtosisX, TSKurtosisY,
  TSEccentricity, TSOrientation, TSTimestamp, MAX_TIME_SERIES_TYPES
}
 
enum  NDStatsTSControl_t { TSEraseStart, TSStart, TSStop, TSRead }
 

Macro Definition Documentation

◆ FIRST_NDPLUGIN_STATS_PARAM

#define FIRST_NDPLUGIN_STATS_PARAM   NDPluginStatsComputeStatistics

◆ NDPluginStatsBgdWidthString

#define NDPluginStatsBgdWidthString   "BGD_WIDTH" /* (asynInt32, r/w) Width of background region when computing net */

◆ NDPluginStatsCallbackPeriodString

#define NDPluginStatsCallbackPeriodString   "CALLBACK_PERIOD" /* (asynFloat64, r/w) Callback period */

◆ NDPluginStatsCentroidThresholdString

#define NDPluginStatsCentroidThresholdString   "CENTROID_THRESHOLD" /* (asynFloat64, r/w) Threshold when computing centroids */

◆ NDPluginStatsCentroidTotalString

#define NDPluginStatsCentroidTotalString   "CENTROID_TOTAL" /* (asynFloat64, r/o) Total centroid */

◆ NDPluginStatsCentroidXString

#define NDPluginStatsCentroidXString   "CENTROIDX_VALUE" /* (asynFloat64, r/o) X centroid */

◆ NDPluginStatsCentroidYString

#define NDPluginStatsCentroidYString   "CENTROIDY_VALUE" /* (asynFloat64, r/o) Y centroid */

◆ NDPluginStatsComputeCentroidString

#define NDPluginStatsComputeCentroidString   "COMPUTE_CENTROID" /* (asynInt32, r/w) Compute centroid? */

◆ NDPluginStatsComputeHistogramString

#define NDPluginStatsComputeHistogramString   "COMPUTE_HISTOGRAM" /* (asynInt32, r/w) Compute histogram? */

◆ NDPluginStatsComputeProfilesString

#define NDPluginStatsComputeProfilesString   "COMPUTE_PROFILES" /* (asynInt32, r/w) Compute profiles? */

◆ NDPluginStatsComputeStatisticsString

#define NDPluginStatsComputeStatisticsString   "COMPUTE_STATISTICS" /* (asynInt32, r/w) Compute statistics? */

◆ NDPluginStatsCursorXString

#define NDPluginStatsCursorXString   "CURSOR_X" /* (asynInt32, r/w) X cursor position */

◆ NDPluginStatsCursorYString

#define NDPluginStatsCursorYString   "CURSOR_Y" /* (asynInt32, r/w) Y cursor position */

◆ NDPluginStatsEccentricityString

#define NDPluginStatsEccentricityString   "ECCENTRICITY_VALUE" /* (asynFloat64, r/o) Eccentricity */

◆ NDPluginStatsHistAboveString

#define NDPluginStatsHistAboveString   "HIST_ABOVE" /* (asynInt32, r/o) Number of pixels above maximum */

◆ NDPluginStatsHistArrayString

#define NDPluginStatsHistArrayString   "HIST_ARRAY" /* (asynFloat64Array, r/o) Histogram array */

◆ NDPluginStatsHistBelowString

#define NDPluginStatsHistBelowString   "HIST_BELOW" /* (asynInt32, r/o) Number of pixels below minimum */

◆ NDPluginStatsHistEntropyString

#define NDPluginStatsHistEntropyString   "HIST_ENTROPY" /* (asynFloat64, r/o) Image entropy calculcated from histogram */

◆ NDPluginStatsHistMaxString

#define NDPluginStatsHistMaxString   "HIST_MAX" /* (asynFloat64, r/w) Maximum value for histogram */

◆ NDPluginStatsHistMinString

#define NDPluginStatsHistMinString   "HIST_MIN" /* (asynFloat64, r/w) Minimum value for histogram */

◆ NDPluginStatsHistSizeString

#define NDPluginStatsHistSizeString   "HIST_SIZE" /* (asynInt32, r/w) Number of elements in histogram */

◆ NDPluginStatsHistXArrayString

#define NDPluginStatsHistXArrayString   "HIST_X_ARRAY" /* (asynFloat64Array, r/o) Histogram X axis array */

◆ NDPluginStatsKurtosisXString

#define NDPluginStatsKurtosisXString   "KURTOSISX_VALUE" /* (asynFloat64, r/o) Kurtosis X */

◆ NDPluginStatsKurtosisYString

#define NDPluginStatsKurtosisYString   "KURTOSISY_VALUE" /* (asynFloat64, r/o) Kurtosis Y */

◆ NDPluginStatsMaxValueString

#define NDPluginStatsMaxValueString   "MAX_VALUE" /* (asynFloat64, r/o) Maximum counts in any element */

◆ NDPluginStatsMaxXString

#define NDPluginStatsMaxXString   "MAX_X" /* (asynFloat64, r/o) X position of maximum counts */

◆ NDPluginStatsMaxYString

#define NDPluginStatsMaxYString   "MAX_Y" /* (asynFloat64, r/o) Y position of maximum counts */

◆ NDPluginStatsMeanValueString

#define NDPluginStatsMeanValueString   "MEAN_VALUE" /* (asynFloat64, r/o) Mean counts of all elements */

◆ NDPluginStatsMinValueString

#define NDPluginStatsMinValueString   "MIN_VALUE" /* (asynFloat64, r/o) Minimum counts in any element */

◆ NDPluginStatsMinXString

#define NDPluginStatsMinXString   "MIN_X" /* (asynFloat64, r/o) X position of minimum counts */

◆ NDPluginStatsMinYString

#define NDPluginStatsMinYString   "MIN_Y" /* (asynFloat64, r/o) Y position of minimum counts */

◆ NDPluginStatsNetString

#define NDPluginStatsNetString   "NET" /* (asynFloat64, r/o) Sum of all elements minus background */

◆ NDPluginStatsOrientationString

#define NDPluginStatsOrientationString   "ORIENTATION_VALUE" /* (asynFloat64, r/o) Orientation */

◆ NDPluginStatsProfileAverageXString

#define NDPluginStatsProfileAverageXString   "PROFILE_AVERAGE_X" /* (asynFloat64Array, r/o) X average profile array */

◆ NDPluginStatsProfileAverageYString

#define NDPluginStatsProfileAverageYString   "PROFILE_AVERAGE_Y" /* (asynFloat64Array, r/o) Y average profile array */

◆ NDPluginStatsProfileCentroidXString

#define NDPluginStatsProfileCentroidXString   "PROFILE_CENTROID_X" /* (asynFloat64Array, r/o) X centroid profile array */

◆ NDPluginStatsProfileCentroidYString

#define NDPluginStatsProfileCentroidYString   "PROFILE_CENTROID_Y" /* (asynFloat64Array, r/o) Y centroid profile array */

◆ NDPluginStatsProfileCursorXString

#define NDPluginStatsProfileCursorXString   "PROFILE_CURSOR_X" /* (asynFloat64Array, r/o) X cursor profile array */

◆ NDPluginStatsProfileCursorYString

#define NDPluginStatsProfileCursorYString   "PROFILE_CURSOR_Y" /* (asynFloat64Array, r/o) Y cursor profile array */

◆ NDPluginStatsProfileSizeXString

#define NDPluginStatsProfileSizeXString   "PROFILE_SIZE_X" /* (asynInt32, r/o) X profile size */

◆ NDPluginStatsProfileSizeYString

#define NDPluginStatsProfileSizeYString   "PROFILE_SIZE_Y" /* (asynInt32, r/o) Y profile size */

◆ NDPluginStatsProfileThresholdXString

#define NDPluginStatsProfileThresholdXString   "PROFILE_THRESHOLD_X" /* (asynFloat64Array, r/o) X average profile array after threshold */

◆ NDPluginStatsProfileThresholdYString

#define NDPluginStatsProfileThresholdYString   "PROFILE_THRESHOLD_Y" /* (asynFloat64Array, r/o) Y average profile array after threshold */

◆ NDPluginStatsSigmaValueString

#define NDPluginStatsSigmaValueString   "SIGMA_VALUE" /* (asynFloat64, r/o) Sigma of all elements */

◆ NDPluginStatsSigmaXString

#define NDPluginStatsSigmaXString   "SIGMAX_VALUE" /* (asynFloat64, r/o) Sigma X */

◆ NDPluginStatsSigmaXYString

#define NDPluginStatsSigmaXYString   "SIGMAXY_VALUE" /* (asynFloat64, r/o) Sigma XY */

◆ NDPluginStatsSigmaYString

#define NDPluginStatsSigmaYString   "SIGMAY_VALUE" /* (asynFloat64, r/o) Sigma Y */

◆ NDPluginStatsSkewXString

#define NDPluginStatsSkewXString   "SKEWX_VALUE" /* (asynFloat64, r/o) Skew X */

◆ NDPluginStatsSkewYString

#define NDPluginStatsSkewYString   "SKEWY_VALUE" /* (asynFloat64, r/o) Skew Y */

◆ NDPluginStatsTotalString

#define NDPluginStatsTotalString   "TOTAL" /* (asynFloat64, r/o) Sum of all elements */

Typedef Documentation

◆ NDStats_t

typedef struct NDStats NDStats_t

Enumeration Type Documentation

◆ NDStatProfileType

Enumerator
profAverage 
profThreshold 
profCentroid 
profCursor 
MAX_PROFILE_TYPES 

◆ NDStatsTSControl_t

Enumerator
TSEraseStart 
TSStart 
TSStop 
TSRead 

◆ NDStatTSType

Enumerator
TSMinValue 
TSMinX 
TSMinY 
TSMaxValue 
TSMaxX 
TSMaxY 
TSMeanValue 
TSSigmaValue 
TSTotal 
TSNet 
TSCentroidTotal 
TSCentroidX 
TSCentroidY 
TSSigmaX 
TSSigmaY 
TSSigmaXY 
TSSkewX 
TSSkewY 
TSKurtosisX 
TSKurtosisY 
TSEccentricity 
TSOrientation 
TSTimestamp 
MAX_TIME_SERIES_TYPES