19#include <FairRootManager.h>
20#include <FairRuntimeDb.h>
41 explicit Cal2HitTask(std::string_view name =
"R3BNeulandCal2Hit",
int iVerbose = 1);
58 void ExtraInit(FairRootManager* rootMan)
override;
68 std::vector<CalibratedSignal>& signals,
70 void construct_hits(
const std::vector<CalibratedSignal>& left_signals,
71 const std::vector<CalibratedSignal>& right_signals,
73 std::vector<R3BNeulandHit>& hits);
88 [[nodiscard]]
inline auto get_hit_time(
double first_t,
double second_t)
const -> double;
96 static constexpr auto parse(format_parse_context& ctx) {
return ctx.end(); }
97 template <
typename FmtContent>
100 return format_to(ctn.out(),
"{{time: {}, energy: {}}}", signal.
time, signal.
energy);
static auto get_calibrated_energy(const CalDataSignal &calSignal, const HitModulePar &par, R3B::Side side) -> ValueErrorD
auto construct_hit(const LRPair< CalibratedSignal > &signalPair, const HitModulePar &par) const -> R3BNeulandHit
void SetExtraPar(FairRuntimeDb *rtdb) override
Cal2HitPar * cal_to_hit_par_
void ExtraInit(FairRootManager *rootMan) override
double global_time_offset_
static auto get_calibrated_time(const CalDataSignal &calSignal, const HitModulePar &par, R3B::Side side) -> ValueErrorD
void SetGlobalTimeOffset(double offset)
static auto to_calibrated_signal(const CalDataSignal &calSignal, const HitModulePar &par, R3B::Side side) -> CalibratedSignal
std::vector< CalibratedSignal > temp_left_signals_
void TriggeredExec() override
void calculate_calibrated_signals(const BarCalData &calBar, std::vector< CalibratedSignal > &signals, Side side)
OutputVectorConnector< R3BNeulandHit > hit_data_
auto signal_match_checking(const CalibratedSignal &first_signal, const CalibratedSignal &second_signal, const HitModulePar &par) -> bool
Cal2HitTask(std::string_view name="R3BNeulandCal2Hit", int iVerbose=1)
void HistogramInit(DataMonitor &histograms) override
void construct_hits(const std::vector< CalibratedSignal > &left_signals, const std::vector< CalibratedSignal > &right_signals, const HitModulePar &par, std::vector< R3BNeulandHit > &hits)
InputVectorConnector< BarCalData > cal_data_
auto get_hit_time(double first_t, double second_t) const -> double
void EndOfTask() override
void SetDistanceToTarget(double distance)
std::vector< CalibratedSignal > temp_right_signals_
double distance_to_target_
void BeginOfEvent() override
auto InputPar(std::string_view par_name, FairRuntimeDb *rtdb=FairRuntimeDb::instance()) -> ParType *
Simulation of NeuLAND Bar/Paddle.
InputConnector< std::vector< ElementType > > InputVectorConnector
ValueError< double > ValueErrorD
OutputConnector< std::vector< ElementType > > OutputVectorConnector