SetOwner method implemented
[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();
7a2c8238 42
43 void SetBufferSize(Int_t buffsize){fBufferSize=buffsize;}
44
1b446896 45 protected:
46
47 Bool_t RunCoherencyCheck();
48
49
491d1b5d 50 AliHBTReader* fReader;//!
1b446896 51
52 virtual void ProcessTracks();
53 virtual void ProcessParticles();
54 virtual void ProcessTracksAndParticles();
55
56
27b3fe5d 57 AliHBTOnePairFctn** fTrackFunctions; //!array of pointers to functions that analyze rekonstructed tracks
58 AliHBTOnePairFctn** fParticleFunctions; //!array of pointers to functions that analyze generated particles
59 AliHBTTwoPairFctn** fParticleAndTrackFunctions; //!array of pointers to functions that analyze both
1b446896 60 //reconstructed tracks and generated particles
61 //i.e. - resolution analyzers
491d1b5d 62 UInt_t fNTrackFunctions; //!
63 UInt_t fNParticleFunctions; //!
64 UInt_t fNParticleAndTrackFunctions; //!
1b446896 65
66 /**********************************************/
67 /* Control parameters */
68
491d1b5d 69 AliHBTPairCut *fPairCut;//!
1b446896 70
7a2c8238 71 Int_t fBufferSize; //defines the size of buffer for mixed events; -1==MIX All
1b446896 72 /**********************************************/
73
74
75 private:
491d1b5d 76 static const Int_t fgkHbtAnalyzeAll;//!
77 static const UInt_t fgkFctnArraySize;//!
1b446896 78/*********************************************/
79 public:
80 ClassDef(AliHBTAnalysis,0)
81 };
82
83
84
85
86#endif