1 #ifndef ALIHBTANALYSIS_H
2 #define ALIHBTANALYSIS_H
8 class AliHBTParticleCut;
16 class AliHBTOnePairFctn;
17 class AliHBTTwoPairFctn;
22 class AliHBTAnalysis: public TObject
27 virtual ~AliHBTAnalysis();
29 virtual void Process(Option_t* option = "TracksAndParticles");
32 void SetGlobalPairCut(AliHBTPairCut* cut);
34 void AddTrackFunction(AliHBTOnePairFctn*);
35 void AddParticleFunction(AliHBTOnePairFctn*);
36 void AddParticleAndTrackFunction(AliHBTTwoPairFctn*);
38 void AddResolutionFunction(AliHBTTwoPairFctn* f){AddParticleAndTrackFunction(f);}
40 void SetReader(AliHBTReader* r){fReader = r;}
42 void WriteFunctions();
44 void SetBufferSize(Int_t buffsize){fBufferSize=buffsize;}
46 Bool_t IsNonIdentAnalysis();
49 Bool_t RunCoherencyCheck();
51 void FilterOut(AliHBTEvent* outpart1, AliHBTEvent* outpart2, AliHBTEvent* inpart,
52 AliHBTEvent* outtrack1, AliHBTEvent* outtrack2, AliHBTEvent* intrack);
53 void FilterOut(AliHBTEvent* out1, AliHBTEvent* out2, AliHBTEvent* in);
55 AliHBTReader* fReader;//!
57 virtual void ProcessTracks();
58 virtual void ProcessParticles();
59 virtual void ProcessTracksAndParticles();
61 virtual void ProcessTracksAndParticlesNonIdentAnal();
62 virtual void ProcessParticlesNonIdentAnal();
63 virtual void ProcessTracksNonIdentAnal();
65 AliHBTOnePairFctn** fTrackFunctions; //!array of pointers to functions that analyze rekonstructed tracks
66 AliHBTOnePairFctn** fParticleFunctions; //!array of pointers to functions that analyze generated particles
67 AliHBTTwoPairFctn** fParticleAndTrackFunctions; //!array of pointers to functions that analyze both
68 //reconstructed tracks and generated particles
69 //i.e. - resolution analyzers
70 UInt_t fNTrackFunctions; //!
71 UInt_t fNParticleFunctions; //!
72 UInt_t fNParticleAndTrackFunctions; //!
74 /**********************************************/
75 /* Control parameters */
77 AliHBTPairCut *fPairCut;//!
79 Int_t fBufferSize; //defines the size of buffer for mixed events; -1==MIX All
80 /**********************************************/
84 static const Int_t fgkHbtAnalyzeAll;//!
85 static const UInt_t fgkFctnArraySize;//!
86 /*********************************************/
88 ClassDef(AliHBTAnalysis,0)