]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG3/vertexingHF/AliNormalizationCounter.h
set ownership of cuts container
[u/mrichter/AliRoot.git] / PWG3 / vertexingHF / AliNormalizationCounter.h
CommitLineData
e0fdfa52 1/**************************************************************************
2 * Copyright(c) 1998-2008, 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// Class AliNormalizationCounter
18// Class to store the informations relevant for the normalization in the
19// barrel for each run
20// Authors: G. Ortona, ortona@to.infn.it
21// D. Caffarri, davide.caffarri@pd.to.infn.it
22// with many thanks to P. Pillot
23/////////////////////////////////////////////////////////////
24
a96083b9 25#ifndef ALINORMALIZATIONCOUNTER_H
26#define ALINORMALIZATIONCOUNTER_H
27
28#include <TROOT.h>
29#include <TSystem.h>
30#include <TNtuple.h>
31#include <TH1F.h>
e0fdfa52 32#include <TH2F.h>
a96083b9 33#include <TH1D.h>
34#include <AliESDEvent.h>
35#include <AliESDtrack.h>
36#include <AliAODTrack.h>
37#include <AliAODEvent.h>
38#include <AliVParticle.h>
39#include "AliAnalysisTaskSE.h"
40#include "AliCounterCollection.h"
e0fdfa52 41#include "AliAnalysisDataSlot.h"
42#include "AliAnalysisDataContainer.h"
a96083b9 43//#include "AliAnalysisVertexingHF.h"
44
e0fdfa52 45class AliNormalizationCounter : public TNamed
a96083b9 46{
47 public:
48
49 AliNormalizationCounter();
50 AliNormalizationCounter(const char *name);
51 virtual ~AliNormalizationCounter();
e0fdfa52 52 Long64_t Merge(TCollection* list);
a96083b9 53
e0fdfa52 54 AliCounterCollection* GetCounter(){return &fCounters;}
55 void Add(const AliNormalizationCounter*);
a96083b9 56 void SetESD(Bool_t flag){fESD=flag;}
57 void StoreEvent(AliVEvent*,Bool_t mc=kFALSE);
58 void StoreCandidates(AliVEvent*, Int_t nCand=0,Bool_t flagFilter=kTRUE);
e0fdfa52 59 TH1D* DrawAgainstRuns(TString candle="candid(filter)",Bool_t drawHist=kTRUE);
60 TH1D* DrawRatio(TString candle1="candid(filter)",TString candle2="triggered");
61 void PrintRubrics();
62 Double_t GetSum(TString candle="triggered");
de1b82ff 63 Bool_t GetRejectPileUp(){return fRejectPileUp;}
64 void SetRejectPileUp(Int_t reject=kTRUE){fRejectPileUp=reject;}
e0fdfa52 65 TH2F* GetHist(Bool_t filtercuts=kTRUE,Bool_t spdtracklets=kTRUE,Bool_t drawHist=kFALSE);
de1b82ff 66
a96083b9 67 private:
68 AliNormalizationCounter(const AliNormalizationCounter &source);
69 AliNormalizationCounter& operator=(const AliNormalizationCounter& source);
e0fdfa52 70 AliCounterCollection fCounters; //internal counter
a96083b9 71 Bool_t fESD; //flag for ESD vs AOD
de1b82ff 72 Int_t fRejectPileUp; //flag to reject candles in pile up events
e0fdfa52 73 TH2F *fHistTrackFilterEvMult; //hist to store no of filter candidates vs no of tracks in the event
74 TH2F *fHistTrackAnaEvMult;//hist to store no of analysis candidates vs no of tracks in the event
75 TH2F *fHistTrackFilterSpdMult; //hist to store no of filter candidates vs SPD multiplicity
76 TH2F *fHistTrackAnaSpdMult;//hist to store no of analysis candidates vs SPD multiplicity
a96083b9 77
de1b82ff 78 ClassDef(AliNormalizationCounter,3);
a96083b9 79
80};
81#endif