]>
Commit | Line | Data |
---|---|---|
bdcfac30 | 1 | #ifndef ALIANAGAMMA_H |
2 | #define ALIANAGAMMA_H | |
3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
4 | * See cxx source for full Copyright notice */ | |
5 | /* $Id$ */ | |
6 | ||
7 | /* History of cvs commits: | |
8 | * | |
9 | * $Log$ | |
10 | * Revision 1.1.2.1 2007/07/26 10:32:09 schutz | |
11 | * new analysis classes in the the new analysis framework | |
12 | * | |
13 | * | |
14 | */ | |
15 | ||
16 | //_________________________________________________________________________ | |
17 | // Base class for prompt gamma and correlation analysis | |
18 | //*-- Author: Gustavo Conesa (INFN-LNF) | |
19 | ||
20 | // --- ROOT system --- | |
21 | #include <TParticle.h> | |
22 | #include <TList.h> | |
23 | #include <TClonesArray.h> | |
24 | #include <TH2F.h> | |
25 | #include<TObject.h> | |
26 | #include <TTree.h> | |
27 | #include <AliLog.h> | |
28 | ||
29 | class AliGammaReader ; | |
30 | class AliAnaGammaDirect ; | |
31 | class AliAnaGammaCorrelation ; | |
32 | class AliAnaGammaJetLeadCone ; | |
33 | class AliNeutralMesonSelection ; | |
34 | ||
35 | // --- AliRoot | |
36 | class AliAnaGamma : public TObject { | |
37 | ||
38 | public: | |
39 | ||
40 | AliAnaGamma() ; // default ctor | |
41 | AliAnaGamma(const AliAnaGamma & g) ; // cpy ctor | |
42 | AliAnaGamma & operator = (const AliAnaGamma & g) ;//cpy assignment | |
43 | virtual ~AliAnaGamma() ; //virtual dtor | |
44 | ||
45 | enum anatype_t {kPrompt, kCorrelation}; | |
46 | ||
47 | //General methods | |
48 | TList * GetOutputContainer() const {return fOutputContainer ; } | |
49 | ||
50 | void Init(); | |
51 | void InitParameters(); | |
52 | ||
53 | Int_t GetAnalysisType(){ return fAnaType ; } | |
54 | void SetAnalysisType(Int_t ana ){ fAnaType = ana ; } | |
55 | ||
56 | void Print(const Option_t * opt) const; | |
57 | ||
58 | void MakeAnalysis(TClonesArray * plCalo, TClonesArray * plNe, TClonesArray * plCTS, TClonesArray *plParton) ; | |
59 | Bool_t ProcessEvent(Long64_t entry) ; | |
60 | //TTree * MakeTreeG(TString name) ; | |
61 | ||
62 | TString GetCalorimeter() {return fCalorimeter ; } | |
63 | void SetCalorimeter(TString calo) {if (calo == "PHOS" || calo == "EMCAL") fCalorimeter = calo ; | |
64 | else AliFatal("Wrong calorimeter name") ; } | |
65 | ||
66 | TObject * GetData() {return fData ; } | |
67 | TObject * GetKine() {return fKine ;} | |
68 | void SetData(TObject * data) {fData = data ; } | |
69 | void SetKine(TObject * kine) {fKine = kine ; } | |
70 | ||
71 | AliGammaReader * GetReader() {return fReader ; } | |
72 | void SetReader(AliGammaReader * reader) { fReader = reader ; } | |
73 | ||
74 | void SetGammaDirect(AliAnaGammaDirect * dg) { fGammaDirect = dg ; } | |
75 | void SetGammaCorrelation(AliAnaGammaCorrelation * gc) { fGammaCorrelation = gc ;} | |
76 | void SetNeutralMesonSelection(AliNeutralMesonSelection * nms) { fNeutralMesonSelection = nms ; } | |
77 | ||
78 | private: | |
79 | ||
80 | //General Data members | |
81 | TList *fOutputContainer ; //! output data container | |
82 | Int_t fAnaType; //Analysis type to be done | |
83 | TString fCalorimeter; //Prompt photon detector | |
84 | TObject * fData ; //! ESD | |
85 | TObject * fKine ; //! Stack | |
86 | AliGammaReader * fReader ; //! Pointer to reader | |
87 | AliAnaGammaDirect * fGammaDirect ; //! Pointer to prompt gamma algorithm | |
88 | AliAnaGammaCorrelation * fGammaCorrelation ; //! Pointer to gamma correlation algorithm | |
89 | AliNeutralMesonSelection * fNeutralMesonSelection ; //! Pointer to pair selection for pi0 identification. | |
90 | ||
91 | ClassDef(AliAnaGamma,0) | |
92 | } ; | |
93 | ||
94 | ||
95 | #endif //ALIANAGAMMA_H | |
96 | ||
97 | ||
98 |