PandaRoot
PndEmcCorrBump.h
Go to the documentation of this file.
1 //-----------------------------------------------------------------------
2 // File and Version Information:
3 // $Id: $
4 // Software developed for the PANDA Detector at GSI.
5 // Author List:
6 // Jan Zhong
7 //---------------------------------------------------------------------
8 //#pragma once
9 #ifndef PNDEMCCORRBUMP_H
10 #define PNDEMCCORRBUMP_H
11 
12 #include "FairTask.h"
13 //#include <string>
14 #include <vector>
15 //#include <list>
16 #include "TVectorD.h"
17 #include "PndEmcDigiCalibrator.h"
18 class TClonesArray;
19 class TObjectArray;
20 class PndEmcCluster;
21 class PndEmcGeoPar;
22 class PndEmcDigiPar;
23 class PndEmcRecoPar;
24 class PndEmcDigi;
25 class PndEmcBump;
26 // class PndEmcDigiCalibrator;
27 
28 class PndEmcCorrBump : public FairTask {
29 
30  public:
31  // Constructors
32 
33  PndEmcCorrBump(Int_t verbose = 0, Bool_t storeclusters = kTRUE);
34 
35  // Destructor
36 
37  virtual ~PndEmcCorrBump();
38 
40  virtual InitStatus Init();
41 
43  virtual void Exec(Option_t *opt);
44 
45  void SetStorageOfData(Bool_t val); // Method to specify whether clusters are stored or not.
46  void FinishTask();
47 
48  void RunTimeBased() { fTimeOrderedDigi = kTRUE; }
49 
50  private:
52  TClonesArray *fDigiArray;
53 
55  TClonesArray *fSharedDigiArray;
56  TClonesArray *fBumpArray;
57 
59  // TClonesArray* fClusterArray;
60 
61  // std::vector<PndEmcCluster*> fClusterList;
62 
63  Int_t fMapVersion;
64 
65  static Int_t fEventCounter;
66 
67  PndEmcGeoPar *fGeoPar;
68  PndEmcDigiPar *fDigiPar;
69  PndEmcRecoPar *fRecoPar;
71  virtual void SetParContainers();
72 
74  Int_t fVerbose;
75 
76  Bool_t fStoreClusters;
77  Bool_t fTimeOrderedDigi;
78  // for time-order reconstruction
79  // std::vector<PndEmcDigi*> fBufferofDigisToBeDetermined;
80 
82  PndEmcCorrBump &operator=(const PndEmcCorrBump &) { return *this; };
83 
84  // task counter
85  Int_t HowManyDigi;
86  Int_t HowManyCluster;
87  // calibration was replaced by a class
88  // coefficients
89  // TVectorD CoeffMod3;
90  // TVectorD CoeffMod5;
91  // TVectorD CoeffModo;
92  // static Double_t fTimeWindowOfSeedDigi[5][17];
93  // static Double_t fTimeWindowOfShowerDigi[5][17];
94  // Double_t CalibrationEvtTimeByDigi(PndEmcDigi* theDigi, bool PrintOut=kFALSE) const;
95  // Int_t GetIdxByEnergy(Double_t energy) const;
96  PndEmcDigiCalibrator digiCalibrator;
97 
98  TClonesArray *fBumpArrayTBD;
99 
100  std::vector<Double_t> fClusterPosParam;
101 
102  ClassDef(PndEmcCorrBump, 1)
103 };
104 #endif // PNDEMCMAKECLUSTER_HH
virtual void Exec(Option_t *opt)
void SetStorageOfData(Bool_t val)
parameter set of Emc digitisation
Definition: PndEmcDigiPar.h:12
virtual InitStatus Init()
PndEmcCorrBump(Int_t verbose=0, Bool_t storeclusters=kTRUE)
represents a reconstructed (splitted) emc cluster
Definition: PndEmcBump.h:34
Parameter set for Emc Reco.
Definition: PndEmcRecoPar.h:12
virtual ~PndEmcCorrBump()