]>
Commit | Line | Data |
---|---|---|
76ce4b5b | 1 | //////////////////////////////////////////////////////////////////////////////// |
2 | // // | |
3 | // AliFemtoEventReaderAOD - the reader class for the Alice AOD // | |
4 | // Reads in AOD information and converts it into internal AliFemtoEvent // | |
5 | // Authors: Adam Kisiel kisiel@mps.ohio-state.edu // | |
6 | // // | |
7 | //////////////////////////////////////////////////////////////////////////////// | |
8 | ||
9 | #ifndef ALIFEMTOEVENTREADERAOD_H | |
10 | #define ALIFEMTOEVENTREADERAOD_H | |
11 | #include "AliFemtoEventReader.h" | |
12 | #include "AliFemtoEnumeration.h" | |
13 | ||
14 | #include <string> | |
15 | #include <vector> | |
16 | #include "TTree.h" | |
17 | #include "TChain.h" | |
18 | #include "TBits.h" | |
19 | #include "AliAODEvent.h" | |
20 | #include <list> | |
21 | //#include "AliPWG2AODTrack.h" | |
22 | #include "AliAODMCParticle.h" | |
973a91f8 | 23 | #include "AliFemtoV0.h" |
76ce4b5b | 24 | #include "AliAODpidUtil.h" |
25 | ||
26 | class AliFemtoEvent; | |
27 | class AliFemtoTrack; | |
28 | ||
29 | class AliFemtoEventReaderAOD : public AliFemtoEventReader | |
30 | { | |
31 | public: | |
32 | AliFemtoEventReaderAOD(); | |
33 | AliFemtoEventReaderAOD(const AliFemtoEventReaderAOD &aReader); | |
34 | virtual ~AliFemtoEventReaderAOD(); | |
35 | ||
36 | AliFemtoEventReaderAOD& operator=(const AliFemtoEventReaderAOD& aReader); | |
37 | ||
38 | virtual AliFemtoEvent* ReturnHbtEvent(); | |
39 | AliFemtoString Report(); | |
ce7b3d98 | 40 | void SetInputFile(const char* inputfile); |
76ce4b5b | 41 | void SetFilterBit(UInt_t ibit); |
42 | void SetReadMC(unsigned char a); | |
973a91f8 | 43 | void SetReadV0(unsigned char a); |
76ce4b5b | 44 | void SetCentralityPreSelection(double min, double max); |
973a91f8 | 45 | void SetNoCentrality(bool anocent); |
76ce4b5b | 46 | void SetAODpidUtil(AliAODpidUtil *aAODpidUtil); |
ba3c23a4 | 47 | void SetMagneticFieldSign(int s); |
ce7b3d98 | 48 | void GetGlobalPositionAtGlobalRadiiThroughTPC(AliAODTrack *track, Float_t bfield, Float_t globalPositionsAtRadii[9][3]); |
76ce4b5b | 49 | |
50 | protected: | |
51 | virtual void CopyAODtoFemtoEvent(AliFemtoEvent *tEvent); | |
52 | virtual void CopyAODtoFemtoTrack( AliAODTrack *tAodTrack, | |
53 | AliFemtoTrack *tFemtoTrack | |
54 | // AliPWG2AODTrack *tPWG2AODTrack | |
55 | ); | |
973a91f8 | 56 | virtual void CopyAODtoFemtoV0(AliAODv0 *tAODv0, AliFemtoV0 *tFemtoV0); |
76ce4b5b | 57 | virtual void CopyPIDtoFemtoTrack( AliAODTrack *tAodTrack, |
58 | AliFemtoTrack *tFemtoTrack); | |
59 | ||
60 | int fNumberofEvent; // number of Events in AOD file | |
61 | int fCurEvent; // number of current event | |
62 | AliAODEvent* fEvent; // AOD event | |
63 | TBits fAllTrue; // Bit set with all true bits | |
64 | TBits fAllFalse; // Bit set with all false bits | |
65 | UInt_t fFilterBit; // Bitmap bit for AOD filters | |
66 | // TClonesArray* fPWG2AODTracks; // Link to PWG2 specific AOD information (if it exists) | |
67 | ||
68 | unsigned char fReadMC; // Attempt to read the MC information from the AOD | |
973a91f8 | 69 | unsigned char fReadV0; // Read V0 information from the AOD and put it into V0Collection |
76ce4b5b | 70 | unsigned char fUsePreCent; // Use centrality pre-selection to speed up analysis |
71 | double fCentRange[2]; // Centrality pre-selection range | |
973a91f8 | 72 | unsigned char fNoCentrality; // Do not use centrality determination (for pp) |
76ce4b5b | 73 | AliAODpidUtil* fAODpidUtil; |
74 | ||
75 | private: | |
76 | ||
77 | AliAODMCParticle* GetParticleWithLabel(TClonesArray *mcP, Int_t aLabel); | |
78 | ||
79 | string fInputFile; // name of input file with AOD filenames | |
80 | string fFileName; // name of current AOD file | |
81 | TChain* fTree; // AOD tree | |
82 | TFile* fAodFile; // AOD file | |
ba3c23a4 | 83 | int fMagFieldSign; // Magnetic field sign |
76ce4b5b | 84 | |
85 | #ifdef __ROOT__ | |
86 | ClassDef(AliFemtoEventReaderAOD, 11) | |
87 | #endif | |
88 | ||
89 | }; | |
90 | ||
91 | #endif | |
92 | ||
93 |