]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG4/AliAnaGamma.h
COrrect handling of integers and shorts in case of big-endian platform (Marco)
[u/mrichter/AliRoot.git] / PWG4 / AliAnaGamma.h
CommitLineData
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
29class AliGammaReader ;
30class AliAnaGammaDirect ;
31class AliAnaGammaCorrelation ;
32class AliAnaGammaJetLeadCone ;
33class AliNeutralMesonSelection ;
34
35// --- AliRoot
36class AliAnaGamma : public TObject {
37
38public:
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