44static constexpr uint8_t sSTARTBIT = 1 << 7;
45static constexpr uint8_t sCARDTYPE = 1 << 6;
46static constexpr uint8_t sLOCALBUSY = 1 << 5;
47static constexpr uint8_t sLOCALDECISION = 1 << 4;
48static constexpr uint8_t sACTIVE = 1 << 3;
49static constexpr uint8_t sREJECTING = 1 << 2;
50static constexpr uint8_t sMASKED = 1 << 1;
51static constexpr uint8_t sOVERWRITTEN = 1;
53static constexpr uint8_t sSOX = 1 << 7;
54static constexpr uint8_t sEOX = 1 << 6;
55static constexpr uint8_t sPAUSE = 1 << 5;
56static constexpr uint8_t sRESUME = 1 << 4;
57static constexpr uint8_t sCALIBRATE = 1 << 3;
58static constexpr uint8_t sPHY = 1 << 2;
59static constexpr uint8_t sRESET = 1 << 1;
60static constexpr uint8_t sORB = 1;
65inline bool isLoc(uint8_t statusWord) {
return (statusWord >> 6) & 0x1; }
70inline bool isCalibration(uint8_t triggerWord) {
return ((triggerWord & 0xc) == 0x8); }
75inline uint8_t
getCrateId(uint8_t uniqueLocId) {
return (uniqueLocId >> 4) & 0xF; }
80inline uint8_t
getLocId(uint8_t uniqueLocId) {
return uniqueLocId & 0xF; }
86inline uint8_t
makeUniqueLocID(uint8_t crateId, uint8_t locId) {
return locId | (crateId << 4); }