]>
Commit | Line | Data |
---|---|---|
2f4cac02 | 1 | #ifndef ALIJCORRANTASK_H |
2 | #define ALIJCORRANTASK_H | |
3 | ||
4 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
5 | * See cxx source for full Copyright notice */ | |
6 | //______________________________________________________________________________ | |
7 | // Analysis task for high pt particle correlations | |
8 | // author: R.Diaz, J. Rak, D.J. Kim | |
9 | // ALICE Group University of Jyvaskyla | |
10 | // Finland | |
11 | // | |
12 | // Fill the analysis containers for ESD or AOD | |
13 | // Note: Adapted for AliAnalysisTaskSE | |
14 | ////////////////////////////////////////////////////////////////////////////// | |
15 | ||
16 | #include <iostream> | |
17 | #include <fstream> | |
18 | #include <stdlib.h> | |
19 | #include <stdio.h> | |
20 | #include <iomanip> | |
21 | ||
22 | #include <TTree.h> | |
23 | #include <TList.h> | |
24 | #include "AliAnalysisTaskSE.h" | |
25 | #include "AliAnalysisFilter.h" | |
26 | #include "AliMCEvent.h" | |
27 | ||
28 | #include "AliPhJTrackList.h" | |
29 | #include "AliPhJMCTrackList.h" | |
30 | #include "AliPhJPhotonList.h" | |
31 | #include "AliPhJHeaderList.h" | |
32 | #include "AliJCORRANSetup.h" | |
33 | ||
34 | #include "AliJRunHeader.h" | |
35 | #include "JConst.h" | |
36 | ||
37 | //============================================================== | |
38 | ||
39 | using namespace std; | |
40 | ||
41 | const int kMaxDimBuffer = 300;//max length of a line read to a buffe | |
42 | ||
43 | class TH1D; | |
44 | class TH2D; | |
45 | class TNtuple; | |
46 | class AliMCEvent; | |
47 | class AliESDEvent; | |
48 | class AliAODEvent; | |
49 | class AliPHOSGeoUtils; | |
50 | class AliEMCALGeoUtils; | |
51 | class AliJRunHeader; | |
52 | class AliMCEvent; | |
53 | class AliJCORRANSetup; | |
54 | class AliAnalysisFilter; | |
55 | class AliPhJHeaderList; | |
56 | class AliPhJPhotonList; | |
57 | class AliPhJMCTrackList; | |
58 | class AliPhJTrackList; | |
59 | class TList; | |
60 | class TTree; | |
61 | ||
62 | ||
63 | ||
64 | class AliJCORRANTask : public AliAnalysisTaskSE { | |
65 | ||
66 | public: | |
67 | AliJCORRANTask() ; | |
68 | AliJCORRANTask(const char *name, TString inputformat); | |
69 | AliJCORRANTask(const AliJCORRANTask& ap); | |
70 | AliJCORRANTask& operator = (const AliJCORRANTask& ap); | |
71 | virtual ~AliJCORRANTask(); | |
72 | ||
73 | // methods to fill from AliAnalysisTaskSE | |
74 | virtual void UserCreateOutputObjects(); | |
75 | virtual void Init(); | |
76 | virtual void LocalInit() { Init(); } | |
77 | virtual void UserExec(Option_t *option); | |
78 | virtual void Terminate(Option_t * opt = ""); | |
79 | ||
80 | // methods to read data from ESD | |
81 | void ReadESDTracks(const AliESDEvent* esd); | |
82 | void ReadESDCaloClusters(const AliESDEvent* esd); | |
83 | void ReadESDHeader(const AliESDEvent* esd); | |
84 | // methods to read data from AOD | |
85 | void ReadAODTracks(const AliAODEvent* aod); | |
86 | void ReadAODCaloClusters(const AliAODEvent* aod); | |
87 | void ReadAODHeader(const AliAODEvent* aod); | |
88 | void ReadFilter(); | |
89 | //void ReadMCTracks(AliMCEvent* fMC); | |
90 | Int_t GetSuperModuleNumber(bool isemcal, Int_t absId); | |
91 | ||
92 | ||
93 | private: | |
94 | ||
95 | UInt_t ConvertTriggerMask(/*Long64_t alicetriggermask*/);//Converts alice trigger mask to JCorran trigger mask | |
96 | ||
97 | TString fInputFormat; // specify the input data format (ESD or AOD) | |
98 | ||
99 | TString fActiveTriggers[kRangeTriggerTableAlice];//alice table mapping trigger bit to trigger name | |
100 | ||
101 | TString fTriggerTableJCorran[kRangeTriggerTableJCorran];//JCorran trigger table TBit 0 =MinBias | |
102 | ||
103 | // jcorran output objects | |
104 | TTree* fTree; // output tree | |
105 | AliPhJTrackList* fTrackList; // list of charged track objects | |
106 | //AliPhJMCTrackList* fMCTrackList; // list of charged track objects | |
107 | AliPhJPhotonList* fPhotonList; // list of photons objects | |
108 | AliPhJHeaderList* fHeaderList; // run, event details | |
109 | ||
110 | AliJRunHeader* fAliRunHeader; // run, event details | |
111 | ||
112 | ||
113 | // QA output | |
114 | TList* fQAList; // list to hold all the qa objects | |
115 | TNtuple* fTrackQACuts ; // tree of track quality cuts applied on ESD | |
116 | TNtuple* fTrackKineCuts; // tree of track kinematic cuts applied on ESD | |
117 | ||
118 | AliPHOSGeoUtils * fPHOSGeom; //phos geometry matrix | |
119 | AliEMCALGeoUtils * fEMCALGeom; //emcal geometry matrix | |
120 | ||
121 | ClassDef(AliJCORRANTask, 1); // JCORRAN analysis task | |
122 | }; | |
123 | #endif // AliJCORRANTask_H |