16701d1b |
1 | #ifndef AliHBTReaderTPC_H |
2 | #define AliHBTReaderTPC_H |
1b446896 |
3 | |
4 | #include "AliHBTReader.h" |
5 | |
16701d1b |
6 | //Multi file reader for TPC |
7 | // |
1b446896 |
8 | //This reader reads tracks AliTPCtracks.root |
16701d1b |
9 | // particles form gAlice |
1b446896 |
10 | //Piotr.Skowronski@cern.ch |
11 | //more info: http://alisoft.cern.ch/people/skowron/analyzer/index.html |
12 | |
13 | #include <TString.h> |
14 | class TFile; |
15 | |
16 | class AliHBTReaderTPC: public AliHBTReader |
17 | { |
18 | public: |
19 | AliHBTReaderTPC(const Char_t* trackfilename = "AliTPCtracks.root", |
16701d1b |
20 | const Char_t* clusterfilename = "AliTPCclusters.root", |
21 | const Char_t* galicefilename = "galice.root"); |
22 | |
23 | AliHBTReaderTPC(TObjArray* dirs, |
24 | const Char_t* trackfilename = "AliTPCtracks.root", |
25 | const Char_t* clusterfilename = "AliTPCclusters.root", |
26 | const Char_t* galicefilename = "galice.root"); |
27 | |
1b446896 |
28 | virtual ~AliHBTReaderTPC(); |
29 | |
30 | Int_t Read(AliHBTRun* particles, AliHBTRun *tracks);//reads tracks and particles and puts them in runs |
31 | |
32 | AliHBTEvent* GetParticleEvent(Int_t);//returns pointer to event with particles |
33 | AliHBTEvent* GetTrackEvent(Int_t);//returns pointer to event with particles |
34 | Int_t GetNumberOfPartEvents();//returns number of particle events |
35 | Int_t GetNumberOfTrackEvents();//returns number of track events |
36 | |
98295f4b |
37 | void SetMagneticField(Float_t mf){fMagneticField=mf;} |
38 | void UseMagneticFieldFromRun(Bool_t flag = kTRUE){fUseMagFFromRun=flag;} |
1b446896 |
39 | protected: |
40 | //in the future this class is will read global tracking |
41 | |
42 | |
16701d1b |
43 | Int_t OpenFiles(TFile*&,TFile*&,TFile*&,Int_t);//opens files to be read for given event |
44 | void CloseFiles(TFile*&,TFile*&,TFile*&);//close files |
7da9bdd2 |
45 | |
16701d1b |
46 | |
1b446896 |
47 | |
48 | AliHBTRun* fParticles; //!simulated particles |
49 | AliHBTRun* fTracks; //!reconstructed tracks (particles) |
16701d1b |
50 | |
1b446896 |
51 | |
98295f4b |
52 | TString fTrackFileName;//name of the file with tracks |
53 | TString fClusterFileName;//name of the file with clusters |
54 | TString fGAliceFileName;//name of the file with galice.root |
16701d1b |
55 | |
98295f4b |
56 | Bool_t fIsRead;//!flag indicating if the data are already read |
57 | |
58 | Float_t fMagneticField;//magnetic field value that was enforced while reading |
59 | Bool_t fUseMagFFromRun;//flag indicating if using field specified in gAlice (kTRUE) |
60 | // or enforece other defined by fMagneticField |
1b446896 |
61 | private: |
16701d1b |
62 | ClassDef(AliHBTReaderTPC,2) |
1b446896 |
63 | }; |
64 | |
65 | |
1b446896 |
66 | #endif |