#ifndef FERODBFIELDPOSITIONS_H #define FERODBFIELDPOSITIONS_H #include #include #include using namespace std; //use when to compile on outdated slc #include #include #include class TpcFieldPositions { public: TpcFieldPositions(); ~TpcFieldPositions(); string getColName(int32_t i); int32_t getPosition(string colName); uint32_t getNcols() {return fSize;}; bool isDate(int32_t i); bool isString(int32_t i); bool isNumber(int32_t i); int32_t id, Created, Updated, Revision, Comment; private: vector fColNames; uint32_t fSize; }; class PartitionFieldPositions { public: PartitionFieldPositions(); ~PartitionFieldPositions(); string getColName(int32_t i); int32_t getPosition(string colName); uint32_t getNcols() {return fSize;}; int32_t id, Position, ON_PARTITION; private: vector fColNames; uint32_t fSize; }; class CruFieldPositions { public: CruFieldPositions(); ~CruFieldPositions(); string getColName(int32_t i); int32_t getPosition(string colName); uint32_t getNcols() {return fSize;}; int32_t id, Position, ON_CRU; int32_t GFD_LINK_ACTIVE, GFD_STRICT_SYNC, GFD_ENABLE_MASK; int32_t GFD_STREAM_MASK[24]; int32_t ON_LINK, LINK_SELECTOR_A, LINK_SELECTOR_B, ZS_EN, TRG_WINDOW_SIZE, MAX_PAYLOAD_SIZE, SUPPRESS_HBR, USE_LINK_ID_15; int32_t ITCORR0, ITF_EN, CMC_EN, OFFSET, RESYNC_EN, BC_EN, CMC_THRESH1, CMC_MIN_MATCHES, CMC_MATCH_DISTANCE, CMC_WRITEOUT_EN; private: vector fColNames; uint32_t fSize; }; class FecFieldPositions { public: FecFieldPositions(); ~FecFieldPositions(); string getColName(int32_t i); int32_t getPosition(string colName); uint32_t getNcols() {return fSize;}; int32_t id, BranchPosition, Position, ON_FEC, SAMPA_MASK, SAMPA_ANA_CFG, SAMPA_CLK_CFG; int32_t GBTX0_SAMPLINGPHASE_G0_CH0, GBTX0_SAMPLINGPHASE_G0_CH2, GBTX0_SAMPLINGPHASE_G0_CH4, GBTX0_SAMPLINGPHASE_G0_CH6; int32_t GBTX0_SAMPLINGPHASE_G1_CH0, GBTX0_SAMPLINGPHASE_G1_CH2, GBTX0_SAMPLINGPHASE_G1_CH4, GBTX0_SAMPLINGPHASE_G1_CH6; int32_t GBTX0_SAMPLINGPHASE_G2_CH0, GBTX0_SAMPLINGPHASE_G2_CH2, GBTX0_SAMPLINGPHASE_G2_CH4, GBTX0_SAMPLINGPHASE_G2_CH6; int32_t GBTX0_SAMPLINGPHASE_G3_CH0, GBTX0_SAMPLINGPHASE_G3_CH2, GBTX0_SAMPLINGPHASE_G3_CH4, GBTX0_SAMPLINGPHASE_G3_CH6; int32_t GBTX0_SAMPLINGPHASE_G4_CH0, GBTX0_SAMPLINGPHASE_G4_CH2, GBTX0_SAMPLINGPHASE_G4_CH4, GBTX0_SAMPLINGPHASE_G4_CH6; int32_t GBTX0_SAMPLINGPHASE_G5_CH1, GBTX0_SAMPLINGPHASE_G5_CH3, GBTX0_SAMPLINGPHASE_G5_CH5, GBTX0_SAMPLINGPHASE_G5_CH7; int32_t GBTX0_SAMPLINGPHASE_G6_CH1, GBTX0_SAMPLINGPHASE_G6_CH3, GBTX0_SAMPLINGPHASE_G6_CH5, GBTX0_SAMPLINGPHASE_G6_CH7; private: vector fColNames; uint32_t fSize; }; class UlFieldPositions { public: UlFieldPositions(); ~UlFieldPositions(); string getColName(int32_t i); int32_t getPosition(string colName); uint32_t getNcols() {return fSize;}; int32_t id, BranchPosition, Position; int32_t VAL[80]; private: vector fColNames; uint32_t fSize; }; class FERODBFieldPositions { public: FERODBFieldPositions(); ~FERODBFieldPositions(); UlFieldPositions *UlTable; CruFieldPositions *CruTable; FecFieldPositions *FecTable; PartitionFieldPositions *PartitionTable; TpcFieldPositions *TpcTable; }; #endif // FERODBFIELDPOSITIONS_H