]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGCF/FEMTOSCOPY/Chaoticity/AliChaoticityEventCollection.h
Merge branch 'master' of https://git.cern.ch/reps/AliRoot
[u/mrichter/AliRoot.git] / PWGCF / FEMTOSCOPY / Chaoticity / AliChaoticityEventCollection.h
CommitLineData
cd12341d 1#ifndef ALICHAOTICITYEVENTCOLLECTION
2#define ALICHAOTICITYEVENTCOLLECTION
3
4#include <iostream>
5#include <string>
6#include "TH1.h"
7#include "TH2.h"
8#include "TH3.h"
9#include "TBits.h"
10#include "TObject.h"
11#include "TVector2.h"
12#include "AliESDtrack.h"
13
14using namespace std;
15
16
17class AliChaoticityTrackStruct{// detector tracks
18
19 public:
20 AliChaoticityTrackStruct();
21 virtual ~AliChaoticityTrackStruct();
22 AliChaoticityTrackStruct(const AliChaoticityTrackStruct &obj);
23 AliChaoticityTrackStruct &operator=(const AliChaoticityTrackStruct &obj);
24
25
26 UInt_t fStatus;
27 UInt_t fFiltermap;
28 Int_t fId;
29 Double_t fPhi;
30 Float_t fPt;
31 Float_t fMom;
32 Double_t fP[3];
33 Int_t fCharge;
34 Float_t fEta;
35 Float_t fMass;
36 Float_t fDCAXY;
37 Float_t fDCAZ;
38 Float_t fDCA;
39 Float_t fEaccepted;
40 Short_t fKey;
41 TBits fClusterMap;
42 TBits fSharedMap;
43 Double_t fX[3];
44 Bool_t fTOFhit;
45 Bool_t fElectron;
46 Bool_t fMuon;
47 Bool_t fPion;
48 Bool_t fKaon;
49 Bool_t fProton;
50 Int_t fLabel;// MC
51
52 ClassDef(AliChaoticityTrackStruct, 1);
53};
54
55class AliChaoticityPairStruct{// low Qinv pairs
56
57 public:
58 AliChaoticityPairStruct();
59 virtual ~AliChaoticityPairStruct();
60 AliChaoticityPairStruct(const AliChaoticityPairStruct &obj);
61 AliChaoticityPairStruct &operator=(const AliChaoticityPairStruct &obj);
62
63 Float_t fP1[3];
64 Float_t fP2[3];
65 Float_t fE1;
66 Float_t fE2;
67 Short_t fCharge1;
68 Short_t fCharge2;
69 Int_t fIndex1;
70 Int_t fIndex2;
71 Float_t fQinv;
72 Short_t fKey1;
73 Short_t fKey2;
74 Int_t fLabel1;
75 Int_t fLabel2;
76 Float_t fP1MC[3];
77 Float_t fP2MC[3];
78
79 ClassDef(AliChaoticityPairStruct, 1);
80};
81
82class AliChaoticityNormPairStruct{// Norm Qinv pairs
83
84 public:
85 AliChaoticityNormPairStruct();
86 virtual ~AliChaoticityNormPairStruct();
87 AliChaoticityNormPairStruct(const AliChaoticityNormPairStruct &obj);
88 AliChaoticityNormPairStruct &operator=(const AliChaoticityNormPairStruct &obj);
89
90 Short_t fCharge1;
91 Short_t fCharge2;
92 Int_t fIndex1;
93 Int_t fIndex2;
94 Short_t fKey1;
95 Short_t fKey2;
96
97 ClassDef(AliChaoticityNormPairStruct, 1);
98};
99
100class AliChaoticityMCStruct{// MC info
101
102 public:
103 AliChaoticityMCStruct();
104 virtual ~AliChaoticityMCStruct();
105 AliChaoticityMCStruct(const AliChaoticityMCStruct &obj);
106 AliChaoticityMCStruct &operator=(const AliChaoticityMCStruct &obj);
107
108 Float_t fPx;
109 Float_t fPy;
110 Float_t fPz;
111 Float_t fPtot;
112
113 ClassDef(AliChaoticityMCStruct, 1);
114};
115
116class AliChaoticityEventStruct{// like particle_event
117
118 public:
119 AliChaoticityEventStruct();
120 virtual ~AliChaoticityEventStruct();
121 AliChaoticityEventStruct(const AliChaoticityEventStruct &obj);
122 AliChaoticityEventStruct &operator=(const AliChaoticityEventStruct &obj);
123
124
125 Int_t fFillStatus;
126 Int_t fNtracks;
127 Int_t fNpairsSE;
128 Int_t fNpairsME;
129 Int_t fMCarraySize;
130 AliChaoticityTrackStruct *fTracks;
131 AliChaoticityPairStruct *fPairsSE;
132 AliChaoticityPairStruct *fPairsME;
133 AliChaoticityMCStruct *fMCtracks;
134
135 ClassDef(AliChaoticityEventStruct, 1);
136};
137
138
139
140class AliChaoticityEventCollection {
141
142 public:
143 AliChaoticityEventCollection();
6e805184 144 AliChaoticityEventCollection(Short_t,Int_t,Int_t,Int_t,Bool_t);
cd12341d 145 virtual ~AliChaoticityEventCollection();
146 AliChaoticityEventCollection(const AliChaoticityEventCollection &obj);
147 AliChaoticityEventCollection &operator=(const AliChaoticityEventCollection &obj);
148
149 void FIFOShift();
150 void SetBuffSize(Short_t a){fFIFO = a;}
151
152 Short_t fFIFO; //Size of the Event Storage buffer.
153 Int_t fLimit; //Max number of tracks
154 Int_t fPairLimit; //Max number of lowQ pairs
6e805184 155 Int_t fMCLimit; //Max number of MC tracks
156 AliChaoticityEventStruct *fEvtStr;
cd12341d 157
158 ClassDef(AliChaoticityEventCollection, 1);
159};
160#endif