#ifndef CRUCONFIG_H #define CRUCONFIG_H #include //#include //#include #include "TpcConfig.h" using namespace std; class CruConfig{ public: CruConfig(int32_t configType, uint32_t debuglevel); ~CruConfig(); uint32_t getState(uint32_t side, uint32_t sector, uint32_t partition, uint32_t cru); uint32_t getGFD_LINK_ACTIVE(uint32_t side, uint32_t sector, uint32_t partition, uint32_t cru); uint32_t getGFD_STRICT_SYNC(uint32_t side, uint32_t sector, uint32_t partition, uint32_t cru); uint32_t getGFD_ENABLE_MASK(uint32_t side, uint32_t sector, uint32_t partition, uint32_t cru); uint32_t getGFD_STREAM_MASK(uint32_t side, uint32_t sector, uint32_t partition, uint32_t cru); uint32_t getON_LINK(uint32_t side, uint32_t sector, uint32_t partition, uint32_t cru); uint32_t getLINK_SELECTOR_A(uint32_t side, uint32_t sector, uint32_t partition, uint32_t cru); uint32_t getLINK_SELECTOR_B(uint32_t side, uint32_t sector, uint32_t partition, uint32_t cru); uint32_t getZS_EN(uint32_t side, uint32_t sector, uint32_t partition, uint32_t cru); uint32_t getTRG_WINDOW_SIZE(uint32_t side, uint32_t sector, uint32_t partition, uint32_t cru); uint32_t getMAX_PAYLOAD_SIZE(uint32_t side, uint32_t sector, uint32_t partition, uint32_t cru); uint32_t getSUPPRESS_HBR(uint32_t side, uint32_t sector, uint32_t partition, uint32_t cru); uint32_t getUSE_LINK_ID_15(uint32_t side, uint32_t sector, uint32_t partition, uint32_t cru); float getITCORR0(uint32_t side, uint32_t sector, uint32_t partition, uint32_t cru); uint32_t getITF_EN(uint32_t side, uint32_t sector, uint32_t partition, uint32_t cru); uint32_t getCMC_EN(uint32_t side, uint32_t sector, uint32_t partition, uint32_t cru); uint32_t getOFFSET(uint32_t side, uint32_t sector, uint32_t partition, uint32_t cru); uint32_t getRESYNC_EN(uint32_t side, uint32_t sector, uint32_t partition, uint32_t cru); uint32_t getBC_EN(uint32_t side, uint32_t sector, uint32_t partition, uint32_t cru); uint32_t getCMC_THRESH1(uint32_t side, uint32_t sector, uint32_t partition, uint32_t cru); uint32_t getCMC_MIN_MATCHES(uint32_t side, uint32_t sector, uint32_t partition, uint32_t cru); uint32_t getCMC_MATCH_DISTANCE(uint32_t side, uint32_t sector, uint32_t partition, uint32_t cru); uint32_t getCMC_WRITEOUT_EN(uint32_t side, uint32_t sector, uint32_t partition, uint32_t cru); bool isMaster(uint32_t side, uint32_t sector, uint32_t partition, uint32_t cru); uint32_t getState(); uint32_t getZS_EN(); uint32_t getTRG_WINDOW_SIZE(); uint32_t getSUPPRESS_HBR(); uint32_t getUSE_LINK_ID_15(); uint32_t getITCORR0(); private: uint32_t fdebuglevel; uint32_t fconfigType; TpcConfig fTPC; }; #endif // CRUCONFIG_H