16#ifndef O2_UTILS_IRFRAMESELECTOR_H
17#define O2_UTILS_IRFRAMESELECTOR_H
31 template <
typename SPAN>
32 void setSelectedIRFrames(
const SPAN& sp,
size_t bwd = 0,
size_t fwd = 0,
long shift = 0,
bool removeOverlaps =
true)
34 mFrames = gsl::span<const o2::dataformats::IRFrame>(sp.data(), sp.size());
43 void applyMargins(
size_t bwd,
size_t fwd,
long shift,
bool removeOverlaps =
true);
44 void print(
bool lst =
false)
const;
47 bool isSet()
const {
return mIsSet; }
49 void setOwnList(
const std::vector<o2::dataformats::IRFrame>& lst,
bool toBeSorted);
52 gsl::span<const o2::dataformats::IRFrame> mFrames{};
54 long mLastBoundID = -1;
56 std::vector<o2::dataformats::IRFrame> mOwnList;
57 ClassDefNV(IRFrameSelector, 1);
Class to delimit start and end IR of certain time period.
void setOwnList(const std::vector< o2::dataformats::IRFrame > &lst, bool toBeSorted)
size_t loadIRFrames(const std::string &fname)
void applyMargins(size_t bwd, size_t fwd, long shift, bool removeOverlaps=true)
long check(const o2::InteractionRecord &ir, size_t bwd=0, size_t fwd=0)
long check(o2::dataformats::IRFrame fr, size_t bwd=0, size_t fwd=0)
gsl::span< const o2::dataformats::IRFrame > getMatchingFrames(const o2::dataformats::IRFrame &fr)
void setSelectedIRFrames(const SPAN &sp, size_t bwd=0, size_t fwd=0, long shift=0, bool removeOverlaps=true)
o2::InteractionRecord ir(0, 0)