R3BROOT
R3B analysis software
Loading...
Searching...
No Matches
R3BNeulandMapToCalParTask.h
Go to the documentation of this file.
1/******************************************************************************
2 * Copyright (C) 2019 GSI Helmholtzzentrum für Schwerionenforschung GmbH *
3 * Copyright (C) 2019-2023 Members of R3B Collaboration *
4 * *
5 * This software is distributed under the terms of the *
6 * GNU General Public Licence (GPL) version 3, *
7 * copied verbatim in the file "LICENSE". *
8 * *
9 * In applying this license GSI does not waive the privileges and immunities *
10 * granted to it by virtue of its status as an Intergovernmental Organization *
11 * or submit itself to any jurisdiction. *
12 ******************************************************************************/
13#pragma once
14
15#include "R3BFTCalEngine.h"
19#include <FairRootManager.h>
20#include <R3BIOConnector.h>
22#include <R3BNeulandCommon.h>
23#include <string_view>
24
25namespace R3B::Neuland
26{
28 {
29 public:
32 Map2CalParTask(std::string_view name, int iVerbose);
33
34 void SetTrigIDMapPrintFormat(TrigIDMappingPrintFormat format) { trigIDIO.SetFormat(format); }
35 void SetTrigEnabled(bool is_enabled) { is_trig_enabled_ = is_enabled; }
36 void SetCoarseTimeFreqMHz(float freq) { coarse_time_frequency_ = freq; }
37 void SetTrigIDMapAutoFind(bool is_auto = true) { is_trigID_auto_ = is_auto; }
38 void SetTrigIDMapDir(std::string_view dirName) { trigIDIO.SetDir(dirName); }
39 void SetTrigIDMapFileName(std::string_view fileName) { trigIDIO.SetFileName(fileName); }
40 void SetErrorMethod(ErrorMethod method) { cal_strategy_.Set_error_method(method); }
41
42 private:
43 bool is_trigID_auto_ = true;
44 bool is_trig_enabled_ = true;
45 unsigned int plane_num_ = 0;
50
51 // IO data and paramters:
56
57 // calibration engines:
60
61 // virtual functions:
62 void TriggeredExec() override;
63 void ExtraInit(FairRootManager* rootMan) override;
64 void EndOfTask() override;
65
66 // non-virtual functions:
67 void write_parameter();
69 void FillMapData();
70 void FillTrigMapData();
71 void PrintData() const;
72 void WriteHists();
73 void PrintTrigID() const;
74 };
75
76} // namespace R3B::Neuland
77
R3B::Neuland::Map2CalParTask R3BNeulandMapped2CalPar2
auto OutputPar(std::string_view par_name, FairRuntimeDb *rtdb=FairRuntimeDb::instance()) -> ParType *
InputVectorConnector< PaddleTamexMappedData > mappedData_
void SetTrigIDMapFileName(std::string_view fileName)
InputMapConnector< unsigned int, PaddleTamexTrigMappedData > trigMappedData_
calibration::FTCalErrorMethod ErrorMethod
calibration::FTEngine< calibration::PlaneCal > mapCalEngine_
void SetTrigIDMapAutoFind(bool is_auto=true)
void SetTrigIDMapDir(std::string_view dirName)
void SetTrigIDMapPrintFormat(TrigIDMappingPrintFormat format)
void ExtraInit(FairRootManager *rootMan) override
calibration::FTCalStrategy cal_strategy_
void SetErrorMethod(ErrorMethod method)
calibration::FTEngine< calibration::ModuleCal > trigMapCalEngine_
Simulation of NeuLAND Bar/Paddle.
constexpr auto COARSE_TIME_CLOCK_FREQUENCY_MHZ
InputConnector< std::vector< ElementType > > InputVectorConnector
InputConnector< std::map< KeyType, ValueType > > InputMapConnector