8c6e17eece0fa956618dca0b01f758444cb8681f
[u/mrichter/AliRoot.git] / HBTAN / AliHBTReaderTPC.h
1 #ifndef AliHBTReaderTPC_H
2 #define AliHBTReaderTPC_H
3
4 #include "AliHBTReader.h"
5
6 //Multi file reader for TPC
7 //
8 //This reader reads tracks AliTPCtracks.root
9 //                  particles form gAlice
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 class AliRunLoader;
16 class AliTPCLoader;
17
18 class AliHBTReaderTPC: public AliHBTReader
19 {
20   public:
21     AliHBTReaderTPC();
22     AliHBTReaderTPC(const Char_t* galicefilename);
23     AliHBTReaderTPC(TObjArray* dirs, const Char_t* galicefilename = "galice.root");
24
25     virtual ~AliHBTReaderTPC();
26     
27     void          Rewind();
28     
29     Bool_t        ReadsTracks() const {return kTRUE;}
30     Bool_t        ReadsParticles() const {return kTRUE;}
31     
32     void          SetMagneticField(Float_t mf){fMagneticField=mf;}
33     void          UseMagneticFieldFromRun(Bool_t flag = kTRUE){fUseMagFFromRun=flag;}
34     
35   protected:
36     //in the future this class is will read global tracking
37     Int_t         ReadNext();
38     Int_t         OpenNextSession();
39     void          DoOpenError(const char* msgfmt, ...);
40     
41     TString       fFileName;//name of the file with galice.root
42     AliRunLoader* fRunLoader;//!RL
43     AliTPCLoader* fTPCLoader;//!TPCLoader
44     Float_t       fMagneticField;//magnetic field value that was enforced while reading
45     Bool_t        fUseMagFFromRun;//flag indicating if using field specified in gAlice (kTRUE)
46                                // or enforece other defined by fMagneticField
47
48   private:
49   public:
50     ClassDef(AliHBTReaderTPC,3)
51 };
52
53
54 #endif