16#ifndef O2_MID_CTF_HELPER_H
17#define O2_MID_CTF_HELPER_H
56 const auto& rof = mTFData.
rofData[id0.getSource()][id0.getIndex()];
57 h.firstOrbit = rof.interactionRecord.orbit;
58 h.firstBC = rof.interactionRecord.bc;
67 template <
typename I,
typename D,
typename T,
int M = 1>
83 return static_cast<I&
>(*this);
88 I
res = *(
static_cast<I*
>(
this));
96 return static_cast<I&
>(*this);
101 I
res = *(
static_cast<I*
>(
this));
109 return static_cast<I&
>(*this);
114 I
res = *(
const_cast<I*
>(
static_cast<const I*
>(
this)));
121 return static_cast<I&
>(*this);
126 I
res = *(
const_cast<I*
>(
static_cast<const I*
>(
this)));
170 const auto ir = (*mData)[
mOrder[
id].getSource()][
mOrder[
id].getIndex()].interactionRecord;
172 const auto irP = (*mData)[
mOrder[
id - 1].getSource()][
mOrder[
id - 1].getIndex()].interactionRecord;
202 const auto ir = (*mData)[
mOrder[
id].getSource()][
mOrder[
id].getIndex()].interactionRecord;
203 const auto irP = (*mData)[
mOrder[
id - 1].getSource()][
mOrder[
id - 1].getIndex()].interactionRecord;
246 return (*
mData)[idx.getSource()][idx.getIndex()].patterns[
mIndex % 5];
251 auto idx =
mOrder[
id / 5];
252 return (*
mData)[idx.getSource()][idx.getIndex()].patterns[
id % 5];
264 return (*
mData)[idx.getSource()][idx.getIndex()].deId;
269 return (*
mData)[idx.getSource()][idx.getIndex()].deId;
281 return (*
mData)[idx.getSource()][idx.getIndex()].columnId;
286 return (*
mData)[idx.getSource()][idx.getIndex()].columnId;
314 const TFData& mTFData;
Class to refer to object indicating its Indec, Source and status flags.
Strip pattern (aka digits)
Class for time synchronization of RawReader instances.
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*() 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[](difference_type i) const
value_type operator*() const
I & operator+=(difference_type i) noexcept
friend I operator+(difference_type i, const I &iter)
I operator+(difference_type i) const
difference_type operator-(const I &other) const noexcept
I operator-(difference_type i) const
bool operator<=(const I &other) const noexcept
const std::array< gsl::span< const D >, NEvTypes > * mData
_Iter(const std::vector< OrderRef > &ord, const std::array< gsl::span< const D >, NEvTypes > &data, bool end=false)
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
std::ptrdiff_t difference_type
I & operator--() noexcept
bool operator!=(const I &other) const noexcept
bool operator<(const I &other) const noexcept
std::random_access_iterator_tag iterator_category
gsl::span< const OrderRef > mOrder
I & operator++() noexcept
Iter_orbitIncROF begin_orbitIncROF() const
Iter_pattern end_pattern() const
Iter_deId end_deId() const
Iter_evtypeROF end_evtypeROF() const
Iter_deId begin_deId() const
Iter_pattern begin_pattern() const
Iter_evtypeROF begin_evtypeROF() const
Iter_orbitIncROF end_orbitIncROF() const
Iter_entriesROF end_entriesROF() const
Iter_bcIncROF begin_bcIncROF() const
Iter_bcIncROF end_bcIncROF() const
Iter_entriesROF begin_entriesROF() const
CTFHelper(const TFData &data)
Iter_colId end_colId() const
Iter_colId begin_colId() const
constexpr uint32_t NEvTypes
a couple of static helper functions to create timestamp values for CCDB queries or override obsolete ...
Common utility functions.
uint16_t bc
bunch crossing ID of interaction
std::vector< OrderRef > rofDataRefs
std::array< gsl::span< const o2::mid::ROFRecord >, NEvTypes > rofData
std::array< gsl::span< const o2::mid::ColumnData >, NEvTypes > colData
void buildReferences(o2::utils::IRFrameSelector &irSelector)
std::vector< OrderRef > colDataRefs
Column data structure for MID.
VectorOfTObjectPtrs other
o2::InteractionRecord ir(0, 0)
o2::utils::IRFrameSelector irSelector