FairRoot/PandaRoot
PndGemTrackFinderOnHitsTB.h
Go to the documentation of this file.
1 // -------------------------------------------------------------------------
2 // ----- PndGemTrackFinderOnHitsTB header file -----
3 // ----- Created 02.06.2009 by R. Karabowicz -----
4 // -------------------------------------------------------------------------
5 
16 #ifndef PNDGEMTRACKFINDERONHITSTB_H
17 #define PNDGEMTRACKFINDERONHITSTB_H
18 
19 #include "TStopwatch.h"
20 
21 #include "FairMCPoint.h"
22 #include "PndMCTrack.h"
23 
24 #include "PndGemHit.h"
25 #include "PndGemTrackFinder.h"
26 #include "PndGemDigiPar.h"
27 
28 #include <vector>
29 
31  Int_t stationIndex[2];
32  Int_t sensorNumber[2];
33  Int_t hitIndex[2];
38 };
39 
41 {
42 
43  public:
44 
47 
50 
56  virtual Int_t DoFind(TClonesArray* hitArray,
57  TClonesArray* trackArray,
58  TClonesArray* trackCandArray);
59 
61  void SetVerbose(const Int_t& verbose) { fVerbose = verbose; };
62  void SetPrimary(const Int_t& primary) { fPrimary = primary; };
63  void SetSigmaMult(Double_t tempd) { fSigmaMult = tempd; };
64 
65 
66  private:
67 
69 
71  TClonesArray* fMCTrackArray;
72  TClonesArray* fMCPointArray;
73 
75  // PndGemStructure *fGemStructure;
76 
83  Int_t fVerbose;
84 
89  Int_t fPrimary;
90 
92 
93  // Parameters, taken from the digiPar file
96 
101 
104 
107 
108  TStopwatch fTimer;
109 
116 
118  Int_t fNofEvents; // event counter
120  Int_t fNofClHits;
121 
124  std::vector<TrackSegmentTB> fTrackSegments;
125  Int_t FindTrackSegments(TClonesArray* hitArray, Int_t stat1Id, Int_t stat2Id);
126  Int_t MatchTrackSegments();
127  void RemoveCloneTracks(Int_t nofRecoTracks);
128  Int_t CreateTracks(TClonesArray* hitArray,
129  TClonesArray* trackArray,
130  TClonesArray* trackCandArray,
131  Int_t nofRecoTracks);
132 
133  void PrintTrackSegments(TClonesArray* hitArray);
134  void PrintTracks(TClonesArray* hitArray, Int_t nofRecoTracks);
135  void PrintMCTrackSegments(TClonesArray* hitArray);
136  void PrintMCTracks(TClonesArray* hitArray, Int_t nofRecoTracks);
137 
139  virtual void SetParContainers();
140 
142  virtual void Init();
143 
144  virtual void Finish();
145 
147 
148 };
149 
150 #endif
void PrintTracks(TClonesArray *hitArray, Int_t nofRecoTracks)
std::vector< TrackSegmentTB > fTrackSegments
TClonesArray * trackArray
Definition: NHitsPerEvent.C:14
#define verbose
Abstract base class for concrete Gem track finding algorithm.
Digitization Parameter Class for GEM part.
Definition: PndGemDigiPar.h:31
void SetPrimary(const Int_t &primary)
void PrintTrackSegments(TClonesArray *hitArray)
void RemoveCloneTracks(Int_t nofRecoTracks)
OnHits track finding algorithm.
Double_t
Int_t FindTrackSegments(TClonesArray *hitArray, Int_t stat1Id, Int_t stat2Id)
void SetVerbose(const Int_t &verbose)
void PrintMCTracks(TClonesArray *hitArray, Int_t nofRecoTracks)
ClassDef(PndGemTrackFinderOnHitsTB, 1)
Int_t CreateTracks(TClonesArray *hitArray, TClonesArray *trackArray, TClonesArray *trackCandArray, Int_t nofRecoTracks)
virtual Int_t DoFind(TClonesArray *hitArray, TClonesArray *trackArray, TClonesArray *trackCandArray)
void PrintMCTrackSegments(TClonesArray *hitArray)