PandaRoot
BSEmcFinishRecoHitProcess.h
Go to the documentation of this file.
1 #ifndef BSEMCCFINISHRECOHITPROCESS_HH
2 #define BSEMCCFINISHRECOHITPROCESS_HH
3 
4 #include <string>
5 #include <vector>
6 
7 #include "Rtypes.h"
8 
9 #include "PndContainerI.h"
10 #include "PndParameterRegister.h"
11 #include "PndProcess.h"
12 
13 #include "BSEmcClusteringData.h"
14 #include "BSEmcClusteringPar.h"
15 
16 class FairParGenericSet;
17 class BSEmcCorrection;
19 class BSEmcRecoHit;
21 class TBuffer;
22 class TClass;
23 class TMemberInspector;
24 struct BSEmcClusteringData;
25 template <class T>
27 
36 class BSEmcFinishRecoHitProcess : public PndProcess<BSEmcClusteringData> {
37  public:
40  virtual void SetupParameters(const PndParameterRegister * /*t_parameter*/) /*override*/;
41  virtual void SetData(BSEmcClusteringData *t_pdata) /*override*/;
42  virtual void Process() /*override*/;
43  virtual void SetDetectorName(const std::string &t_detectorName) /*override*/;
44  void Apply(const std::vector<BSEmcRecoHit *> &t_recoHitCont) const;
45  void SetECF(BSEmcCorrection *t_ecf) { fECF = t_ecf; }
46  void SetErrorMatrixCalculator(BSEmcErrorMatrixCalculation *t_errorMatrixCalculator) { fErrorCalculator = t_errorMatrixCalculator; }
47 
48  private:
49  BSEmcCorrection *fECF{nullptr};
50  BSEmcErrorMatrixCalculation *fErrorCalculator{nullptr};
51  PndOutputContainerI<BSEmcRecoHit> *fRecoHitArray{nullptr};
52  std::string fErrorCalculationParName{""};
53 
54  ClassDef(BSEmcFinishRecoHitProcess, 1);
55 };
56 
57 #endif /*BSEMCCFINISHRECOHITPROCESS_HH*/
Base Process class.
Definition: PndProcess.h:24
Resembles/Contains all information a particle hitting the EMC can provide for later use in the PID st...
Definition: BSEmcRecoHit.h:31
Energy correction factor/function interface.
void Apply(const std::vector< BSEmcRecoHit *> &t_recoHitCont) const
virtual void SetupParameters(const PndParameterRegister *)
Fetch all parameters from the PndParameterRegister.
Applies energy correction and error calculation for each BSEmcRecoHit.
void SetECF(BSEmcCorrection *t_ecf)
virtual void SetData(BSEmcClusteringData *t_pdata)
Pass the data container ptrs to the process, and store pointers in class members. ...
virtual void SetDetectorName(const std::string &t_detectorName)
Set the Detector name. Important, as most EmcParameter need to know for which detector they need to b...
virtual void Process()
The actual data transformation (digitizing, clustering, etc.) should be defined here.
Container of addresses for data Container used by BSEmcClusteringTask and passed to Clustering Proces...
void SetErrorMatrixCalculator(BSEmcErrorMatrixCalculation *t_errorMatrixCalculator)
Interface to a datacontainer to be used in PandaROOT.
Helper class to indirect the Parameter fetching via the FairRuntimeDb.
Calculate Error Matrix for the given BSEmcRecoHit with parametrization defined by the given parameter...
virtual ~BSEmcFinishRecoHitProcess()