*FILE MEMBER=SU_MNEMONICS LIBRARY=SNOMAN LANGUAGE=INC DATE=24:May:2004 * SNOMAN: Software Unit Control Mnemonics * Contact: N. West, Oxford. * Program Notes:- * ============= * Check that KSU_FT* values stay in step with fitter methods in bank_ft.inc * Check that KSU_NW_MASK (derived from KSU_MX_SU_ID) stays in step with * KMTT_NW_MASK in mt_mnemonics.inc * SU id values generally have no significance (use the attribute bits * to differentiate e.g. support system v. processor). The only exception * is that certain processors form "families" of consecutively numbered * ids. There are currently two such families:- * * FTx Fitters 30... * CLx Classifiers 50... * * Each family has a slot of 20 ids reserved to it. * Revision History:- * ================ * 2.07 N. West First version (factored out of su_com.inc) * R. Van de Water Add UCL. * 2.08 S. Brice Add elastic fitter FTE. * 2.09 S. Brice Add grid fitter FTG and make the random number * generator a software unit. * N. West Add FIO and QUIT. Add INITIALISE modes. * R. Komar Add SDB. * M. Thorman Add network classifier CLN * 3.00 N. West Add Program Note about SU id numbering. * Revise initialisation modes. CNM -> MTT. * Attribute bit addresses. Add KSU_CONFIRM_NOT_DUMMY * Revise SU id numbering (reduce range). Add USR. * Add ECA, OCA, NTP, RDV. * D. Wark Add HST su. * 3.01 N. West Add TCA, PCA. Increase: KSU_MX_SU_ID 70 -> 80. * 3.01 N. Tagg Add FTM. * 3.02 S. Brice Add SML * M. Thorman Add RLG, RLR, RLO. * N. West Add RAA, DMM. Add *_CONTEXT_CHANGE. * N. Tagg Add XED. * J. Klein Add TRF. Increase: KSU_MX_SU_ID 80 -> 100. * 4.01 M. Neubauer Add FTP: Path fitter * J. Klein Add TSP. * M. Boulay Add RSP. * M. Boulay Add FTU. * 4.02 N. McCauley Add LSP, FPS. * 4.02 A. Hallin Add QIO: Root tree output * J. Wilson Add SPS: Second Pass Run Selection * J. Wilson Add MXF: Maximum Likelihood Fitter * C. Kyba Add MPC: Multiphoton Correction * 5.00 S.J.M. Peeters Add NHP: NCD Histogram Producer * N. West Reserve FTR: For Chris Kyba's fitter. KSU_FT_MAX not yet updated! * Mnemonics for all SU (Software Unit) IDs:- * ======================================== * Shell. * KSU_SHL Shell. * Support Systems * KSU_ZBR ZEBRA Memory Manager. * KSU_MTT Management of Titles. * KSU_SIO Generic FZ Input Output. * KSU_FIO File Input Output Support. * KSU_EIO Event Input Output Support. * KSU_GEO Detector Geometry. * KSU_PHI Physics Interactions. * KSU_PMT PMT Simulation. * KSU_DSM Data Structure Manager * KSU_HBK HBOOK. * KSU_RAN Random Number Generator. * KSU_SDB Database interface. * KSU_NTP N-tuple Generator. * Monte Carlo * KSU_MCO Monte Carlo. * Calibration * KSU_ECA Electronics Calibration. * KSU_PCA PMT Calibration. * KSU_OCA Optical Calibration. * KSU_TRF Trigger Efficiency Calibration. * KSU_TSP Time spoiler based on TSLH curves. * KSU_MPC Multiphoton Correction * General Analysis * KSU_INP Event Input. * KSU_OUT Event Output. * KSU_RDV Raw Data Validation. * KSU_VIW Event Viewer. * KSU_XED Xsnoed viewer interface. * KSU_ANL Event Analyser. * KSU_TCA Time Correlation Analyser. * KSU_HST Event Histogrammer. * KSU_UPK Event Unpacker. * KSU_PCK Event Packer. * KSU_FLT Event Filter. * KSU_CAL Event Calibration. * KSU_UCL Event Uncalibration. * KSU_PRU Event Pruner. * KSU_SML SNOMAN Live. * KSU_RLG Run-log generator. * KSU_RLR Run-log reader. * KSU_RLO Run-log output. * KSU_RAA Random Access Analyser. * KSU_DMM Data Mask Manager. * KSU_LSP Livetime Summary Processor. * KSU_FPS First Pass Run Selection. * KSU_SPS Second Pass Run Selection. * KSU_MXF Maximum Likelihood Fitter * Fitters. * KSU_FT1 User 1 Event Fitter. * KSU_FT2 User 2 Event Fitter. * KSU_FT3 User 3 Event Fitter. * KSU_FTE Elastic Event Fitter * KSU_FTT Time Event Fitter. * KSU_FTQ Quad Event Fitter. * KSU_FTG Grid Event Fitter. * KSU_FTM Muon Event Fitter. * KSU_FTP Path Event Fitter. * KSU_FTU QPDF Event Fitter. * KSU_FT_MAX Max. number of fitter methods * KSU_FT_BASE The SU ID. of fitter method i is KSU_FT_BASE + i * Classifiers * KSU_CLN Network Classifier * Others * KSU_USR User processor * KSU_NHP NCD histogram producer INTEGER KSU_SHL, + KSU_ZBR,KSU_MTT,KSU_HBK, + KSU_SIO,KSU_FIO,KSU_EIO,KSU_GEO, + KSU_PHI,KSU_PMT,KSU_DSM,KSU_SDB,KSU_RAN, + KSU_INP,KSU_MCO,KSU_HST, + KSU_VIW,KSU_ANL,KSU_OUT,KSU_PCK, + KSU_UPK,KSU_FLT,KSU_CAL,KSU_UCL,KSU_PRU, + KSU_USR,KSU_ECA,KSU_OCA,KSU_NTP PARAMETER (KSU_SHL = 1, + KSU_ZBR = 2, KSU_MTT = 3, KSU_HBK = 4, + KSU_SIO = 5, KSU_EIO = 6, + KSU_GEO = 7, KSU_PHI = 8, + KSU_PMT = 9, KSU_DSM = 10, KSU_RAN = 11, + KSU_FIO = 12, KSU_SDB = 13, + KSU_MCO = 14, + KSU_INP = 15, KSU_OUT = 16, KSU_HST = 17, + KSU_VIW = 18, KSU_ANL = 19, KSU_PCK = 20, + KSU_UPK = 21, KSU_FLT = 22, KSU_PRU = 23, + KSU_CAL = 24, KSU_UCL = 25, KSU_USR = 26, + KSU_ECA = 27, KSU_OCA = 28, KSU_NTP = 29) INTEGER KSU_FT1, + KSU_FT2, + KSU_FT3, + KSU_FTE, + KSU_FTT, + KSU_FTQ, + KSU_FTG, + KSU_FTM, + KSU_FTP, + KSU_FTU, + KSU_FTR, + KSU_FT_MAX, + KSU_FT_BASE * Note: Check that these values stay in step with fitter methods in * bank_ft.inc PARAMETER (KSU_FT1 = 30, + KSU_FT2 = 31, + KSU_FT3 = 32, + KSU_FTE = 33, + KSU_FTT = 34, + KSU_FTQ = 35, + KSU_FTG = 36, + KSU_FTM = 37, + KSU_FTP = 38, + KSU_FTU = 39, + KSU_FTR = 40, + KSU_FT_MAX = 10, + KSU_FT_BASE = 29 ) INTEGER KSU_CLN PARAMETER (KSU_CLN = 50) INTEGER KSU_TCA, KSU_PCA, KSU_RDV, KSU_SML, + KSU_RLG, KSU_RLR, KSU_RLO, KSU_RAA, + KSU_XED, KSU_DMM, KSU_TRF, KSU_TSP, + KSU_RSP, KSU_LSP, KSU_FPS, KSU_QIO, + KSU_SPS, KSU_MXF, KSU_MPC, KSU_NHP PARAMETER (KSU_TCA = 70, + KSU_PCA = 71, + KSU_RDV = 72, + KSU_SML = 73, + KSU_RLG = 74, + KSU_RLR = 75, + KSU_RLO = 76, + KSU_RAA = 77, + KSU_XED = 78, + KSU_DMM = 79, + KSU_TRF = 80, + KSU_TSP = 81, + KSU_RSP = 82, + KSU_LSP = 83, + KSU_FPS = 84, + KSU_QIO = 85, + KSU_SPS = 86, + KSU_MXF = 87, + KSU_MPC = 88, + KSU_NHP = 89) * Process Operations:- * ================== * KSU_INITIALISE * KSU_TERMINATE * KSU_PROCESS * KSU_DELETE INTEGER KSU_INITIALISE, KSU_TERMINATE, KSU_PROCESS, + KSU_DELETE PARAMETER (KSU_INITIALISE = 10, + KSU_PROCESS = 20, + KSU_DELETE = 30, + KSU_TERMINATE = 40) * Process Modes:- * ============= * For INITIALISE:- * KSU_SET_CONTEXT * KSU_INITIALISE (reuse the Process Operations value) * KSU_REINITIALISE * KSU_CONFIRM_NOT_DUMMY * KSU_CONTEXT_CHANGE * For PROCESS:- * KSU_INSERT * KSU_REPLACE * KSU_APPEND * For all other operations. * KSU_STANDARD INTEGER KSU_STANDARD, KSU_INSERT, KSU_REPLACE, + KSU_APPEND, + KSU_SET_CONTEXT, + KSU_REINITIALISE, + KSU_CONFIRM_NOT_DUMMY, + KSU_CONTEXT_CHANGE PARAMETER (KSU_STANDARD = 1, + KSU_INSERT = 2, + KSU_REPLACE = 3, + KSU_APPEND = 4, + KSU_SET_CONTEXT = 5, + KSU_REINITIALISE = 6, + KSU_CONFIRM_NOT_DUMMY = 7, + KSU_CONTEXT_CHANGE = 8 ) * Processor Return Codes:- * ====================== * KSU_OK * KSU_NOOP O.K. (because nothing to do). * KSU_QUIT O.K. (but cannot continue). * KSU_UNSUPPORTED Failure (unable to perform request). * KSU_NO_DATA Not enough data to start processing. * KSU_TOO_MUCH_DATA Too much data to start processing. * KSU_FAILED Process failed. INTEGER KSU_OK, + KSU_NOOP, + KSU_QUIT, + KSU_UNSUPPORTED, + KSU_NO_DATA, + KSU_TOO_MUCH_DATA, + KSU_FAILED PARAMETER (KSU_OK = 0, + KSU_NOOP = -1, + KSU_QUIT = -2, + KSU_UNSUPPORTED = 1, + KSU_NO_DATA = 2, + KSU_TOO_MUCH_DATA = 3, + KSU_FAILED = 4) * Call Status Codes:- * ================= INTEGER KSU_BEFORE_CALL, + KSU_AFTER_CALL PARAMETER (KSU_BEFORE_CALL = 1, + KSU_AFTER_CALL = 2) * SU Control Variables:- * ==================== * Limits:- * KSU_MX_SU_ID Maximum SU ID. * KSU_NW_MASK No. of words/ID in mask ISU_SSM. INTEGER KSU_MX_SU_ID, KSU_NW_MASK PARAMETER (KSU_MX_SU_ID = 100, + KSU_NW_MASK = 1 + KSU_MX_SU_ID/32) * SU Attribute bit addresses:- INTEGER KSU_ATR_PROCESSOR, + KSU_ATR_CONTEXT_SETTER, + KSU_ATR_DYNAMIC, + KSU_NOTIFY_CONTEXT_CHANGE PARAMETER (KSU_ATR_PROCESSOR = 0, + KSU_ATR_CONTEXT_SETTER = 1, + KSU_ATR_DYNAMIC = 2, + KSU_NOTIFY_CONTEXT_CHANGE = 3 ) * Switch settings:- INTEGER KSU_DISABLED, + KSU_PASSIVE, + KSU_ACTIVE PARAMETER (KSU_DISABLED = 0, + KSU_PASSIVE = 1, + KSU_ACTIVE = 2) *ENDFILE MEMBER=SU_MNEMONICS