16#ifndef O2_HMPID_CTF_HELPER_H
17#define O2_HMPID_CTF_HELPER_H
34 const gsl::span<const Digit>& digData)
35 : mTrigRec(trgRec), mDigData(digData), mDigStart(digData.
size())
38 for (
const auto& trg : mTrigRec) {
39 if (trg.getNumberOfObjects()) {
40 mDigStart[trg.getFirstEntry()] =
true;
48 uint32_t(mTrigRec.size()), uint32_t(mDigData.size()), 0, 0};
49 if (mTrigRec.size()) {
50 h.firstOrbit = mTrigRec[0].getOrbit();
51 h.firstBC = mTrigRec[0].getBc();
56 size_t getSize()
const {
return mTrigRec.size() *
sizeof(
Trigger) + mDigData.size() *
sizeof(
Digit); }
59 template <
typename I,
typename D,
typename T,
int M = 1>
75 return static_cast<I&
>(*this);
80 I
res = *(
static_cast<I*
>(
this));
88 return static_cast<I&
>(*this);
93 I
res = *(
static_cast<I*
>(
this));
101 return static_cast<I&
>(*this);
106 I
res = *(
const_cast<I*
>(
static_cast<const I*
>(
this)));
113 return static_cast<I&
>(*this);
118 I
res = *(
const_cast<I*
>(
static_cast<const I*
>(
this)));
198 const std::vector<bool>* mTrigStart{
nullptr};
280 const gsl::span<const o2::hmpid::Trigger> mTrigRec;
281 const gsl::span<const o2::hmpid::Digit> mDigData;
282 std::vector<bool> mDigStart;
Class for time synchronization of RawReader instances.
value_type operator*() const
Iter_ChID(const std::vector< bool > *ts, const gsl::span< const Digit > &data, bool end)
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
value_type operator*() const
value_type operator[](difference_type i) const
value_type operator[](difference_type i) const
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*() const
value_type operator[](difference_type i) const
value_type operator*() const
friend I operator+(difference_type i, const I &iter)
I operator-(difference_type i) const
I operator+(difference_type i) const
gsl::span< const D > mData
bool operator<(const I &other) const noexcept
std::random_access_iterator_tag iterator_category
I & operator++() noexcept
_Iter(const gsl::span< const D > &data, bool end=false)
I & operator-=(difference_type i) noexcept
difference_type operator-(const I &other) const noexcept
std::ptrdiff_t difference_type
bool operator<=(const I &other) const noexcept
I & operator+=(difference_type i) noexcept
bool operator==(const I &other) const noexcept
bool operator>(const I &other) const noexcept
bool operator!=(const I &other) const noexcept
I & operator--() noexcept
bool operator>=(const I &other) const noexcept
Iter_entriesDig end_entriesDig() const
CTFHelper(const gsl::span< const Trigger > &trgRec, const gsl::span< const Digit > &digData)
Iter_orbitIncTrig begin_orbitIncTrig() const
Iter_bcIncTrig end_bcIncTrig() const
Iter_entriesDig begin_entriesDig() const
Iter_orbitIncTrig end_orbitIncTrig() const
Iter_ChID begin_ChID() const
Iter_bcIncTrig begin_bcIncTrig() const
Iter_ChID end_ChID() const
HMPID Trigger declaration.
a couple of static helper functions to create timestamp values for CCDB queries or override obsolete ...
VectorOfTObjectPtrs other