]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGCF/Correlations/JCORRAN/AliJEventPool.h
Merge branch 'feature-movesplit'
[u/mrichter/AliRoot.git] / PWGCF / Correlations / JCORRAN / AliJEventPool.h
1 //===========================================================
2 // AliJEventPool.h
3 //
4 //===========================================================
5
6 #ifndef ALIJEVENTPOOL_H
7 #define ALIJEVENTPOOL_H
8
9 #include <iostream>
10 #include <fstream>
11 #include <stdlib.h>
12 #include <stdio.h>
13
14 using namespace std;
15
16 #include <AliJConst.h>
17
18 class TClonesArray;
19 class AliJBaseTrack;
20 class AliJPhoton;
21 class AliJTrack;
22 class AliJCard;
23 class AliJCorrelations;
24 class AliJHistos;
25 class TH1D;
26
27 #define   MAXNOEVENT 1000    // Maximum no of events in pools (400 used for QM anal.) 
28
29 class AliJEventPool {
30
31     public:
32       AliJEventPool(AliJCard *cardin, AliJHistos *histosin, AliJCorrelations *coin, particleType particle );
33       virtual ~AliJEventPool( );
34       AliJEventPool(const AliJEventPool& obj);
35       AliJEventPool& operator=(const AliJEventPool& obj);
36   
37
38     public:
39         void Mix( TClonesArray *triggList, 
40                 corrFillType cFTyp, 
41                 float cent, float Z, float thisMult, int iev);
42
43        //void MixRNDM( AliJEventPool *cross, void (AliJCorrelations::*fillHisto)(fillType, int, AliJBaseTrack*, AliJBaseTrack*) );
44
45         void AcceptList(TClonesArray *inList, float cent, float Z, float inMult, int iev);
46
47         void Mysample(TH1D *fromh, TH1D *toh );
48         void PrintOut(){for(int i=0;i<kMaxNoCentrBin;i++)
49             cout<<"c: "<<i<<" mixed "<<fnoMix[i]<<" accepted "<<fnoMixCut[i]<<" "<<(fnoMix[i]>0?fnoMixCut[i]*1.0/fnoMix[i]:0)<< endl;}
50
51     protected:
52
53         int   fevent[kMaxNoCentrBin][MAXNOEVENT];  // comment me
54         float fZVertex[kMaxNoCentrBin][MAXNOEVENT];  // comment me
55         float fcentrality[kMaxNoCentrBin][MAXNOEVENT];  // comment me
56         float fmult[kMaxNoCentrBin][MAXNOEVENT];  // comment me
57         long  flastAccepted[kMaxNoCentrBin];  // comment me
58         long fwhereToStore[kMaxNoCentrBin];   // comment me
59         long fnoMix[kMaxNoCentrBin];  // comment me
60         long fnoMixCut[kMaxNoCentrBin];   // comment me
61
62         TClonesArray   *fLists[kMaxNoCentrBin][MAXNOEVENT]; // mix lists
63         AliJCard  *fcard;  // card
64         AliJCorrelations *fcorrelations; // correlation object
65         AliJHistos *fhistos;  // histos
66         AliJBaseTrack *ftk; // track
67         AliJBaseTrack *ftk1; // track
68         AliJBaseTrack *ftk2; // track
69         particleType fthisPoolType; // pool type
70
71         TClonesArray  *fpoolList;  // pool list
72
73         //int   trials[MAXNOEVENT];
74
75 };
76
77 #endif
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99