AliPhysics  vAN-20151014 (f894c76)
 All Classes Namespaces Files Functions Variables Enumerations Enumerator Macros
AliNormalizationCounter.h
Go to the documentation of this file.
1 #ifndef ALINORMALIZATIONCOUNTER_H
2 #define ALINORMALIZATIONCOUNTER_H
3 
4 /**************************************************************************
5  * Copyright(c) 1998-2008, ALICE Experiment at CERN, All rights reserved. *
6  * *
7  * Author: The ALICE Off-line Project. *
8  * Contributors are mentioned in the code where appropriate. *
9  * *
10  * Permission to use, copy, modify and distribute this software and its *
11  * documentation strictly for non-commercial purposes is hereby granted *
12  * without fee, provided that the above copyright notice appears in all *
13  * copies and that both the copyright notice and this permission notice *
14  * appear in the supporting documentation. The authors make no claims *
15  * about the suitability of this software for any purpose. It is *
16  * provided "as is" without express or implied warranty. *
17  **************************************************************************/
18 
19 /* $Id$ */
20 
21 //*************************************************************************
29 
30 #include <TROOT.h>
31 #include <TSystem.h>
32 #include <TNtuple.h>
33 #include <TH1F.h>
34 #include <TH2F.h>
35 #include <TH1D.h>
36 #include <AliESDEvent.h>
37 #include <AliESDtrack.h>
38 #include <AliAODTrack.h>
39 #include <AliAODEvent.h>
40 #include <AliVParticle.h>
41 #include "AliAnalysisTaskSE.h"
42 #include "AliCounterCollection.h"
43 #include "AliAnalysisDataSlot.h"
44 #include "AliAnalysisDataContainer.h"
45 #include "AliRDHFCuts.h"
46 //#include "AliAnalysisVertexingHF.h"
47 
48 class AliNormalizationCounter : public TNamed
49 {
50  public:
51 
53  AliNormalizationCounter(const char *name);
54  virtual ~AliNormalizationCounter();
55  Long64_t Merge(TCollection* list);
56 
57  AliCounterCollection* GetCounter(){return &fCounters;}
58  void Init();
59  void Add(const AliNormalizationCounter*);
60  void SetESD(Bool_t flag){fESD=flag;}
61  void SetStudyMultiplicity(Bool_t flag, Float_t etaRange){ fMultiplicity=flag; fMultiplicityEtaRange=etaRange; }
62  void StoreEvent(AliVEvent*,AliRDHFCuts *,Bool_t mc=kFALSE, Int_t multiplicity=-9999);
63  void StoreCandidates(AliVEvent*, Int_t nCand=0,Bool_t flagFilter=kTRUE);
64  TH1D* DrawAgainstRuns(TString candle="candid(filter)",Bool_t drawHist=kTRUE);
65  TH1D* DrawRatio(TString candle1="candid(filter)",TString candle2="triggered");
66  void PrintRubrics();
67  Double_t GetSum(TString candle="triggered");
68  Double_t GetSum(TString candle,Int_t minmultiplicity, Int_t maxmultiplicity);
69 
70  TH2F* GetHist(Bool_t filtercuts=kTRUE,Bool_t spdtracklets=kTRUE,Bool_t drawHist=kFALSE);
71  Double_t GetNEventsForNorm();
72  Double_t GetNEventsForNorm(Int_t runnumber);
73  Bool_t GetStudyMultiplicity(){ return fMultiplicity; }
75  Double_t GetNEventsForNorm(Int_t minmultiplicity, Int_t maxmultiplicity);
76  TH1D* DrawNEventsForNorm(Bool_t drawRatio=kFALSE);
77 
78  private:
81  Int_t Multiplicity(AliVEvent* event);
82  AliCounterCollection fCounters;
83  Bool_t fESD;
84  Bool_t fMultiplicity;
90 
92  ClassDef(AliNormalizationCounter,6);
94 };
95 #endif
AliCounterCollection * GetCounter()
TH2F * fHistTrackFilterSpdMult
hist to store no of analysis candidates vs no of tracks in the event
void StoreCandidates(AliVEvent *, Int_t nCand=0, Bool_t flagFilter=kTRUE)
Bool_t fESD
internal counter
TH2F * fHistTrackAnaSpdMult
hist to store no of filter candidates vs SPD multiplicity
TList * list
Bool_t fMultiplicity
flag for ESD vs AOD
TH1D * DrawAgainstRuns(TString candle="candid(filter)", Bool_t drawHist=kTRUE)
AliCounterCollection fCounters
void Add(const AliNormalizationCounter *)
TH2F * fHistTrackAnaEvMult
hist to store no of filter candidates vs no of tracks in the event
Int_t Multiplicity(AliVEvent *event)
void SetStudyMultiplicity(Bool_t flag, Float_t etaRange)
TH1D * DrawNEventsForNorm(Bool_t drawRatio=kFALSE)
TH1D * DrawRatio(TString candle1="candid(filter)", TString candle2="triggered")
Long64_t Merge(TCollection *list)
Float_t fMultiplicityEtaRange
flag for multiplicity
Double_t GetSum(TString candle="triggered")
AliNormalizationCounter & operator=(const AliNormalizationCounter &source)
TH2F * GetHist(Bool_t filtercuts=kTRUE, Bool_t spdtracklets=kTRUE, Bool_t drawHist=kFALSE)
void StoreEvent(AliVEvent *, AliRDHFCuts *, Bool_t mc=kFALSE, Int_t multiplicity=-9999)