]>
Commit | Line | Data |
---|---|---|
3bb122c7 | 1 | #ifndef ALIFMDANALYSISTASKSHARING_H |
2 | #define ALIFMDANALYSISTASKSHARING_H | |
3 | ||
4 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
5 | * See cxx source for full Copyright notice */ | |
6 | ||
7 | #include "AliAnalysisTask.h" | |
8 | #include "TH1F.h" | |
9 | #include "TObjString.h" | |
10 | #include "AliESDFMD.h" | |
11 | #include "TTree.h" | |
8dc7c4c2 | 12 | #include "AliESDEvent.h" |
0a2f2742 | 13 | #include "AliFMDFloatMap.h" |
3bb122c7 | 14 | class TChain; |
15 | class AliAODEvent; | |
7c3e5162 | 16 | class AliESDVertex; |
3bb122c7 | 17 | |
cfe59e45 | 18 | /** |
19 | * Do the sharing correction. | |
20 | * @ingroup FMD_ana | |
21 | * | |
22 | * | |
23 | */ | |
3bb122c7 | 24 | class AliFMDAnalysisTaskSharing : public AliAnalysisTask |
25 | { | |
26 | public: | |
27 | AliFMDAnalysisTaskSharing(); | |
7c3e5162 | 28 | AliFMDAnalysisTaskSharing(const char* name, Bool_t SE = kTRUE); |
3bb122c7 | 29 | virtual ~AliFMDAnalysisTaskSharing() {;} |
c78bc12b | 30 | AliFMDAnalysisTaskSharing(const AliFMDAnalysisTaskSharing& o) : AliAnalysisTask(), |
31 | fDebug(o.fDebug), | |
32 | fESD(o.fESD), | |
7c3e5162 | 33 | // fOutputESD(), |
c78bc12b | 34 | foutputESDFMD(o.foutputESDFMD), |
bb8a464f | 35 | fEnergy(o.fEnergy), |
36 | fNstrips(o.fNstrips), | |
c78bc12b | 37 | fSharedThis(o.fSharedThis), |
7c3e5162 | 38 | fSharedPrev(o.fSharedPrev), |
39 | fDiagList(), | |
40 | fStandalone(o.fStandalone), | |
bb8a464f | 41 | fEsdVertex(o.fEsdVertex), |
42 | fStatus(o.fStatus) {} | |
8dc823cc | 43 | AliFMDAnalysisTaskSharing& operator=(const AliFMDAnalysisTaskSharing&) { return *this; } |
44 | ||
3bb122c7 | 45 | // Implementation of interface methods |
46 | virtual void ConnectInputData(Option_t *option = ""); | |
47 | virtual void CreateOutputObjects(); | |
48 | virtual void Init() {} | |
49 | virtual void LocalInit() {Init();} | |
bb8a464f | 50 | virtual void Exec(Option_t */*option*/); |
c78bc12b | 51 | virtual void Terminate(Option_t* /* option*/) {} |
3bb122c7 | 52 | virtual void SetDebugLevel(Int_t level) {fDebug = level;} |
bb8a464f | 53 | Float_t GetMultiplicityOfStrip(Float_t mult, Float_t eta, Float_t Eprev, Float_t Enext, UShort_t det, Char_t ring, UShort_t sec, UShort_t strip); |
b64db9b1 | 54 | // void GetVertex(Double_t* vertexXYZ) ; |
7c3e5162 | 55 | void SetFMDData(AliESDFMD* fmd) {foutputESDFMD = fmd;} |
a38d1871 | 56 | void SetOutputList(TList* outlist) {fDiagList = outlist;} |
7c3e5162 | 57 | void SetVertex(AliESDVertex* vertex) {fEsdVertex = vertex;} |
58 | void SetInputESD(AliESDEvent* esd) {fESD = esd;} | |
bb8a464f | 59 | Bool_t GetEventStatus() {return fStatus;} |
3bb122c7 | 60 | private: |
bb8a464f | 61 | Float_t Eta2Theta(Float_t eta); |
62 | Double_t EtaFromStrip(UShort_t det, Char_t ring, UShort_t sector, UShort_t strip, Double_t zvtx); | |
b64db9b1 | 63 | void ProcessPrimary(); |
64 | ||
3bb122c7 | 65 | Int_t fDebug; // Debug flag |
66 | AliESDEvent* fESD; //! ESD | |
7c3e5162 | 67 | // AliESDEvent fOutputESD; |
68 | AliESDFMD* foutputESDFMD; | |
bb8a464f | 69 | Float_t fEnergy; |
70 | Int_t fNstrips; | |
c78bc12b | 71 | Bool_t fSharedThis; |
8dc823cc | 72 | Bool_t fSharedPrev; |
a38d1871 | 73 | TList* fDiagList; |
7c3e5162 | 74 | Bool_t fStandalone; |
75 | AliESDVertex* fEsdVertex; | |
bb8a464f | 76 | Bool_t fStatus; |
0a2f2742 | 77 | AliFMDFloatMap fLastTrackByStrip; |
78 | ||
3bb122c7 | 79 | ClassDef(AliFMDAnalysisTaskSharing, 0); // Analysis task for FMD analysis |
80 | }; | |
81 | ||
82 | #endif | |
cfe59e45 | 83 | // Local Variables: |
84 | // mode: C++ | |
85 | // End Variables; |