]>
Commit | Line | Data |
---|---|---|
d0e92d9a | 1 | /////////////////////////////////////////////////////////////////////////// |
2 | // // | |
3 | // AliFemtoEvent: hold the information specific to the event and a // | |
4 | // track list // | |
5 | // AliFemtoEvent is the "transient microDST" Objects of this class are // | |
6 | // generated from the input data by a Reader, and then presented to // | |
7 | // the Cuts of the various active Analyses. // | |
8 | // // | |
9 | /////////////////////////////////////////////////////////////////////////// | |
10 | ||
11 | #ifndef ALIFEMTOEVENT_H | |
12 | #define ALIFEMTOEVENT_H | |
13 | ||
14 | #include "AliFemtoTypes.h" | |
15 | #include "AliFemtoTrackCollection.h" | |
16 | #include "AliFemtoV0Collection.h" | |
17 | #include "AliFemtoXiCollection.h" | |
18 | #include "AliFemtoKinkCollection.h" | |
19 | ||
20 | class AliFemtoTrackCut; | |
21 | class AliFemtoV0Cut; | |
22 | class AliFemtoXiCut; | |
23 | class AliFemtoKinkCut; | |
9702957b | 24 | class AliEventplane; |
d0e92d9a | 25 | |
26 | #ifdef __ROOT__ | |
d0e92d9a | 27 | // the following encapsulation by malisa 21apr2006 |
28 | #ifndef __NO_STAR_DEPENDENCE_ALLOWED__ | |
29 | class StMuDst; | |
30 | #endif | |
d0e92d9a | 31 | #endif |
32 | ||
33 | class AliFemtoEvent{ | |
34 | public: | |
35 | AliFemtoEvent(); | |
36 | #ifdef __ROOT__ | |
37 | #ifndef __NO_STAR_DEPENDENCE_ALLOWED__ | |
38 | // | |
39 | #endif | |
40 | #endif | |
9702957b | 41 | |
ea77036b | 42 | AliFemtoEvent(const AliFemtoEvent& ev, AliFemtoTrackCut* tCut=0, AliFemtoV0Cut* vCut=0, AliFemtoXiCut* xCut=0, AliFemtoKinkCut* kCut=0); // copy constructor with track and v0 cuts |
43 | AliFemtoEvent(const AliFemtoEvent& ev); // copy constructor | |
d0e92d9a | 44 | ~AliFemtoEvent(); |
45 | AliFemtoEvent& operator=(const AliFemtoEvent& aEvent); | |
46 | ||
47 | unsigned short EventNumber() const; | |
48 | int RunNumber() const; | |
49 | unsigned short NumberOfTracks() const; | |
50 | AliFemtoThreeVector PrimVertPos() const; | |
63a5982a | 51 | const double* PrimVertCov() const; |
d0e92d9a | 52 | AliFemtoV0Collection* V0Collection() const; |
53 | AliFemtoXiCollection* XiCollection() const; | |
54 | AliFemtoKinkCollection* KinkCollection() const; | |
55 | AliFemtoTrackCollection* TrackCollection() const; | |
56 | double MagneticField() const; | |
73695088 | 57 | bool IsCollisionCandidate() const; |
d0e92d9a | 58 | |
59 | //functions for alice variables | |
60 | float ZDCN1Energy() const; | |
61 | float ZDCP1Energy() const; | |
62 | float ZDCN2Energy() const; | |
63 | float ZDCP2Energy() const; | |
64 | float ZDCEMEnergy() const; | |
65 | unsigned int ZDCParticipants() const; | |
73c932f8 | 66 | |
d0e92d9a | 67 | unsigned long int TriggerMask() const; |
68 | unsigned char TriggerCluster() const; | |
683877d2 | 69 | |
70 | float ReactionPlaneAngle() const; | |
9702957b | 71 | AliEventplane* EP() const; |
d0e92d9a | 72 | |
73 | void SetEventNumber(const unsigned short& s); | |
74 | void SetRunNumber(const int& i); | |
75 | void SetNumberOfTracks(const unsigned short& s); | |
03decc29 | 76 | void SetNormalizedMult(const int& i); |
73c932f8 | 77 | void SetMultiplicityEstimateITSTPC(const unsigned short &s); |
78 | void SetMultiplicityEstimateTracklets(const unsigned short &s); | |
79 | void SetMultiplicityEstimateITSPure(const unsigned short &s); | |
fe77f653 | 80 | void SetCentralityV0(const float &c); |
81 | void SetCentralityFMD(const float &c); | |
82 | void SetCentralitySPD1(const float &c); | |
83 | void SetCentralityTrk(const float &c); | |
e2b7a66d | 84 | void SetSPDMult(const int& i); |
d0e92d9a | 85 | void SetPrimVertPos(const AliFemtoThreeVector& v); |
63a5982a | 86 | void SetPrimVertCov(const double* v); |
d0e92d9a | 87 | void SetMagneticField(const double& x); |
73695088 | 88 | void SetIsCollisionCandidate(const bool& is); |
89 | ||
d0e92d9a | 90 | //functions for alice variables |
91 | void SetZDCN1Energy(const float& x); | |
92 | void SetZDCP1Energy(const float& x); | |
93 | void SetZDCN2Energy(const float& x); | |
94 | void SetZDCP2Energy(const float& x); | |
95 | void SetZDCEMEnergy(const float& x); | |
96 | void SetZDCParticipants(const unsigned int& i); | |
97 | ||
98 | void SetTriggerMask(const unsigned long int& i); | |
99 | void SetTriggerCluster(const unsigned char& c); | |
683877d2 | 100 | |
101 | void SetReactionPlaneAngle(const float& a); | |
9702957b | 102 | void SetEP(AliEventplane* ep); |
d0e92d9a | 103 | |
fe77f653 | 104 | int UncorrectedNumberOfNegativePrimaries() const; |
105 | int UncorrectedNumberOfPrimaries() const; | |
106 | int SPDMultiplicity() const; | |
d0e92d9a | 107 | |
73c932f8 | 108 | unsigned short MultiplicityEstimateITSTPC() const; |
109 | unsigned short MultiplicityEstimateTracklets() const; | |
110 | unsigned short MultiplicityEstimateITSPure() const; | |
111 | ||
fe77f653 | 112 | float CentralityV0() const; |
113 | float CentralityFMD() const; | |
114 | float CentralitySPD1() const; | |
115 | float CentralityTrk() const; | |
116 | ||
d0e92d9a | 117 | private: |
118 | unsigned short fEventNumber; // Event number in file | |
119 | unsigned short fRunNumber; // run number the event belong to | |
120 | unsigned short fNumberOfTracks; // total number of TPC tracks | |
03decc29 | 121 | int fNormalizedMult; // normalized multiplicity |
e2b7a66d | 122 | int fSPDMult; // Multiplicity of SPD tracklets |
73c932f8 | 123 | unsigned short fEstimateITSTPC; // Official multiplicity estimate ITS+TPC |
124 | unsigned short fEstimateTracklets; // Official multiplicity estimate Tracklets | |
125 | unsigned short fEstimateITSPure; // Official multiplicity estimate ITS SA | |
fe77f653 | 126 | float fCentralityV0; // Official centrality from V0 |
127 | float fCentralityFMD; // Official centrality from FMD | |
128 | float fCentralitySPD1; // Official centrality from SPD layer 1 | |
129 | float fCentralityTrk; // Official centrality from tracks | |
d0e92d9a | 130 | double fMagneticField; // magnetic field in Z direction |
73695088 | 131 | bool fIsCollisionCandidate; // is collision candidate |
132 | ||
d0e92d9a | 133 | AliFemtoThreeVector fPrimVertPos; // primary vertex position |
63a5982a | 134 | double fPrimVertCov[6]; // primary vertex covariances |
d0e92d9a | 135 | AliFemtoTrackCollection* fTrackCollection; // collection of tracks |
136 | AliFemtoV0Collection* fV0Collection; // collection of V0s | |
137 | AliFemtoXiCollection* fXiCollection; // collection of Xis | |
138 | AliFemtoKinkCollection* fKinkCollection; // collection of kinks | |
139 | ||
140 | //for alice changed by Marek Chojnacki | |
141 | float fZDCN1Energy; // reconstructed energy in the neutron ZDC | |
142 | float fZDCP1Energy; // reconstructed energy in the proton ZDC | |
143 | float fZDCN2Energy; // reconstructed energy in the neutron ZDC | |
144 | float fZDCP2Energy; // reconstructed energy in the proton ZDC | |
145 | float fZDCEMEnergy; // reconstructed energy in the electromagnetic ZDC | |
146 | unsigned int fZDCParticipants; // number of participants estimated by the ZDC | |
147 | ||
148 | unsigned long int fTriggerMask; // Trigger Type (mask) | |
149 | unsigned char fTriggerCluster; // Trigger cluster (mask) | |
683877d2 | 150 | |
151 | float fReactionPlaneAngle; // reconstructed reaction plane angle | |
9702957b | 152 | AliEventplane* fEP; // pointer to full event plane information |
d0e92d9a | 153 | }; |
154 | ||
155 | ||
156 | ||
157 | #endif |