Cosmetics
[u/mrichter/AliRoot.git] / ANALYSIS / AliAnalysisTaskSE.h
CommitLineData
5232d0de 1#ifndef ALIANALYSISTASKSE_H
2#define ALIANALYSISTASKSE_H
3
4/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
6
7/* $Id$ */
8
9#include "AliAnalysisTask.h"
0c6c629b 10#include "AliVEvent.h"
11
5232d0de 12class AliAODEvent;
3f2431c4 13class AliAODHeader;
c185e0db 14class AliAODTracklets;
5a922844 15class AliAODCaloCells;
5232d0de 16class AliMCEvent;
80d13558 17class AliInputEventHandler;
f0ee78b0 18class AliAnalysisCuts;
620ad672 19class AliESDfriend;
5a922844 20
5232d0de 21class TTree;
1ec2c8dc 22class TList;
5232d0de 23
24
25class AliAnalysisTaskSE : public AliAnalysisTask
26{
27 public:
28 AliAnalysisTaskSE();
29 AliAnalysisTaskSE(const char* name);
26f071d8 30 AliAnalysisTaskSE(const AliAnalysisTaskSE& obj);
31 AliAnalysisTaskSE& operator=(const AliAnalysisTaskSE& other);
5232d0de 32 virtual ~AliAnalysisTaskSE() {;}
33 // Implementation of interface methods
f0ee78b0 34 virtual void ConnectInputData(Option_t *option = "");
35 virtual void CreateOutputObjects();
36 virtual void Exec(Option_t* option);
37 virtual void SetDebugLevel(Int_t level) {fDebug = level;}
38 virtual void Init() {;}
1ec2c8dc 39 virtual Bool_t Notify();
5232d0de 40 // To be implemented by user
f0ee78b0 41 virtual void UserCreateOutputObjects() {;}
42 virtual void UserExec(Option_t* /*option*/) {;}
1ec2c8dc 43 virtual Bool_t UserNotify() {return kTRUE;}
44 virtual void NotifyRun() {;}
f0ee78b0 45
164e94ff 46 // Helpers for adding branches to the AOD
f0ee78b0 47 virtual void AddAODBranch(const char* cname, void* addobj, const char *fname="");
48 // Event Selection
0c6c629b 49 virtual void SelectCollisionCandidates(UInt_t offlineTriggerMask = AliVEvent::kMB) {fOfflineTriggerMask = offlineTriggerMask;}
bf666461 50 // Getters
620ad672 51 virtual Int_t DebugLevel() {return fDebug; }
52 virtual AliVEvent* InputEvent() {return fInputEvent;}
53 virtual AliESDfriend* ESDfriend() {return fESDfriend; }
54 virtual AliAODEvent* AODEvent() {return fOutputAOD; }
55 virtual TTree* OutputTree() {return fTreeA; }
56 virtual AliMCEvent* MCEvent() {return fMCEvent; }
57 virtual Long64_t Entry() {return fEntry; }
58 virtual const char* CurrentFileName();
59 virtual Bool_t IsStandardAOD() const;
60 virtual TList* GetQAHistos() const {return fHistosQA;}
85c71ba7 61 virtual Bool_t IsEventInBinZero() { return kFALSE;}
62
80d13558 63 protected:
64 Int_t fDebug; // Debug flag
1ec2c8dc 65 // IO
80d13558 66 Int_t fEntry; // Current entry in the chain
67 AliVEvent* fInputEvent; //! VEvent Input
620ad672 68 AliESDfriend* fESDfriend; //! ESD friend
80d13558 69 AliInputEventHandler* fInputHandler; //! Input Handler
70 AliAODEvent* fOutputAOD; //! AOD out
71 AliMCEvent* fMCEvent; //! MC
72 TTree* fTreeA; // AOD output Tree
1ec2c8dc 73 Int_t fCurrentRunNumber;//! Current run number
74 // Output histos for QA
75 TList* fHistosQA; //! Output histos for QA
76 // Provisions for replication
c185e0db 77 static AliAODHeader* fgAODHeader; //! Header for replication
78 static TClonesArray* fgAODTracks; //! Tracks for replication
79 static TClonesArray* fgAODVertices; //! Vertices for replication
80 static TClonesArray* fgAODV0s; //! V0s for replication
81 static TClonesArray* fgAODPMDClusters; //! PMDClusters for replication
82 static TClonesArray* fgAODJets; //! Jets for replication
83 static TClonesArray* fgAODFMDClusters; //! FMDClusters for replication
84 static TClonesArray* fgAODCaloClusters; //! CaloClusters for replication
113bc2bd 85 static TClonesArray* fgAODMCParticles; //! MC Particles for replicatio
c185e0db 86 static AliAODTracklets* fgAODTracklets; //! Tracklets for replication
5a922844 87 static AliAODCaloCells* fgAODEmcalCells; //! Emcal Cell replication
88 static AliAODCaloCells* fgAODPhosCells; //! Phos Cell replication
866d8d78 89 static TClonesArray* fgAODDimuons; //! Dimuons replication
bf666461 90 // Event Selection
0c6c629b 91 UInt_t fOfflineTriggerMask; // Task processes collision candidates only
f0ee78b0 92
0c6c629b 93 ClassDef(AliAnalysisTaskSE, 4); // Analysis task for standard jet analysis
5232d0de 94};
95
96#endif