#=================================================================# # Template file: NDStats.template include "NDPluginBase.template" ################################################################### # 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") info(autosaveFields, "VAL") } 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") info(autosaveFields, "VAL") } record(longin, "$(P)$(R)BgdWidth_RBV") { field(DTYP, "asynInt32") field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))BGD_WIDTH") field(SCAN, "I/O Intr") } record(ao, "$(P)$(R)MinValue") { field(DTYP, "asynFloat64") field(OUT, "@asyn($(PORT),$(ADDR),$(TIMEOUT))MIN_VALUE") } record(ai, "$(P)$(R)MinValue_RBV") { field(DTYP, "asynFloat64") field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))MIN_VALUE") field(SCAN, "I/O Intr") } record(ao, "$(P)$(R)MaxValue") { field(DTYP, "asynFloat64") field(OUT, "@asyn($(PORT),$(ADDR),$(TIMEOUT))MAX_VALUE") } record(ai, "$(P)$(R)MaxValue_RBV") { field(DTYP, "asynFloat64") field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))MAX_VALUE") field(SCAN, "I/O Intr") } record(ao, "$(P)$(R)MeanValue") { field(DTYP, "asynFloat64") field(OUT, "@asyn($(PORT),$(ADDR),$(TIMEOUT))MEAN_VALUE") } record(ai, "$(P)$(R)MeanValue_RBV") { field(DTYP, "asynFloat64") field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))MEAN_VALUE") field(SCAN, "I/O Intr") } record(ao, "$(P)$(R)SigmaValue") { field(DTYP, "asynFloat64") field(OUT, "@asyn($(PORT),$(ADDR),$(TIMEOUT))SIGMA_VALUE") } 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(ao, "$(P)$(R)Total") { field(DTYP, "asynFloat64") field(OUT, "@asyn($(PORT),$(ADDR),$(TIMEOUT))TOTAL") } record(ai, "$(P)$(R)Total_RBV") { field(DTYP, "asynFloat64") field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))TOTAL") field(SCAN, "I/O Intr") } record(ao, "$(P)$(R)Net") { field(DTYP, "asynFloat64") field(OUT, "@asyn($(PORT),$(ADDR),$(TIMEOUT))NET") } record(ai, "$(P)$(R)Net_RBV") { field(DTYP, "asynFloat64") field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))NET") field(SCAN, "I/O Intr") } record(ao, "$(P)$(R)MinX") { field(DTYP, "asynFloat64") field(OUT, "@asyn($(PORT),$(ADDR),$(TIMEOUT))MIN_X") } record(ai, "$(P)$(R)MinX_RBV") { field(DTYP, "asynFloat64") field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))MIN_X") field(SCAN, "I/O Intr") } record(ao, "$(P)$(R)MinY") { field(DTYP, "asynFloat64") field(OUT, "@asyn($(PORT),$(ADDR),$(TIMEOUT))MIN_Y") } record(ai, "$(P)$(R)MinY_RBV") { field(DTYP, "asynFloat64") field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))MIN_Y") field(SCAN, "I/O Intr") } record(ao, "$(P)$(R)MaxX") { field(DTYP, "asynFloat64") field(OUT, "@asyn($(PORT),$(ADDR),$(TIMEOUT))MAX_X") } record(ai, "$(P)$(R)MaxX_RBV") { field(DTYP, "asynFloat64") field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))MAX_X") field(SCAN, "I/O Intr") } record(ao, "$(P)$(R)MaxY") { field(DTYP, "asynFloat64") field(OUT, "@asyn($(PORT),$(ADDR),$(TIMEOUT))MAX_Y") } 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") info(autosaveFields, "VAL") } 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") info(autosaveFields, "VAL") } 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(ao, "$(P)$(R)CentroidX") { field(DTYP, "asynFloat64") field(OUT, "@asyn($(PORT),$(ADDR),$(TIMEOUT))CENTROIDX_VALUE") } 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(ao, "$(P)$(R)CentroidY") { field(DTYP, "asynFloat64") field(OUT, "@asyn($(PORT),$(ADDR),$(TIMEOUT))CENTROIDY_VALUE") } 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(ao, "$(P)$(R)SigmaX") { field(DTYP, "asynFloat64") field(OUT, "@asyn($(PORT),$(ADDR),$(TIMEOUT))SIGMAX_VALUE") } 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(ao, "$(P)$(R)SigmaY") { field(DTYP, "asynFloat64") field(OUT, "@asyn($(PORT),$(ADDR),$(TIMEOUT))SIGMAY_VALUE") } 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(ao, "$(P)$(R)SigmaXY") { field(DTYP, "asynFloat64") field(OUT, "@asyn($(PORT),$(ADDR),$(TIMEOUT))SIGMAXY_VALUE") } 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") info(autosaveFields, "SCAN") } 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)") info(autosaveFields, "VAL") } 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") } record(waveform, "$(P)$(R)TSTimestamp") { field(DTYP, "asynFloat64ArrayIn") field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))TS_TIMESTAMP_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") info(autosaveFields, "VAL") } 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") info(autosaveFields, "VAL") } 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") info(autosaveFields, "VAL") } 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") info(autosaveFields, "VAL") } 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") info(autosaveFields, "VAL") } 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") info(autosaveFields, "VAL") } 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") info(autosaveFields, "VAL") } record(ai, "$(P)$(R)HistMax_RBV") { field(DTYP, "asynFloat64") field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))HIST_MAX") field(SCAN, "I/O Intr") } record(ao, "$(P)$(R)HistEntropy") { field(DTYP, "asynFloat64") field(OUT, "@asyn($(PORT),$(ADDR),$(TIMEOUT))HIST_ENTROPY") } 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") } ################################################################### # These records reset the statistics # ################################################################### record(sseq, "$(P)$(R)Reset") { field(DOL1, "0") field(DLY1, "0") field(LNK1, "$(P)$(R)MinValue PP MS") field(DOL2, "0") field(DLY2, "0") field(LNK2, "$(P)$(R)MaxValue PP MS") field(DOL3, "0") field(DLY3, "0") field(LNK3, "$(P)$(R)MaxValue PP MS") field(DOL4, "0") field(DLY4, "0") field(LNK4, "$(P)$(R)MeanValue PP MS") field(DOL5, "0") field(DLY5, "0") field(LNK5, "$(P)$(R)SigmaValue PP MS") field(DOL6, "0") field(DLY6, "0") field(LNK6, "$(P)$(R)Total PP MS") field(DOL7, "0") field(DLY7, "0") field(LNK7, "$(P)$(R)Net PP MS") field(DOL8, "0") field(DLY8, "0") field(LNK8, "$(P)$(R)MinX PP MS") field(DOL9, "0") field(DLY9, "0") field(LNK9, "$(P)$(R)MinY PP MS") field(DOLA, "0") field(DLYA, "0") field(LNKA, "$(P)$(R)MaxX PP MS") field(FLNK, "$(P)$(R)Reset1") } record(sseq, "$(P)$(R)Reset1") { field(DOL1, "0") field(DLY1, "0") field(LNK1, "$(P)$(R)MaxY PP MS") field(DOL2, "0") field(DLY2, "0") field(LNK2, "$(P)$(R)CentroidX PP MS") field(DOL3, "0") field(DLY3, "0") field(LNK3, "$(P)$(R)CentroidY PP MS") field(DOL4, "0") field(DLY4, "0") field(LNK4, "$(P)$(R)SigmaX PP MS") field(DOL5, "0") field(DLY5, "0") field(LNK5, "$(P)$(R)SigmaY PP MS") field(DOL6, "0") field(DLY6, "0") field(LNK6, "$(P)$(R)SigmaXY PP MS") field(DOL7, "0") field(DLY7, "0") field(LNK7, "$(P)$(R)HistEntropy PP MS") }