4#include <FairRootManager.h>
5#include <FairRuntimeDb.h>
10#include <RtypesCore.h>
13#include <range/v3/algorithm/find_if.hpp>
14#include <range/v3/algorithm/for_each.hpp>
21 : FairTask(name.data(), iVerbose)
32 if (
auto* rtdb = FairRuntimeDb::instance(); rtdb !=
nullptr)
44 if (
auto* rootMan = FairRootManager::Instance(); rootMan !=
nullptr)
63 fmt::format(
"Neuland calibration task \"{}\" has event trigger type: {}",
110 fmt::format(R
"(Passed events with the trigger type "{}" in task "{}": {})",
122 "Figures not saved due to current configuration: hist_disabled = {}, write_hist_disabled = {}",
126 ranges::for_each(
output_pars_, [](FairParSet* par) { par->setChanged(); });
133 fmt::format(R
"(From task "{}": tpat {}. Trig type {})",
149 auto par_not_changed = ranges::find_if(
input_pars_, [](
auto* par) {
return !par->hasChanged(); });
152 throw R3B::runtime_error(fmt::format(R
"(Calibration parameter "{}" is not initiated from the root file!)",
153 (*par_not_changed)->GetName()));
#define R3BLOG(severity, x)
virtual void SetExtraPar(FairRuntimeDb *rtdb)
virtual void ExtraInit(FairRootManager *rootMan)
virtual auto CheckConditions() const -> bool
virtual void HistogramInit(DataMonitor &histograms)
auto Init() -> InitStatus override
void FinishTask() override
R3BEventHeader * eventHeader_
virtual void TriggeredExec()=0
CalibrationBasePar * base_par_
TH1I * hist_condition_check_
void Exec(Option_t *option) override
virtual void BeginOfEvent()
int64_t passed_num_of_events
auto check_trigger() const -> bool
std::vector< FairParSet * > output_pars_
void SetParContainers() override
std::vector< FairParSet * > input_pars_
bool is_write_hist_disabled_
Simulation of NeuLAND Bar/Paddle.
auto CheckTriggerWithTpat(CalTrigger trigger, int tpat, int off_spill_bit) -> bool
auto CalTrigger2Str(CalTrigger cal_trigger) -> std::string
constexpr auto CalTrigger2Tpat(CalTrigger cal_trigger, int off_spill_bit) -> std::bitset< TPAT_BITSIZE >