16#ifndef O2_CTP_CTF_HELPER_H
17#define O2_CTP_CTF_HELPER_H
35 static constexpr int CTPInpNBytes = CTP_NINPUTS / 8 + (CTP_NINPUTS % 8 > 0);
36 static constexpr int CTPClsNBytes = CTP_NCLASSES / 8 + (CTP_NCLASSES % 8 > 0);
42 uint32_t(mData.size()), 0, 0, uint16_t(
lumi.inp1), uint16_t(
lumi.inp2)};
44 h.firstOrbit = mData[0].intRecord.orbit;
45 h.firstBC = mData[0].intRecord.bc;
54 template <
typename I,
typename D,
typename T,
int M = 1>
70 return static_cast<I&
>(*this);
75 I
res = *(
static_cast<I*
>(
this));
83 return static_cast<I&
>(*this);
88 I
res = *(
static_cast<I*
>(
this));
96 return static_cast<I&
>(*this);
101 I
res = *(
const_cast<I*
>(
static_cast<const I*
>(
this)));
108 return static_cast<I&
>(*this);
113 I
res = *(
const_cast<I*
>(
static_cast<const I*
>(
this)));
155 if (
mData[
id].intRecord.orbit ==
mData[
id - 1].intRecord.orbit) {
226 const gsl::span<const o2::ctp::CTPDigit> mData;
definition of CTPDigit, CTPInputDigit
Class for time synchronization of RawReader instances.
value_type operator*() const
value_type operator[](difference_type i) const
value_type operator*() const
value_type operator[](difference_type i) const
value_type operator[](difference_type i) const
value_type operator*() const
I & operator++() noexcept
friend I operator+(difference_type i, const I &iter)
std::ptrdiff_t difference_type
I operator-(difference_type i) const
bool operator==(const I &other) const noexcept
bool operator>(const I &other) const noexcept
I & operator-=(difference_type i) noexcept
difference_type operator-(const I &other) const noexcept
bool operator<=(const I &other) const noexcept
I & operator--() noexcept
gsl::span< const D > mData
bool operator!=(const I &other) const noexcept
I operator+(difference_type i) const
bool operator<(const I &other) const noexcept
bool operator>=(const I &other) const noexcept
_Iter(const gsl::span< const D > &data, bool end=false)
std::random_access_iterator_tag iterator_category
I & operator+=(difference_type i) noexcept
Iter_bytesClass begin_bytesClass() const
Iter_bcIncTrig end_bcIncTrig() const
static constexpr int CTPClsNBytes
Iter_bcIncTrig begin_bcIncTrig() const
Iter_bytesInput begin_bytesInput() const
CTFHelper(const gsl::span< const CTPDigit > &data)
Iter_orbitIncTrig begin_orbitIncTrig() const
static constexpr int CTPInpNBytes
CTFHeader createHeader(const LumiInfo &lumi)
Iter_bytesClass end_bytesClass() const
Iter_bytesInput end_bytesInput() const
Iter_orbitIncTrig end_orbitIncTrig() const
a couple of static helper functions to create timestamp values for CCDB queries or override obsolete ...
VectorOfTObjectPtrs other