PandaRoot
PndMdtTrkProducer.h
Go to the documentation of this file.
1 #ifndef PNDMDTTRKPRODUCER_H
2 #define PNDMDTTRKPRODUCER_H 1
3 
4 #include <PndPersistencyTask.h>
5 #include <map>
6 #include <vector>
7 
8 #include "PndMdtTrk.h"
9 #include "PndMdtRecoPar.h"
10 
11 #include "PndTrack.h"
12 #include "FairGeanePro.h"
13 
14 class TClonesArray;
15 
16 using std::map;
17 using std::vector;
18 
20 
21  public:
24 
27 
29  virtual InitStatus Init();
30 
32  virtual void Exec(Option_t *opt);
33 
34  virtual void SetParContainers();
35 
36  virtual void AlgorithmWithLheGenTrack();
37 
38  void SetRecMethod(Int_t rec_method) { fRec_method = rec_method; }
39 
40  private:
41  Int_t fRec_method; // 0; previous method, use mdt info only; 1; use lhetrack as seed
42 
43  PndMdtTrk *AddTrk(PndMdtTrk *track);
44 
45  Bool_t MdtMapping(); // Creates maps of MDT hits
46  void Reset(); // reset maps
47  void SetGeometry(); // setting layer positions
48 
50  TClonesArray *fHitArray;
51 
53  TClonesArray *fLheGenTrack;
54 
56  TClonesArray *fTrkArray;
57 
58  // PndMdtRecoPar *fRecoPar;
59 
60  map<Int_t, vector<Int_t>> mapMdtBarrel;
61  map<Int_t, vector<Int_t>> mapMdtEndcap;
62  map<Int_t, vector<Int_t>> mapMdtForward;
63 
64  map<Int_t, TVector3> mapHitDirection;
65  map<Int_t, Float_t> mapHitDistance;
66  Float_t mdtLayerPos[3][20];
67  Float_t mdtIronThickness[3][20];
68  Float_t mdtModule1MaxZ;
69 
70  ClassDef(PndMdtTrkProducer, 1);
71 };
72 
73 #endif
void SetRecMethod(Int_t rec_method)
virtual InitStatus Init()
virtual void SetParContainers()
virtual void Exec(Option_t *opt)
virtual void AlgorithmWithLheGenTrack()