3 //* This file is property of and copyright by the ALICE HLT Project *
4 //* ALICE Experiment at CERN, All rights reserved. *
5 //* See cxx source for full Copyright notice *
7 #ifndef ALIANALYSISTASKHLTCENTRALBARREL_H
8 #define ALIANALYSISTASKHLTCENTRALBARREL_H
10 /** @file AliAnalysisTaskHLTCentralBarrel.h
11 @author Per Ivar Lønne, Hege Erdal, Kalliopi Kanaki
13 @brief An analysis task to compare the offline and HLT esd trees
16 // forward declarations
23 #include "THnSparse.h"
24 #include "AliAnalysisTaskSE.h"
26 class AliAnalysisTaskHLTCentralBarrel : public AliAnalysisTaskSE {
30 AliAnalysisTaskHLTCentralBarrel();
31 AliAnalysisTaskHLTCentralBarrel(const char *name);
32 virtual ~AliAnalysisTaskHLTCentralBarrel();
34 virtual void UserCreateOutputObjects();
35 virtual void UserExec(Option_t *option);
36 virtual void Terminate(Option_t *);
38 // function to select only HLT triggered events
39 //void SetUseHLTTriggerDecision(Bool_t useHLT = kFALSE) { fUseHLTTrigger = useHLT; }
40 // function to set the beam type
41 void SetBeamType(TString beamType) { fBeamType = beamType; }
42 // function to create the THnSparse and name the axis
43 THnSparseF* CreateEventTHnSparse(const char* name, Int_t size, const int* bins, double* min, double* max);
44 // function to create the THnSparse and name the axis
45 THnSparseF* CreateTrackTHnSparse(const char* name, Int_t size, const int* bins, double* min, double* max);
46 // options for filling HLT or OFF properties, or event and track properties
47 void SetOptions(TString options) { fOptions = options; }
48 //function to fill the THnSparse
49 //void Fill(AliESDevent *esd, THnSparseF* thn);
53 /** copy constructor */
54 AliAnalysisTaskHLTCentralBarrel(const AliAnalysisTaskHLTCentralBarrel&);
55 /** assignment operator */
56 AliAnalysisTaskHLTCentralBarrel& operator=(const AliAnalysisTaskHLTCentralBarrel&);
58 Bool_t fUseHLTTrigger; // Use HLT Trigger Decision
59 AliCentrality *fCentrality; // Centrality holder
60 TString fBeamType; // beam type: p-p, Pb-Pb, No beam
62 TList *fOutputList; // list of output THnSparse objects
64 THnSparse *fEventOFF; //! offline event properties
65 THnSparse *fEventHLT; //! HLT event properties
67 THnSparse *fTrackOFF; //! offline track properties
68 THnSparse *fTrackHLT; //! HLT track properties
70 TString fOptions; //! options for filling event and/or track properties for hlt and/or offline
71 TText *fTextBox; //! TText box containing run number info and date
72 Bool_t fSwitch; //! boolean used to execute parts of the code in the UserExec only once, although
73 // the function is called once per event
75 ClassDef(AliAnalysisTaskHLTCentralBarrel, 0);