7 : m_ptr(ptr), m_limit(limit), m_stepclass(0), m_technicalDataType(0) {
17 else if (m_stepclass == 1) {
18 if (m_microstep == 0) {
24 }
else if (m_stepclass == 2) {
35 m_0th_data_ptr = m_header_ptr + 1;
48 }
else if (m_flavor == 2) {
52 m_technicalDataType = technicalDataType();
57 if ((m_flavor == 7 && m_technicalDataType == 15) && !isHeader())
58 return ((*m_ptr) >> 11) & 0x1;
60 return ((*m_ptr) >> 10) & 0x3;
64 if ((m_flavor == 7 && m_technicalDataType == 15) && !isHeader())
65 return ((*m_ptr) >> 10) & 0x1;
67 return !(errFlags() & 0x2);
72 return ((*m_ptr) >> 8) & 0xF;
78 if (m_flavor == 5 && m_microstep == 0)
79 return ((*m_ptr) >> 8) & 0x7F;
80 else if (m_flavor == 7 && m_technicalDataType == 15)
81 return (*m_ptr) & 0x7F;
83 return (*m_ptr) & 0xFF;
87 if (m_flavor == 5 || (m_flavor == 7 && m_technicalDataType == 15))
89 else if (m_flavor == 2)
90 return (m_ptr[1] & 0x3F);
92 return (((*m_ptr) & 0x3F00) >> 8);
96 if (m_flavor == 5 || (m_flavor == 7 && m_technicalDataType == 15))
98 else if (m_flavor == 2)
99 return (m_ptr[0] & 0x2000);
101 return (((*m_ptr) & 0x4000));
106 return (m_ptr[1] >> 6) & 0x1F;
113 return (m_ptr[1] >> 12) & 0x3;
114 else if (m_flavor == 7 && m_technicalDataType == 15) {
115 return ((*m_ptr) >> 8) & 0x3;
116 }
else if (m_flavor == 1 || m_flavor == 0) {
128 return (m_ptr[0] >> 12) & 0x1;
129 }
else if (m_flavor == 4) {
130 return (m_ptr[0] >> 13) & 0x1;
150 : m_rawLength64(length), m_raw64(data), m_raw16((
const uint16_t*)(data)), m_ownData(nullptr) {
155 : m_formatVersion(hd.m_formatVersion),
156 m_rawLength64(hd.m_rawLength64),
159 m_ownData(nullptr) {}
static const int CHANNELS_PER_FIBER_MAX
const_iterator & operator++()
static const int HEADER_LENGTH_16BIT
const_iterator(const uint16_t *ptr, const uint16_t *limit=nullptr)
int technicalDataType() const
const_iterator begin() const
static const int FIBERS_PER_UHTR
HcalUHTRData & operator=(const HcalUHTRData &)
unsigned long long uint64_t
char data[epos_bytes_allocation]
const_iterator end() const