5#ifndef TrigT1RPChardware_SectorLogicRXReadOutStructure_H
6#define TrigT1RPChardware_SectorLogicRXReadOutStructure_H
113 static constexpr std::array<ubit16, s_headerNum>
s_headerPos{12, 9, 0};
114 static constexpr std::array<ubit16, s_headerNum>
s_headerLen{4, 3, 9};
133 static constexpr std::array<ubit16, s_inputBodyNum>
s_inputBodyPos{12, 9, 7, 6, 5, 2, 0};
134 static constexpr std::array<ubit16, s_inputBodyNum>
s_inputBodyLen{4, 3, 1, 1, 1, 3, 2};
143 static constexpr std::array<ubit16, s_footerNum>
s_footerPos{12, 8, 0};
144 static constexpr std::array<ubit16, s_footerNum>
s_footerLen{4, 4, 8};
unsigned short int ubit16
static constexpr std::array< ubit16, s_subHeaderNum > s_subHeaderPos
ubit16 outputOverlap(int nCand) const
ubit16 decodeFragment(ubit16 inputWord, char &field)
static constexpr std::array< ubit16, s_inputHeaderNum > s_inputHeaderPos
std::vector< ubit16 > m_outTriggerWord
static constexpr ubit16 s_headerNum
std::array< ubit16, 2 > m_outputRoi
static constexpr std::array< ubit16, s_headerNum > s_headerLen
static constexpr std::array< ubit16, s_footerNum > s_footerPos
static constexpr std::array< ubit16, s_footerNum > s_footerLen
static constexpr std::array< ubit16, s_inputBodyNum > s_inputBodyPos
static constexpr ubit16 s_outputHeaderVal
ubit16 makeFooter(ubit16 errorCode)
static constexpr std::array< ubit16, s_outputBodyNum > s_outputBodyPos
ubit16 outputTriggerBcid(int) const
SectorLogicRXReadOutStructure()
std::array< ubit16, 2 > m_outputOverlap
static constexpr std::array< ubit16, s_inputHeaderNum > s_inputHeaderLen
ubit16 outputThreshold(int nCand) const
ubit16 inputTriggerBcid() const
static constexpr ubit16 s_outputHeaderNum
static constexpr ubit16 s_headerVal
static constexpr ubit16 s_footerVal
static constexpr std::array< ubit16, s_outputBodyNum > s_outputBodyLen
ubit16 outputRowinBcid() const
static constexpr ubit16 s_footerNum
ubit16 nTriggerCand() const
ubit16 makeBody(ubit16 *inputData)
static constexpr ubit16 s_inputHeaderNum
std::array< ubit16, 2 > m_outputThreshold
ubit16 hasMoreThan2TriggerCand() const
~SectorLogicRXReadOutStructure()=default
static constexpr ubit16 s_outputBodyNum
ubit16 outputRoi(int nCand) const
ubit16 inputPadId() const
static constexpr ubit16 s_subHeaderNum
ubit16 m_inputTriggerBcid
static constexpr ubit16 s_inputBodyVal
static constexpr ubit16 s_inputBodyNum
static constexpr ubit16 s_inputHeaderVal
ubit16 makeHeader(ubit16 *inputData)
ubit16 m_outputTriggerBcid
static constexpr std::array< ubit16, s_headerNum > s_headerPos
static constexpr std::array< ubit16, s_outputHeaderNum > s_outputHeaderPos
ubit16 nOfTriggerWords() const
ubit16 inputOverlapPhi() const
bool m_moreThan2TriggerCand
static constexpr ubit16 s_subHeaderVal
static constexpr std::array< ubit16, s_outputHeaderNum > s_outputHeaderLen
ubit16 inputOverlapEta() const
ubit16 inputThreshold() const
ubit16 inputRowinBcid() const
static constexpr ubit16 s_outputBodyVal
static constexpr std::array< ubit16, s_subHeaderNum > s_subHeaderLen
ubit16 inputOuterPlane() const
static constexpr std::array< ubit16, s_inputBodyNum > s_inputBodyLen