#ifndef ALIANALYSISTASKNORM_H #define ALIANALYSISTASKNORM_H /* $Id$ */ // // AliAnalysisTaskNorm // Analysis task for muon trigger normalization // // author: C. Hadjidakis // #ifndef ALIANALYSISTASKSE_H # include "AliAnalysisTaskSE.h" #endif class AliCounterCollection; class AliMuonEventCuts; class AliVEvent; class AliAnalysisTaskNorm : public AliAnalysisTaskSE { public: AliAnalysisTaskNorm(const char *name = ""); virtual ~AliAnalysisTaskNorm(); virtual void Print(Option_t *opt="") const; void Print(TObjArray *obj) const; virtual void Terminate(Option_t *); virtual void UserCreateOutputObjects(); virtual void UserExec(Option_t* opt); // static Bool_t IsAODEvent( const AliVEvent *event); static TString GetFiredTriggerClasses( const AliVEvent *event); //build list of counters TList *BuildListOfNormFactor(const TObjArray*); TList *BuildListOfTrigger(const TObjArray*); TList *BuildListOfCentrality(AliCentrality *centrality); TList *BuildListOfPileUp( const AliVEvent *event); TList *BuildListOfTracklets( const AliVEvent *event); TList *BuildListOfV0AMult( const AliVEvent *event); //fill histograms void FillHistoPileUpVertices( const AliVEvent *event, const TObjArray*); void FillHistoMult( const AliVEvent *event, const TObjArray*); Bool_t CheckPattern(TString, TObjArray*, TObjArray*); TObjArray *BuildArrayOfTrigger(const TObjArray*, TString keepPattern="", TString rejectPattern="OTHER,TRUE,PHI,ANY,EMC,-ACE-,-ABCE-,WU,MUP,SPI,SHM"); // Bool_t IsPileupFromSPDInMultBins(const AliVEvent *event) const; TString GetOCDBPath() {return "raw://";}; // OCDB to be used (raw:// by default) //Fill object methods void FillEventCounters(Int_t, TList*,TList*,TList*,TList*,TList*,TList*,Bool_t,Bool_t,TString,Bool_t); // AliMuonEventCuts* GetMuonEventCuts() { return fMuonEventCuts;} void SetIsMC(Bool_t isMC) { fIsMC = isMC;}; void SetIsESD(Bool_t isESD) { fIsESD = isESD;}; void SetBeamConf(TString sBeamConf) { fBeamConf = sBeamConf;}; private: enum eListV0A { kV0AMB = 0, ///