]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG3/muon/AliMuonsHFHeader.h
Adding Id to PWG3 classes for better tracking of the coverity defect fixes (Ivana)
[u/mrichter/AliRoot.git] / PWG3 / muon / AliMuonsHFHeader.h
CommitLineData
4292b3b6 1#ifndef ALIMUONSHFHEADER_H
2#define ALIMUONSHFHEADER_H
3
fd1d0cb9 4/* Copyright(c) 1998-2006, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
6
27de2dfb 7/* $Id$ */
8
fd1d0cb9 9//***********************************************************
10// Class AliMuonsHFHeader
11// class used to extract and store info at event level
12// Author: X-M. Zhang, zhang@clermont.in2p3.fr
13// zhangxm@iopp.ccnu.edu.cn
14//***********************************************************
15
4292b3b6 16#include <TNamed.h>
fd1d0cb9 17#include <TString.h>
18
19class TList;
20class AliAODEvent;
21class AliESDEvent;
4292b3b6 22
fd1d0cb9 23class AliMuonInfoStoreRD;
24class AliDimuInfoStoreRD;
25class AliMuonInfoStoreMC;
26class AliDimuInfoStoreMC;
4292b3b6 27
28class AliMuonsHFHeader : public TNamed {
29 public :
30
31 AliMuonsHFHeader();
fd1d0cb9 32 AliMuonsHFHeader(const AliMuonsHFHeader &src);
33 AliMuonsHFHeader& operator=(const AliMuonsHFHeader &src);
4292b3b6 34 ~AliMuonsHFHeader();
35
1195bb6f 36 void GetXYZ(Double_t *vtx) const { for (Int_t i=3; i--;) vtx[i]=fVtx[i]; }
37 Double_t Vx() const { return fVtx[0]; }
38 Double_t Vy() const { return fVtx[1]; }
39 Double_t Vz() const { return fVtx[2]; }
40 Double_t Vt() const { return TMath::Sqrt(fVtx[0]*fVtx[0] + fVtx[1]*fVtx[1]); }
41 Int_t VtxContrsN() const { return fVtxContrsN; }
42 TString FiredTriggerClass() const { return fFiredTriggerClass; }
9bcac085 43 Float_t Centrality() const { return fCentrality; }
44 UInt_t SelectionMask() const { return fSelMask; }
45 Bool_t IsMB() const { return fIsMB; }
46 Bool_t IsMU() const { return fIsMU; }
47 Bool_t IsSelected();
1195bb6f 48
9bcac085 49 void SetSelectionMask(UInt_t mask) { fSelMask=mask; }
50 void SetVertex(AliVVertex *vertex);
b46f66fc 51 void SetFiredTriggerClass(TString trigger);
9bcac085 52 void SetCentrality(Float_t centr) { fCentrality=centr; }
1195bb6f 53
54 void CreateHistograms(TList *list);
55 void FillHistosEvnH(TList *list);
56 void FillHistosMuon(TList *list, AliMuonInfoStoreRD* infoStore, Int_t src=-1);
57 void FillHistosDimu(TList *list, AliDimuInfoStoreRD* infoStore, Int_t src=-1);
58
59 static const char* StdBranchName() { return fgkStdBranchName.Data(); }
60 static void SetAnaMode(Int_t anaMode=0) { fgAnaMode=anaMode; }
61 static void SetIsMC(Int_t isMC=kFALSE) { fgIsMC =isMC; }
9bcac085 62 static void SetSelectionCuts(Double_t cuts[5]) { for (Int_t i=5; i--;) fgCuts[i]=cuts[i]; }
4292b3b6 63
64 private :
65
b46f66fc 66 void CreateHistosEvnH(TList *list, TString sName="");
1195bb6f 67 void CreateHistosMuon(TList *list, TString sName="");
68 void CreateHistosDimu(TList *list, TString sName="");
fd1d0cb9 69
70 static const TString fgkStdBranchName; // Standard branch name
fd1d0cb9 71 static Int_t fgAnaMode; // analysis mode
72 static Bool_t fgIsMC; // flag to use MC
9bcac085 73 static Double_t fgCuts[5]; // 0, low limit of num. of vtx contributors
fd1d0cb9 74 // 1, up limit of vz
75 // 2, up limit of vt
9bcac085 76 // 3, centrality max
77 // 4, centrality min
fd1d0cb9 78
9bcac085 79 UInt_t fSelMask; // mask of physics selection
80 Bool_t fIsMB; // is min. bias triggered event (for real data)
81 Bool_t fIsMU; // is MUON triggered event (for real data)
1195bb6f 82 Double_t fVtx[3]; // position of vtx
83 Int_t fVtxContrsN; // num. of contributors of vtx rec
fd1d0cb9 84
1195bb6f 85 TString fFiredTriggerClass; // trigger class
fd1d0cb9 86
9bcac085 87 Float_t fCentrality; // event centrality class
fd1d0cb9 88
9bcac085 89 ClassDef(AliMuonsHFHeader, 5)
4292b3b6 90};
91
92#endif