- Loop until np-1
[u/mrichter/AliRoot.git] / HBTAN / AliHBTAnalysis.h
CommitLineData
1b446896 1#ifndef ALIHBTANALYSIS_H
2#define ALIHBTANALYSIS_H
3
4#include <TObject.h>
5
6
7
8class AliHBTParticleCut;
9class AliHBTCut;
10class AliHBTPairCut;
11class AliHBTPair;
12
13class AliHBTRun;
14class AliHBTReader;
27b3fe5d 15class AliHBTOnePairFctn;
16class AliHBTTwoPairFctn;
1b446896 17
18
19class TList;
20
21class 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
27b3fe5d 33 void AddTrackFunction(AliHBTOnePairFctn*);
34 void AddParticleFunction(AliHBTOnePairFctn*);
35 void AddParticleAndTrackFunction(AliHBTTwoPairFctn*);
1b446896 36
27b3fe5d 37 void AddResolutionFunction(AliHBTTwoPairFctn* f){AddParticleAndTrackFunction(f);}
1b446896 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
27b3fe5d 54 AliHBTOnePairFctn** fTrackFunctions; //!array of pointers to functions that analyze rekonstructed tracks
55 AliHBTOnePairFctn** fParticleFunctions; //!array of pointers to functions that analyze generated particles
56 AliHBTTwoPairFctn** 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