12#ifndef DETECTORS_HMPID_SIMULATION_INCLUDE_HMPIDSIMULATION_HMPIDDIGITIZER_H_
13#define DETECTORS_HMPID_SIMULATION_INCLUDE_HMPIDSIMULATION_HMPIDDIGITIZER_H_
34 if ((timeNS - mCurrentTriggerTime) > TRACKHOLDTIME) {
45 if (mReadoutCounter == -1) {
47 mCurrentTriggerTime = timeNS;
52 if ((timeNS - mCurrentTriggerTime) > BUSYTIME) {
53 mCurrentTriggerTime = timeNS;
73 mRegisteredLabelContainer =
labels;
77 void process(std::vector<o2::hmpid::HitType>
const&, std::vector<o2::hmpid::Digit>& digit);
80 void flush(std::vector<o2::hmpid::Digit>& digit);
85 void zeroSuppress(std::vector<o2::hmpid::Digit>
const&
digits, std::vector<o2::hmpid::Digit>& newdigits,
92 double mCurrentTriggerTime = 0.;
99 std::vector<o2::hmpid::Digit> mDigits;
101 constexpr static double TRACKHOLDTIME = 1200;
102 constexpr static double BUSYTIME = 40000;
104 std::map<int, int> mIndexForPad;
106 std::vector<int> mInvolvedPads;
108 int mReadoutCounter = -1;
unsigned short int uint16_t
Timeframe settings Average distance in cm of events merged into Randomize distance around average distance of merged events Simulate correct bunch interactions instead of placing only the average number of events A value[n] sets TFlen for[n] collisions in Number of bunches per trainsort Number of bunch trains Instantaneous interaction rate Do not simulate border Total number of collisions to be placed in the interior of all time Do not select random but walk over array of events in stride steps h Event generator settings h configStandalone Use CPU for GPU Force usage of the specified GPU device no CPU fallback Continue processing after an error First event to process
std::vector< o2::MCCompLabel > labels
Definition of a container to keep Monte Carlo truth external to simulation objects.
void setEventID(int eventID)
bool setTriggerTime(double timeNS)
void flush(std::vector< o2::hmpid::Digit > &digit)
void setLabelContainer(o2::dataformats::MCTruthContainer< o2::MCCompLabel > *labels)
bool setEventTime(double timeNS)
a couple of static helper functions to create timestamp values for CCDB queries or override obsolete ...
static int ns2bc(double ns, unsigned int &orb)
std::vector< Digit > digits