15#ifndef ALICEO2_FT0_RECPOINTS_H
16#define ALICEO2_FT0_RECPOINTS_H
98 RecPoints(
const std::array<short, 4>& collisiontime,
100 : mCollisionTime(collisiontime)
110 const std::array<short, 4>& arrTimes,
112 uint8_t extraTriggerWord) :
mIntRecord(
ir), mCollisionTime(arrTimes), mTriggers(digitTriggers)
114 ref.setFirstEntry(chDataFirstEntryPos);
115 ref.setEntries(chDataNEntries);
116 initRecPointTriggers(digitTriggers, extraTriggerWord);
134 static constexpr uint8_t
makeExtraTrgWord(
bool isActiveA =
true,
bool isActiveC =
true,
bool isFlangeEvent =
true)
142 gsl::span<const ChannelDataFloat>
getBunchChannelData(
const gsl::span<const ChannelDataFloat> tfdata)
const;
149 void initRecPointTriggers(
const o2::fit::Triggers& digitTriggers, uint8_t extraTrgWord = 0)
153 mTriggers.
setTriggers(trgAndTechWordPair.first | extraTrgWord);
154 mTechnicalWord = trgAndTechWordPair.second;
162 uint8_t mTechnicalWord{0};
Class to refer to the 1st entry and N elements of some group in the continuous container.
uint8_t getTriggersignals() const
void setTriggers(uint8_t trgsig, uint8_t chanA, uint8_t chanC, int32_t aamplA, int32_t aamplC, int16_t atimeA, int16_t atimeC)
static constexpr std::pair< uint8_t, uint8_t > parseDigitTriggerWord(uint8_t digitWord, bool shiftTechBitsToBegin=false)
short getCollisionTimeA() const
static constexpr uint8_t makeExtraTrgWord(bool isActiveA=true, bool isActiveC=true, bool isFlangeEvent=true)
o2::dataformats::RangeReference< int, int > ref
uint8_t getTechnicalWord() const
static short constexpr sDummyCollissionTime
short getCollisionTimeC() const
bool isValidTime(int side) const
static const std::map< unsigned int, std::string > sMapTechnicalBits
static const std::map< unsigned int, std::string > sMapTriggerBits
o2::fit::Triggers getTrigger() const
RecPoints(int chDataFirstEntryPos, int chDataNEntries, const o2::InteractionRecord &ir, const std::array< short, 4 > &arrTimes, const o2::fit::Triggers &digitTriggers, uint8_t extraTriggerWord)
short getCollisionTimeMean() const
short getCollisionTime(int side) const
o2::InteractionRecord getInteractionRecord() const
void setTriggers(o2::fit::Triggers trig)
RecPoints(const std::array< short, 4 > &collisiontime, int first, int ne, o2::InteractionRecord iRec, o2::fit::Triggers chTrig)
void setVertex(short vertex)
bool operator==(const RecPoints &) const =default
void setCollisionTime(short time, int side)
o2::InteractionRecord mIntRecord
gsl::span< const ChannelDataFloat > getBunchChannelData(const gsl::span< const ChannelDataFloat > tfdata) const
struct o2::upgrades_utils::@461 ft0
structure to keep V0C information
a couple of static helper functions to create timestamp values for CCDB queries or override obsolete ...
static constexpr double DummyTime
ChannelDataFloat(int iPmt, float time, float charge, int chainQTC)
ClassDefNV(ChannelDataFloat, 1)
ChannelDataFloat()=default
bool operator==(const ChannelDataFloat &) const =default
o2::InteractionRecord ir(0, 0)