]>
Commit | Line | Data |
---|---|---|
014044ba | 1 | /************************************************************************** |
2 | * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
3 | * * | |
4 | * Author: The ALICE Off-line Project. * | |
5 | * Contributors are mentioned in the code where appropriate. * | |
6 | * * | |
7 | * Permission to use, copy, modify and distribute this software and its * | |
8 | * documentation strictly for non-commercial purposes is hereby granted * | |
9 | * without fee, provided that the above copyright notice appears in all * | |
10 | * copies and that both the copyright notice and this permission notice * | |
11 | * appear in the supporting documentation. The authors make no claims * | |
12 | * about the suitability of this software for any purpose. It is * | |
13 | * provided "as is" without express or implied warranty. * | |
14 | **************************************************************************/ | |
15 | ||
16 | //----------------------------------------------------------------------- | |
17 | // Author : R. Vernet, Consorzio Cometa - Catania (it) | |
18 | //----------------------------------------------------------------------- | |
19 | // Modification done by X. Lopez - LPC Clermont (fr) | |
20 | //----------------------------------------------------------------------- | |
21 | // Modification done by S. Ahn - LPC Clermont (fr), Konkuk University (kr) | |
22 | //----------------------------------------------------------------------- | |
23 | ||
24 | #ifndef ALICFMUONRESUPSILON_H | |
25 | #define ALICFMUONRESUPSILON_H | |
26 | ||
27 | #include "AliAnalysisTaskSE.h" | |
28 | ||
29 | class AliCFContainer; | |
30 | class AliCFManager; | |
31 | ||
32 | class AliCFMuonResUpsilon : public AliAnalysisTaskSE { | |
33 | public: | |
34 | ||
35 | AliCFMuonResUpsilon(); | |
36 | AliCFMuonResUpsilon(const Char_t* name); | |
37 | AliCFMuonResUpsilon& operator= (const AliCFMuonResUpsilon& c); | |
38 | AliCFMuonResUpsilon(const AliCFMuonResUpsilon& c); | |
39 | virtual ~AliCFMuonResUpsilon(); | |
40 | ||
41 | // ANALYSIS FRAMEWORK STUFF to loop on data and fill output objects | |
42 | void UserExec(Option_t *option); | |
43 | void Terminate(Option_t *); | |
44 | void UserCreateOutputObjects(); | |
45 | ||
46 | // CORRECTION FRAMEWORK RELATED FUNCTIONS | |
47 | void SetCFManager(AliCFManager* const io) {fCFManager = io;} // global correction manager | |
48 | AliCFManager * GetCFManager() const {return fCFManager;} // get corr manager | |
49 | void SetQAList(TList* const list) {fQAHistList = list;} | |
50 | ||
51 | // Setters | |
52 | Bool_t IsReadAODData() const {return fReadAODData;} | |
53 | void SetReadAODData(Bool_t flag=kTRUE) {fReadAODData=flag;} | |
54 | void SetReadMCInfo(Bool_t flag=kTRUE) {fReadMCInfo=flag;} | |
55 | void SetRequirePdgCode(const Int_t PDG) {fPDG=PDG;} | |
56 | void SetPtRange(const Double_t ptmin, const Double_t ptmax) {fPtMin=ptmin; fPtMax=ptmax; } | |
57 | void SetRapidityRange(const Double_t ymin, const Double_t ymax) {fYMin=ymin; fYMax=ymax; } | |
58 | void SetTrigClassMuonName(TString name = "CMUS") {fTrigClassMuon=name;} | |
59 | void SetTrigClassInteracName(TString name = "CINT") {fTrigClassInteraction=name;} | |
60 | void SetTrigClassSideName(TString name[3]) {for(Int_t i=0;i<3;i++) fTrigClassSide[i]=name[i];} | |
61 | ||
62 | protected: | |
63 | ||
64 | Bool_t fReadAODData; // flag for AOD/ESD input files | |
6579f87c | 65 | Bool_t fReadMCInfo; // flag for reading MC info (ESD->Kinematics, AOD->MCbranch) |
66 | AliCFManager *fCFManager; // pointer to the CF manager | |
67 | TH1D *fnevts; // TH1 for event statistics | |
68 | Bool_t fIsPhysSelMB; // flag for the physics selection : MB | |
69 | Bool_t fIsPhysSelMUON; // flag for the physics selection : MUON | |
70 | TList *fQAHistList; // list of QA histograms | |
71 | Int_t fPDG; // PDG code of resonance | |
72 | Double_t fPtMin; // min Pt of resonance | |
73 | Double_t fPtMax; // max Pt of resonance | |
74 | Double_t fYMin; // min rapidity of resonance | |
75 | Double_t fYMax; // max rapidity of resonance | |
014044ba | 76 | |
77 | // CUTS ON THE FIRED TRIGGER CLASS | |
78 | TString fTrigClassMuon ; // name of the muon trigger class (CMU by default) | |
79 | TString fTrigClassInteraction ; // name of the interaction trigger class (CINT by default) | |
80 | TString fTrigClassSide[4] ; // name of the muon trigger classes containing the side | |
81 | Bool_t fDistinguishTrigClass ; // flag to activate the cut on the fired trigger class | |
82 | ||
83 | ||
84 | Double_t Imass(Float_t e1, Float_t px1, Float_t py1, Float_t pz1, Float_t e2, Float_t px2, Float_t py2, Float_t p2) const; | |
85 | Double_t Rap(Float_t e, Float_t pz) const; | |
86 | ||
87 | Double_t CostCS(Double_t px1, Double_t py1, Double_t pz1, Double_t e1, Double_t charge1, | |
88 | Double_t px2, Double_t py2, Double_t pz2, Double_t e2, Double_t energy); | |
89 | Double_t CostHE(Double_t px1, Double_t py1, Double_t pz1, Double_t e1, Double_t charge1, | |
90 | Double_t px2, Double_t py2, Double_t pz2, Double_t e2); | |
91 | Double_t PhiCS(Double_t px1, Double_t py1, Double_t pz1, Double_t e1, Double_t charge1, | |
92 | Double_t px2, Double_t py2, Double_t pz2, Double_t e2, Double_t energy); | |
93 | Double_t PhiHE(Double_t px1, Double_t py1, Double_t pz1, Double_t e1, Double_t charge1, | |
94 | Double_t px2, Double_t py2, Double_t pz2, Double_t e2, Double_t energy); | |
95 | ||
96 | ClassDef(AliCFMuonResUpsilon,1); | |
97 | }; | |
98 | ||
99 | #endif |