]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG/muon/AliCFMuonResUpsilon.h
Fix Coverity 24835
[u/mrichter/AliRoot.git] / PWG / muon / AliCFMuonResUpsilon.h
CommitLineData
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
29class AliCFContainer;
30class AliCFManager;
31
32class 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