Retrofeeded recent developement in from AliHBTReaderESD (ITS track points, additional...
[u/mrichter/AliRoot.git] / HBTAN / AliHBTReaderITSv2.h
1 #ifndef ALIHBTREADERITSV2_H
2 #define ALIHBTREADERITSV2_H
3
4 #include "AliHBTReader.h"
5
6
7 class AliLoader;
8 class AliRunLoader;
9 class TString;
10
11 class AliHBTReaderITSv2: public AliHBTReader
12 {
13   public:
14     
15     AliHBTReaderITSv2();
16     AliHBTReaderITSv2(const Char_t* galicefilename);
17     AliHBTReaderITSv2(TObjArray* dirs, const Char_t* galicefilename = "galice.root");
18
19     virtual ~AliHBTReaderITSv2();
20     
21     void          Rewind();
22     
23     Bool_t        ReadsTracks() const {return kTRUE;}
24     Bool_t        ReadsParticles() const {return kTRUE;}
25     
26     void          SetMagneticField(Float_t mf){fMagneticField=mf;}
27     void          UseMagneticFieldFromRun(Bool_t flag = kTRUE){fUseMagFFromRun=flag;}
28     
29   protected:
30     
31     Int_t         ReadNext();//reads tracks and particles and puts them in runs
32     Int_t         OpenNextFile();
33     void          DoOpenError( const char *va_(fmt), ...);
34         
35     TString       fFileName;//name of the file with galice.root
36     AliRunLoader* fRunLoader;//!Run Loader
37     AliLoader*    fITSLoader;//! ITS Loader
38         
39     Float_t       fMagneticField;//magnetic field value that was enforced while reading
40     Bool_t        fUseMagFFromRun;//flag indicating if using field specified in gAlice (kTRUE)
41                                // or enforece other defined by fMagneticField
42     
43     ClassDef(AliHBTReaderITSv2,2)
44 };
45
46 #endif