]>
Commit | Line | Data |
---|---|---|
1b446896 | 1 | #ifndef ALIHBTANALYSIS_H |
2 | #define ALIHBTANALYSIS_H | |
3 | ||
4 | #include <TObject.h> | |
5 | ||
6 | ||
7 | ||
8 | class AliHBTParticleCut; | |
9 | class AliHBTCut; | |
10 | class AliHBTPairCut; | |
11 | class AliHBTPair; | |
12 | ||
13 | class AliHBTRun; | |
14 | class AliHBTReader; | |
15 | class AliHBTTwoPartFctn; | |
16 | class AliHBTFourPartFctn; | |
17 | ||
18 | ||
19 | class TList; | |
20 | ||
21 | class AliHBTAnalysis: public TObject | |
22 | { | |
23 | public: | |
24 | AliHBTAnalysis(); | |
25 | ||
26 | virtual ~AliHBTAnalysis(); | |
27 | ||
28 | virtual void Process(Option_t* option = "TracksAndParticles"); | |
29 | ||
30 | ||
31 | void SetGlobalPairCut(AliHBTPairCut* cut); | |
32 | ||
33 | void AddTrackFunction(AliHBTTwoPartFctn*); | |
34 | void AddParticleFunction(AliHBTTwoPartFctn*); | |
35 | void AddParticleAndTrackFunction(AliHBTFourPartFctn*); | |
36 | ||
37 | void AddResolutionFunction(AliHBTFourPartFctn* f){AddParticleAndTrackFunction(f);} | |
38 | ||
39 | void SetReader(AliHBTReader* r){fReader = r;} | |
40 | ||
491d1b5d | 41 | void WriteFunctions(); |
1b446896 | 42 | protected: |
43 | ||
44 | Bool_t RunCoherencyCheck(); | |
45 | ||
46 | ||
491d1b5d | 47 | AliHBTReader* fReader;//! |
1b446896 | 48 | |
49 | virtual void ProcessTracks(); | |
50 | virtual void ProcessParticles(); | |
51 | virtual void ProcessTracksAndParticles(); | |
52 | ||
53 | ||
491d1b5d | 54 | AliHBTTwoPartFctn** fTrackFunctions; //!array of pointers to functions that analyze rekonstructed tracks |
55 | AliHBTTwoPartFctn** fParticleFunctions; //!array of pointers to functions that analyze generated particles | |
56 | AliHBTFourPartFctn** fParticleAndTrackFunctions; //!array of pointers to functions that analyze both | |
1b446896 | 57 | //reconstructed tracks and generated particles |
58 | //i.e. - resolution analyzers | |
491d1b5d | 59 | UInt_t fNTrackFunctions; //! |
60 | UInt_t fNParticleFunctions; //! | |
61 | UInt_t fNParticleAndTrackFunctions; //! | |
1b446896 | 62 | |
63 | /**********************************************/ | |
64 | /* Control parameters */ | |
65 | ||
491d1b5d | 66 | AliHBTPairCut *fPairCut;//! |
1b446896 | 67 | |
1b446896 | 68 | /**********************************************/ |
69 | ||
70 | ||
71 | private: | |
491d1b5d | 72 | static const Int_t fgkHbtAnalyzeAll;//! |
73 | static const UInt_t fgkFctnArraySize;//! | |
1b446896 | 74 | /*********************************************/ |
75 | public: | |
76 | ClassDef(AliHBTAnalysis,0) | |
77 | }; | |
78 | ||
79 | ||
80 | ||
81 | ||
82 | #endif |