18#include <FairRuntimeDb.h>
35 [[nodiscard]]
auto IsHistDisabled() const ->
bool {
return is_hist_disabled_; }
38 void SetDisableHist(
bool is_hist_disabled =
true) { is_hist_disabled_ = is_hist_disabled; }
41 is_write_hist_disabled_ = is_write_hist_disabled;
48 template <
typename ParType>
49 auto InputPar(std::string_view par_name, FairRuntimeDb* rtdb = FairRuntimeDb::instance()) -> ParType*
51 return add_par<ParType>(par_name, input_pars_, rtdb);
54 template <
typename ParType>
55 auto OutputPar(std::string_view par_name, FairRuntimeDb* rtdb = FairRuntimeDb::instance()) -> ParType*
57 return add_par<ParType>(par_name, output_pars_, rtdb);
61 bool is_hist_disabled_ =
false;
62 bool is_write_hist_disabled_ =
false;
63 int offspill_tpat_bit_ = 0;
64 int64_t passed_num_of_events = 0;
67 std::vector<FairParSet*> input_pars_;
68 std::vector<FairParSet*> output_pars_;
71 TH1I* hist_trig_check_ =
nullptr;
72 TH1I* hist_condition_check_ =
nullptr;
87 auto Init() -> InitStatus
override;
89 void Exec(Option_t* option)
override;
93 void init_histogram();
94 void check_input_par();
95 void execute_no_hist();
96 void execute_with_hist();
99 [[nodiscard]]
auto check_trigger() const ->
bool;
100 template <typename ParType>
101 [[nodiscard]] auto add_par(std::string_view par_name,
102 std::vector<FairParSet*>& pars,
103 FairRuntimeDb* rtdb) -> ParType*;
106 template <typename ParType>
108 std::vector<FairParSet*>& pars,
109 FairRuntimeDb* rtdb) -> ParType*
111 auto* par =
dynamic_cast<ParType*
>(rtdb->findContainer(par_name.data()));
114 par = std::make_unique<ParType>(par_name.data()).release();
115 if (rtdb->addContainer(par); par ==
nullptr)
auto IsHistDisabled() const -> bool
virtual void SetExtraPar(FairRuntimeDb *rtdb)
auto GetHistMonitor() -> DataMonitor &
virtual void ExtraInit(FairRootManager *rootMan)
virtual auto CheckConditions() const -> bool
auto GetEventHeader() const -> auto *
virtual void HistogramInit(DataMonitor &histograms)
auto Init() -> InitStatus override
void FinishTask() override
void SetDisableHist(bool is_hist_disabled=true)
virtual void TriggeredExec()=0
auto InputPar(std::string_view par_name, FairRuntimeDb *rtdb=FairRuntimeDb::instance()) -> ParType *
auto OutputPar(std::string_view par_name, FairRuntimeDb *rtdb=FairRuntimeDb::instance()) -> ParType *
void SetTrigger(CalTrigger trigger)
void Exec(Option_t *option) override
virtual void BeginOfEvent()
void SetDisableHistWrite(bool is_write_hist_disabled=true)
void SetParContainers() override
auto GetBasePar() -> auto *
Simulation of NeuLAND Bar/Paddle.