]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGCF/FEMTOSCOPY/K0Analysis/AliFemtoK0EventCollection.h
update to include FSI corrections for peripheral bins
[u/mrichter/AliRoot.git] / PWGCF / FEMTOSCOPY / K0Analysis / AliFemtoK0EventCollection.h
1 #ifndef ALIFEMTOK0EVENTCOLLECTION_H
2 #define ALIFEMTOK0EVENTCOLLECTION_H
3 //
4 //Class AliFemtoK0Particle, AliFemtoK0Event, AliFemtoK0EventCollection
5 //
6 //AliFemtoK0Particle, AliFemtoK0Event, AliFemtoK0EventCollection
7 //authors: 
8 //        Dhevan Gangadharan (dhevan.raja.gangadharan@cern.ch)
9 //        Matthew Steinpreis (matthew.steinpreis@cern.ch)
10 //
11
12
13 #include <iostream>
14 #include <string>
15 #include "TH1.h"
16 #include "TH2.h"
17 #include "TH3.h"
18 #include "TBits.h"
19 #include "TObject.h"
20 #include "TVector2.h"
21 #include "AliESDtrack.h"
22
23 using namespace std;
24
25 class AliFemtoK0Particle  // Reconstructed K0s parameters needed for correlations
26 {
27  public:
28   
29   AliFemtoK0Particle();
30   virtual ~AliFemtoK0Particle();
31   AliFemtoK0Particle(const AliFemtoK0Particle &obj);
32   AliFemtoK0Particle &operator=(const AliFemtoK0Particle &obj);
33  
34   double fMomentum[3];  //v0 momentum
35   double fPt;           //v0 transverse momentum
36   double fMass;         //v0 reconstructed mass
37   short fDaughterID1;   //Daughter (pion) AODtrack ID
38   short fDaughterID2;   //Daughter (pion) AODtrack ID
39   bool fK0;             //if v0 has "good" K0 mass
40
41   //for separation
42   double fXPos[3];      //Positive daughter position
43   double fXNeg[3];      //Negative daughter position
44   double fPPos[3];      //Positive daughter momentum
45   double fPNeg[3];      //negative daughter momentum
46   double fCovPos[21];   //positive daughter coverity matrix
47   double fCovNeg[21];   //negative daughter coverity matrix
48
49   ClassDef(AliFemtoK0Particle, 1);
50 };
51
52 class AliFemtoK0Event // like particle_event
53 {
54  public:
55
56   AliFemtoK0Event();
57   virtual ~AliFemtoK0Event();
58   AliFemtoK0Event(const AliFemtoK0Event &obj);
59   AliFemtoK0Event &operator=(const AliFemtoK0Event &obj);
60   
61   int fFillStatus;     //tells AliFemtoK0EventCollection to add event
62   int fNumV0s;         //number of collected v0s in event
63   AliFemtoK0Particle *fK0Particle; //class for K0 parameters needed for CF
64
65   ClassDef(AliFemtoK0Event, 1);
66 };
67
68 class AliFemtoK0EventCollection 
69 {
70   public:
71     AliFemtoK0EventCollection();
72     AliFemtoK0EventCollection(short,int);
73     virtual ~AliFemtoK0EventCollection();
74     AliFemtoK0EventCollection(const AliFemtoK0EventCollection &obj);
75     AliFemtoK0EventCollection &operator=(const AliFemtoK0EventCollection &obj);
76
77     short fBufferSize; //Size of the Event Storage buffer
78     int fLimit;        //Max number of tracks
79     AliFemtoK0Event *fEvt; //event class
80
81     void FIFOShift();  //remove/add event (first in, first out)
82     void SetBufferSize(short a){fBufferSize = a;} //set size of event buffer
83  
84     ClassDef(AliFemtoK0EventCollection, 1);
85 };
86 #endif
87