Hall A ROOT/C++ Analyzer (podd)
Loading...
Searching...
No Matches
THaTrackingDetector.h
Go to the documentation of this file.
1#ifndef Podd_THaTrackingDetector_h_
2#define Podd_THaTrackingDetector_h_
3
5//
6// THaTrackingDetector.h
7//
9
11
12class TClonesArray;
13class THaTrack;
14class THaTrackID;
15
17
18public:
20
21 virtual Int_t CoarseTrack( TClonesArray& tracks ) = 0;
22 virtual Int_t FineTrack( TClonesArray& tracks ) = 0;
23 // For backward-compatibility
24 virtual Int_t FindVertices( TClonesArray& /* tracks */ ) { return 0; }
25 Bool_t IsTracking() { return true; }
26 Bool_t IsPid() { return false; }
27
28 THaTrackingDetector(); // for ROOT I/O only
29protected:
30
31 virtual THaTrack* AddTrack( TClonesArray& tracks,
32 Double_t x, Double_t y,
33 Double_t theta, Double_t phi,
34 THaTrackID* ID = nullptr );
35
36 //Only derived classes may construct me
37
38 THaTrackingDetector( const char* name, const char* description,
39 THaApparatus* a = nullptr );
40
41 ClassDef(THaTrackingDetector,1) //ABC for a generic tracking detector
42};
43
44#endif
int Int_t
bool Bool_t
double Double_t
#define ClassDef(name, id)
virtual THaTrack * AddTrack(TClonesArray &tracks, Double_t x, Double_t y, Double_t theta, Double_t phi, THaTrackID *ID=nullptr)
virtual Int_t FineTrack(TClonesArray &tracks)=0
virtual Int_t FindVertices(TClonesArray &)
virtual Int_t CoarseTrack(TClonesArray &tracks)=0
THaTrackingDetector(const char *name, const char *description, THaApparatus *a=nullptr)
virtual ~THaTrackingDetector()