12#ifndef O2_EMCAL_CELLRECALIBRATOR_SPEC
13#define O2_EMCAL_CELLRECALIBRATOR_SPEC
74 CellRecalibratorSpec(uint32_t outputspec,
LEDEventSettings ledsettings,
bool badChannelCalib,
bool timeCalib,
bool gainCalib,
bool isMC, std::shared_ptr<CalibLoader>(calibHandler));
127 void updateCalibObjects();
133 void writeTrigger(
const gsl::span<const o2::emcal::Cell> selectedCells,
const o2::emcal::TriggerRecord& eventtrigger, std::vector<o2::emcal::Cell>& outputcontainer, std::vector<o2::emcal::TriggerRecord>& outputtriggers);
139 enum CalibrationType_t {
140 BADCHANNEL_CALIB = 0,
145 uint32_t mOutputSubspec = 0;
148 std::bitset<8> mCalibrationSettings;
149 std::shared_ptr<CalibLoader> mCalibrationHandler;
150 CellRecalibrator mCellRecalibrator;
161framework::DataProcessorSpec
getCellRecalibratorSpec(uint32_t inputSubspec, uint32_t outputSubspec, uint32_t ledsettings,
bool badChannelCalib,
bool timeCalib,
bool gainCalib,
bool isMC);
Definition of a container to keep Monte Carlo truth external to simulation objects.
Recalibration workflow at cell level.
LEDEventSettings
Dedicated handling for LED events.
@ REDIRECT
Redirect LED events to dedicated output.
@ KEEP
Keep LED events in timeframe (uncalibrated)
void setRunGainCalibration(bool doRun)
Switch for the gain calibration.
void setRunTimeCalibration(bool doRun)
Switch for time calibration.
~CellRecalibratorSpec() final=default
Destructor.
void finaliseCCDB(framework::ConcreteDataMatcher &matcher, void *obj) final
Fetching cell objects and assigning them to the internal handlers.
void setRunBadChannelCalibration(bool doRun)
Switch for bad channel calibration.
bool isRunBadChannlCalibration() const
Check if the bad channel calibration is enabled.
void run(framework::ProcessingContext &ctx) final
Run recalibration of cells for a new timeframe.
bool isRunTimeCalibration() const
Check if the time calibration is enabled.
bool isRunGainCalibration() const
Check if the gain calibration is enabled.
void init(framework::InitContext &ctx) final
Initialize recalibrator.
Header for data corresponding to the same hardware trigger.
framework::DataProcessorSpec getCellRecalibratorSpec(uint32_t inputSubspec, uint32_t outputSubspec, uint32_t ledsettings, bool badChannelCalib, bool timeCalib, bool gainCalib, bool isMC)
Create CellRecalibrator processor spec.
a couple of static helper functions to create timestamp values for CCDB queries or override obsolete ...