PandaRoot
PndPidBremCorrector.h
Go to the documentation of this file.
1 #ifndef PID_BREMCORRECTOR_H
2 #define PID_BREMCORRECTOR_H
3 
4 #include <vector>
5 #include <map>
6 
7 #include "FairTask.h"
8 #include "TObject.h"
9 
10 #include "TString.h"
11 #include "TClonesArray.h"
12 #include "TVector3.h"
13 
14 class PndPidCandidate;
15 
17 class PndEmcCluster;
18 class PndEmcBump;
19 
20 // Path of file:
21 // ----- $pandaroot/pid/PidCorr
22 
23 class PndPidBremCorrector : public FairTask {
24 
25  public:
27  PndPidBremCorrector(const char *name, const char *title = "Pnd Task");
28 
29  // Destructor
30  virtual ~PndPidBremCorrector();
31 
32  // Methods
34  virtual InitStatus Init();
35 
37  virtual void Exec(Option_t *opt);
38 
39  void SetStorageOfData(Bool_t p = kTRUE) { fPersistance = p; };
40 
41  virtual void FinishTask(){};
42  void SetOutputBranch(TString branch) { fTrackBranchNamePidHypo = branch; };
43 
44  private:
45  PndPidBremCorrected4Mom *AddBremCorrected4Mom();
46 
47  Double_t GetSepPhotonE(PndPidCandidate *, std::vector<Int_t> &);
48  Double_t GetMergPhotonE(PndPidCandidate *, std::vector<Int_t> &);
49 
50  void GetEmcPhiBumpList(Int_t iClust);
51  Double_t GetBz(const TVector3 &pos);
52 
54  TClonesArray *fBumpArray;
55  TClonesArray *fClusterArray;
56 
57  TClonesArray *fPhiBumpArray;
58 
59  TClonesArray *fChargedCandidateArray;
60 
61  TClonesArray *fBremCorrected4MomArray;
62 
63  Double_t fRecMomOfEle;
64  Double_t fRecThetaOfEle;
65  Double_t fRecPhiOfEle;
66  Int_t fCharge;
67 
68  Double_t fSepPhotonE;
69  Double_t fMergPhotonE;
70 
71  std::vector<PndEmcBump *> fEmcPhiBumpList;
72  TString fTrackBranchNamePidHypo;
73 
74  Bool_t fPersistance; // switch to turn on/off storing the arrays to a file
75  // Data members
76 
78  PndPidBremCorrector &operator=(const PndPidBremCorrector &) { return *this; };
79 
80  ClassDef(PndPidBremCorrector, 1);
81 };
82 
83 #endif
virtual void Exec(Option_t *opt)
virtual void FinishTask()
void SetOutputBranch(TString branch)
virtual ~PndPidBremCorrector()
void SetStorageOfData(Bool_t p=kTRUE)
virtual InitStatus Init()
represents a reconstructed (splitted) emc cluster
Definition: PndEmcBump.h:34