]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG4/AliAnalysisTaskGammaConversion.h
Explicit cast (solarisCC5)
[u/mrichter/AliRoot.git] / PWG4 / AliAnalysisTaskGammaConversion.h
CommitLineData
80977d68 1#ifndef ALIANALYSISTASKGAMMACONVERSION_H
2#define ALIANALYSISTASKGAMMACONVERSION_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 "AliAnalysisTaskSE.h"
8#include "AliV0Reader.h"
9//#include "TH2F.h"
10//#include "TH1F.h"
11#include "AliGammaConversionHistograms.h"
12#include "AliESDv0.h"
13#include <vector>
14//#include "TLorentzVector.h"
15#include "AliKFParticle.h"
16
17//class AliAnaGamma;
18class AliESDInputHandler;
19class AliESDEvent;
20class AliAODEvent;
21class TList;
22class AliStack;
23
24class AliAnalysisTaskGammaConversion : public AliAnalysisTaskSE
25{
26 public:
27 AliAnalysisTaskGammaConversion();
28 AliAnalysisTaskGammaConversion(const char* name);
29 virtual ~AliAnalysisTaskGammaConversion() ;// virtual destructor
30
31 // Implementation of interface methods
32 virtual void UserCreateOutputObjects();
33 virtual void Init();
34 virtual void LocalInit() {Init();}
35 virtual void Exec(Option_t *option);
36 virtual void Terminate(Option_t *option);
37 virtual void ConnectInputData(Option_t *);
38
39 void ProcessMCData();
40 void ProcessV0s();
41 void ProcessGammasForNeutralMesonAnalysis();
42 void SetHistograms(AliGammaConversionHistograms *histograms){fHistograms=histograms;}
43 void SetDoMCTruth(Bool_t flag){fDoMCTruth=flag;}
44 void SetElectronMass(Double_t electronMass){fElectronMass = electronMass;}
45 void SetGammaMass(Double_t gammaMass){fGammaMass = gammaMass;}
46 void SetGammaWidth(Double_t gammaWidth){fGammaWidth = gammaWidth;}
47 void SetPi0Mass(Double_t pi0Mass){fPi0Mass = pi0Mass;}
48 void SetPi0Width(Double_t pi0Width){fPi0Width = pi0Width;}
49 void SetEtaMass(Double_t etaMass){fEtaMass = etaMass;}
50 void SetEtaWidth(Double_t etaWidth){fEtaWidth = etaWidth;}
51 void SetV0Reader(AliV0Reader* reader){fV0Reader=reader;}
52 void SetCalculateBackground(Bool_t bg){fCalculateBackground=bg;}
53 void CalculateBackground();
54 Double_t GetMCOpeningAngle(TParticle* daughter0,TParticle* daughter1);
55
56 private:
57 AliAnalysisTaskGammaConversion(const AliAnalysisTaskGammaConversion&); // Not implemented
58 AliAnalysisTaskGammaConversion& operator=(const AliAnalysisTaskGammaConversion&); // Not implemented
59
60 AliV0Reader* fV0Reader;
61
62 AliStack * fStack;
63
64 TList * fOutputContainer ; // Histogram container
65
66 AliGammaConversionHistograms *fHistograms;
67
68 Bool_t fDoMCTruth;
69
70 vector<TParticle*> fMCAllGammas;
71 vector<TParticle*> fMCPi0s;
72 vector<TParticle*> fMCEtas;
73 vector<TParticle*> fMCGammaChi_c;
74
75 vector<AliKFParticle> fKFReconstructedGammas;
76
77 //mass defines
78 Double_t fElectronMass;
79 Double_t fGammaMass;
80 Double_t fPi0Mass;
81 Double_t fEtaMass;
82
83 // width defines
84 Double_t fGammaWidth;
85 Double_t fPi0Width;
86 Double_t fEtaWidth;
87 Bool_t fCalculateBackground;
88
89
90 ClassDef(AliAnalysisTaskGammaConversion, 0); // Analysis task for gamma conversions
91};
92
93#endif //ALIANALYSISTASKGAMMA_H