Files
ADAndor/ADApp/Db/NDStats.template
2012-09-29 22:09:01 +00:00

645 lines
16 KiB
Plaintext

###################################################################
# These records contain the basic statistics #
###################################################################
record(bo, "$(P)$(R)ComputeStatistics")
{
field(PINI, "YES")
field(DTYP, "asynInt32")
field(OUT, "@asyn($(PORT),$(ADDR),$(TIMEOUT))COMPUTE_STATISTICS")
field(VAL, "1")
field(ZNAM, "No")
field(ONAM, "Yes")
}
record(bi, "$(P)$(R)ComputeStatistics_RBV")
{
field(DTYP, "asynInt32")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))COMPUTE_STATISTICS")
field(ZNAM, "No")
field(ONAM, "Yes")
field(ZSV, "NO_ALARM")
field(OSV, "MINOR")
field(SCAN, "I/O Intr")
}
record(longout, "$(P)$(R)BgdWidth")
{
field(PINI, "YES")
field(DTYP, "asynInt32")
field(OUT, "@asyn($(PORT),$(ADDR),$(TIMEOUT))BGD_WIDTH")
field(VAL, "1")
}
record(longin, "$(P)$(R)BgdWidth_RBV")
{
field(DTYP, "asynInt32")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))BGD_WIDTH")
field(SCAN, "I/O Intr")
}
record(ai, "$(P)$(R)MinValue_RBV")
{
field(DTYP, "asynFloat64")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))MIN_VALUE")
field(SCAN, "I/O Intr")
}
record(ai, "$(P)$(R)MaxValue_RBV")
{
field(DTYP, "asynFloat64")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))MAX_VALUE")
field(SCAN, "I/O Intr")
}
record(ai, "$(P)$(R)MeanValue_RBV")
{
field(DTYP, "asynFloat64")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))MEAN_VALUE")
field(SCAN, "I/O Intr")
}
record(ai, "$(P)$(R)Sigma_RBV")
{
field(DTYP, "asynFloat64")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))SIGMA_VALUE")
field(PREC, "1")
field(SCAN, "I/O Intr")
}
record(ai, "$(P)$(R)Total_RBV")
{
field(DTYP, "asynFloat64")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))TOTAL")
field(SCAN, "I/O Intr")
}
record(ai, "$(P)$(R)Net_RBV")
{
field(DTYP, "asynFloat64")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))NET")
field(SCAN, "I/O Intr")
}
record(ai, "$(P)$(R)MinX_RBV")
{
field(DTYP, "asynFloat64")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))MIN_X")
field(SCAN, "I/O Intr")
}
record(ai, "$(P)$(R)MinY_RBV")
{
field(DTYP, "asynFloat64")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))MIN_Y")
field(SCAN, "I/O Intr")
}
record(ai, "$(P)$(R)MaxX_RBV")
{
field(DTYP, "asynFloat64")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))MAX_X")
field(SCAN, "I/O Intr")
}
record(ai, "$(P)$(R)MaxY_RBV")
{
field(DTYP, "asynFloat64")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))MAX_Y")
field(SCAN, "I/O Intr")
}
###################################################################
# These records control whether centroid statistics are computed #
###################################################################
record(bo, "$(P)$(R)ComputeCentroid")
{
field(PINI, "YES")
field(DTYP, "asynInt32")
field(OUT, "@asyn($(PORT),$(ADDR),$(TIMEOUT))COMPUTE_CENTROID")
field(VAL, "0")
field(ZNAM, "No")
field(ONAM, "Yes")
}
record(bi, "$(P)$(R)ComputeCentroid_RBV")
{
field(DTYP, "asynInt32")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))COMPUTE_CENTROID")
field(ZNAM, "No")
field(ONAM, "Yes")
field(ZSV, "NO_ALARM")
field(OSV, "MINOR")
field(SCAN, "I/O Intr")
}
###################################################################
# These records contain the centroid statistics #
###################################################################
record(ao, "$(P)$(R)CentroidThreshold")
{
field(PINI, "YES")
field(DTYP, "asynFloat64")
field(OUT, "@asyn($(PORT),$(ADDR),$(TIMEOUT))CENTROID_THRESHOLD")
field(VAL, "1")
}
record(ai, "$(P)$(R)CentroidThreshold_RBV")
{
field(DTYP, "asynFloat64")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))CENTROID_THRESHOLD")
field(VAL, "0")
field(SCAN, "I/O Intr")
}
record(ai, "$(P)$(R)CentroidX_RBV")
{
field(DTYP, "asynFloat64")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))CENTROIDX_VALUE")
field(PREC, "1")
field(SCAN, "I/O Intr")
}
record(ai, "$(P)$(R)CentroidY_RBV")
{
field(DTYP, "asynFloat64")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))CENTROIDY_VALUE")
field(PREC, "1")
field(SCAN, "I/O Intr")
}
record(ai, "$(P)$(R)SigmaX_RBV")
{
field(DTYP, "asynFloat64")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))SIGMAX_VALUE")
field(PREC, "1")
field(SCAN, "I/O Intr")
}
record(ai, "$(P)$(R)SigmaY_RBV")
{
field(DTYP, "asynFloat64")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))SIGMAY_VALUE")
field(PREC, "1")
field(SCAN, "I/O Intr")
}
record(ai, "$(P)$(R)SigmaXY_RBV")
{
field(DTYP, "asynFloat64")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))SIGMAXY_VALUE")
field(PREC, "3")
field(SCAN, "I/O Intr")
}
###################################################################
# These records control time series #
###################################################################
record(mbbo, "$(P)$(R)TSControl")
{
field(DTYP, "asynInt32")
field(OUT, "@asyn($(PORT),$(ADDR),$(TIMEOUT))TS_CONTROL")
field(ZRVL, "0")
field(ZRST, "Erase/Start")
field(ONVL, "1")
field(ONST, "Start")
field(TWVL, "2")
field(TWST, "Stop")
field(THVL, "3")
field(THST, "Read")
}
# This record periodically pokes the TSControl record with 3 to read the time series
# but only when TSAcquiring = Acquiring
record(longout, "$(P)$(R)TSRead")
{
field(SDIS, "$(P)$(R)TSAcquiring NPP NMS")
field(DISV, "0")
field(OUT, "$(P)$(R)TSControl PP MS")
field(VAL, "3")
field(SCAN, "1 second")
}
record(longout, "$(P)$(R)TSNumPoints")
{
field(PINI, "YES")
field(DTYP, "asynInt32")
field(OUT, "@asyn($(PORT),$(ADDR),$(TIMEOUT))TS_NUM_POINTS")
field(VAL, "$(NCHANS)")
field(DRVH, "$(NCHANS)")
}
record(longin, "$(P)$(R)TSCurrentPoint")
{
field(DTYP, "asynInt32")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))TS_CURRENT_POINT")
field(SCAN, "I/O Intr")
}
record(bi, "$(P)$(R)TSAcquiring")
{
field(DTYP, "asynInt32")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))TS_ACQUIRING")
field(ZNAM, "Done")
field(ONAM, "Acquiring")
field(ZSV, "NO_ALARM")
field(OSV, "MINOR")
field(SCAN, "I/O Intr")
}
record(waveform, "$(P)$(R)TSMinValue")
{
field(DTYP, "asynFloat64ArrayIn")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))TS_MIN_VALUE")
field(NELM, "$(NCHANS)")
field(FTVL, "DOUBLE")
field(SCAN, "I/O Intr")
}
record(waveform, "$(P)$(R)TSMinX")
{
field(DTYP, "asynFloat64ArrayIn")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))TS_MIN_X")
field(NELM, "$(NCHANS)")
field(FTVL, "DOUBLE")
field(SCAN, "I/O Intr")
}
record(waveform, "$(P)$(R)TSMinY")
{
field(DTYP, "asynFloat64ArrayIn")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))TS_MIN_Y")
field(NELM, "$(NCHANS)")
field(FTVL, "DOUBLE")
field(SCAN, "I/O Intr")
}
record(waveform, "$(P)$(R)TSMaxValue")
{
field(DTYP, "asynFloat64ArrayIn")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))TS_MAX_VALUE")
field(NELM, "$(NCHANS)")
field(FTVL, "DOUBLE")
field(SCAN, "I/O Intr")
}
record(waveform, "$(P)$(R)TSMaxX")
{
field(DTYP, "asynFloat64ArrayIn")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))TS_MAX_X")
field(NELM, "$(NCHANS)")
field(FTVL, "DOUBLE")
field(SCAN, "I/O Intr")
}
record(waveform, "$(P)$(R)TSMaxY")
{
field(DTYP, "asynFloat64ArrayIn")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))TS_MAX_Y")
field(NELM, "$(NCHANS)")
field(FTVL, "DOUBLE")
field(SCAN, "I/O Intr")
}
record(waveform, "$(P)$(R)TSMeanValue")
{
field(DTYP, "asynFloat64ArrayIn")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))TS_MEAN_VALUE")
field(NELM, "$(NCHANS)")
field(FTVL, "DOUBLE")
field(SCAN, "I/O Intr")
}
record(waveform, "$(P)$(R)TSSigma")
{
field(DTYP, "asynFloat64ArrayIn")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))TS_SIGMA_VALUE")
field(NELM, "$(NCHANS)")
field(FTVL, "DOUBLE")
field(SCAN, "I/O Intr")
}
record(waveform, "$(P)$(R)TSTotal")
{
field(DTYP, "asynFloat64ArrayIn")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))TS_TOTAL")
field(NELM, "$(NCHANS)")
field(FTVL, "DOUBLE")
field(SCAN, "I/O Intr")
}
record(waveform, "$(P)$(R)TSNet")
{
field(DTYP, "asynFloat64ArrayIn")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))TS_NET")
field(NELM, "$(NCHANS)")
field(FTVL, "DOUBLE")
field(SCAN, "I/O Intr")
}
record(waveform, "$(P)$(R)TSCentroidX")
{
field(DTYP, "asynFloat64ArrayIn")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))TS_CENTROIDX_VALUE")
field(NELM, "$(NCHANS)")
field(FTVL, "DOUBLE")
field(SCAN, "I/O Intr")
}
record(waveform, "$(P)$(R)TSCentroidY")
{
field(DTYP, "asynFloat64ArrayIn")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))TS_CENTROIDY_VALUE")
field(NELM, "$(NCHANS)")
field(FTVL, "DOUBLE")
field(SCAN, "I/O Intr")
}
record(waveform, "$(P)$(R)TSSigmaX")
{
field(DTYP, "asynFloat64ArrayIn")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))TS_SIGMAX_VALUE")
field(NELM, "$(NCHANS)")
field(FTVL, "DOUBLE")
field(SCAN, "I/O Intr")
}
record(waveform, "$(P)$(R)TSSigmaY")
{
field(DTYP, "asynFloat64ArrayIn")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))TS_SIGMAY_VALUE")
field(NELM, "$(NCHANS)")
field(FTVL, "DOUBLE")
field(SCAN, "I/O Intr")
}
record(waveform, "$(P)$(R)TSSigmaXY")
{
field(DTYP, "asynFloat64ArrayIn")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))TS_SIGMAXY_VALUE")
field(NELM, "$(NCHANS)")
field(FTVL, "DOUBLE")
field(SCAN, "I/O Intr")
}
###################################################################
# These records control profiles #
###################################################################
record(bo, "$(P)$(R)ComputeProfiles")
{
field(PINI, "YES")
field(DTYP, "asynInt32")
field(OUT, "@asyn($(PORT),$(ADDR),$(TIMEOUT))COMPUTE_PROFILES")
field(VAL, "0")
field(ZNAM, "No")
field(ONAM, "Yes")
}
record(bi, "$(P)$(R)ComputeProfiles_RBV")
{
field(DTYP, "asynInt32")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))COMPUTE_PROFILES")
field(ZNAM, "No")
field(ONAM, "Yes")
field(ZSV, "NO_ALARM")
field(OSV, "MINOR")
field(SCAN, "I/O Intr")
}
record(longin, "$(P)$(R)ProfileSizeX_RBV")
{
field(DTYP, "asynInt32")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))PROFILE_SIZE_X")
field(SCAN, "I/O Intr")
}
record(longin, "$(P)$(R)ProfileSizeY_RBV")
{
field(DTYP, "asynInt32")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))PROFILE_SIZE_Y")
field(SCAN, "I/O Intr")
}
record(longout, "$(P)$(R)CursorX")
{
field(PINI, "YES")
field(DTYP, "asynInt32")
field(OUT, "@asyn($(PORT),$(ADDR),$(TIMEOUT))CURSOR_X")
field(VAL, "256")
}
record(longin, "$(P)$(R)CursorX_RBV")
{
field(DTYP, "asynInt32")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))CURSOR_X")
field(SCAN, "I/O Intr")
}
record(longout, "$(P)$(R)CursorY")
{
field(PINI, "YES")
field(DTYP, "asynInt32")
field(OUT, "@asyn($(PORT),$(ADDR),$(TIMEOUT))CURSOR_Y")
field(VAL, "256")
}
record(longin, "$(P)$(R)CursorY_RBV")
{
field(DTYP, "asynInt32")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))CURSOR_Y")
field(SCAN, "I/O Intr")
}
record(waveform, "$(P)$(R)ProfileAverageX_RBV")
{
field(DTYP, "asynFloat64ArrayIn")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))PROFILE_AVERAGE_X")
field(FTVL, "DOUBLE")
field(NELM, "$(XSIZE)")
field(SCAN, "I/O Intr")
}
record(waveform, "$(P)$(R)ProfileAverageY_RBV")
{
field(DTYP, "asynFloat64ArrayIn")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))PROFILE_AVERAGE_Y")
field(FTVL, "DOUBLE")
field(NELM, "$(YSIZE)")
field(SCAN, "I/O Intr")
}
record(waveform, "$(P)$(R)ProfileThresholdX_RBV")
{
field(DTYP, "asynFloat64ArrayIn")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))PROFILE_THRESHOLD_X")
field(FTVL, "DOUBLE")
field(NELM, "$(XSIZE)")
field(SCAN, "I/O Intr")
}
record(waveform, "$(P)$(R)ProfileThresholdY_RBV")
{
field(DTYP, "asynFloat64ArrayIn")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))PROFILE_THRESHOLD_Y")
field(FTVL, "DOUBLE")
field(NELM, "$(YSIZE)")
field(SCAN, "I/O Intr")
}
record(waveform, "$(P)$(R)ProfileCentroidX_RBV")
{
field(DTYP, "asynFloat64ArrayIn")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))PROFILE_CENTROID_X")
field(FTVL, "DOUBLE")
field(NELM, "$(XSIZE)")
field(SCAN, "I/O Intr")
}
record(waveform, "$(P)$(R)ProfileCentroidY_RBV")
{
field(DTYP, "asynFloat64ArrayIn")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))PROFILE_CENTROID_Y")
field(FTVL, "DOUBLE")
field(NELM, "$(YSIZE)")
field(SCAN, "I/O Intr")
}
record(waveform, "$(P)$(R)ProfileCursorX_RBV")
{
field(DTYP, "asynFloat64ArrayIn")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))PROFILE_CURSOR_X")
field(FTVL, "DOUBLE")
field(NELM, "$(XSIZE)")
field(SCAN, "I/O Intr")
}
record(waveform, "$(P)$(R)ProfileCursorY_RBV")
{
field(DTYP, "asynFloat64ArrayIn")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))PROFILE_CURSOR_Y")
field(FTVL, "DOUBLE")
field(NELM, "$(YSIZE)")
field(SCAN, "I/O Intr")
}
###################################################################
# These are used to define the histogram #
###################################################################
record(bo, "$(P)$(R)ComputeHistogram")
{
field(PINI, "YES")
field(DTYP, "asynInt32")
field(OUT, "@asyn($(PORT),$(ADDR),$(TIMEOUT))COMPUTE_HISTOGRAM")
field(VAL, "0")
field(ZNAM, "No")
field(ONAM, "Yes")
}
record(bi, "$(P)$(R)ComputeHistogram_RBV")
{
field(DTYP, "asynInt32")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))COMPUTE_HISTOGRAM")
field(ZNAM, "No")
field(ONAM, "Yes")
field(ZSV, "NO_ALARM")
field(OSV, "MINOR")
field(SCAN, "I/O Intr")
}
record(longout, "$(P)$(R)HistSize")
{
field(PINI, "YES")
field(DTYP, "asynInt32")
field(OUT, "@asyn($(PORT),$(ADDR),$(TIMEOUT))HIST_SIZE")
field(VAL, "256")
}
record(longin, "$(P)$(R)HistSize_RBV")
{
field(DTYP, "asynInt32")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))HIST_SIZE")
field(SCAN, "I/O Intr")
}
record(ao, "$(P)$(R)HistMin")
{
field(PINI, "YES")
field(DTYP, "asynFloat64")
field(OUT, "@asyn($(PORT),$(ADDR),$(TIMEOUT))HIST_MIN")
field(VAL, "0")
}
record(ai, "$(P)$(R)HistMin_RBV")
{
field(DTYP, "asynFloat64")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))HIST_MIN")
field(SCAN, "I/O Intr")
}
record(ao, "$(P)$(R)HistMax")
{
field(PINI, "YES")
field(DTYP, "asynFloat64")
field(OUT, "@asyn($(PORT),$(ADDR),$(TIMEOUT))HIST_MAX")
field(VAL, "255")
}
record(ai, "$(P)$(R)HistMax_RBV")
{
field(DTYP, "asynFloat64")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))HIST_MAX")
field(SCAN, "I/O Intr")
}
record(ai, "$(P)$(R)HistEntropy_RBV")
{
field(DTYP, "asynFloat64")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))HIST_ENTROPY")
field(PREC, "3")
field(SCAN, "I/O Intr")
}
record(waveform, "$(P)$(R)Histogram_RBV")
{
field(DTYP, "asynFloat64ArrayIn")
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))HIST_ARRAY")
field(FTVL, "DOUBLE")
field(NELM, "$(HIST_SIZE)")
field(SCAN, "I/O Intr")
}
###################################################################
# These records set the HOPR and LOPR values for the cursor #
# and size to the maximum for the input array #
###################################################################
record(longin, "$(P)$(R)MaxSizeX")
{
field(INP, "$(P)$(R)ProfileSizeX_RBV CP")
field(FLNK, "$(P)$(R)SetXHOPR.PROC PP")
}
record(dfanout, "$(P)$(R)SetXHOPR")
{
field(DOL, "$(P)$(R)MaxSizeX NPP")
field(OMSL, "closed_loop")
field(OUTA, "$(P)$(R)CursorX.HOPR NPP")
}
record(longin, "$(P)$(R)MaxSizeY")
{
field(INP, "$(P)$(R)ProfileSizeY_RBV CP")
field(FLNK, "$(P)$(R)SetYHOPR.PROC PP")
}
record(dfanout, "$(P)$(R)SetYHOPR")
{
field(DOL, "$(P)$(R)MaxSizeY NPP")
field(OMSL, "closed_loop")
field(OUTA, "$(P)$(R)CursorY.HOPR NPP")
}