]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG1/AliGenInfoTask.h
avoid compilation warnings when adding selection macros
[u/mrichter/AliRoot.git] / PWG1 / AliGenInfoTask.h
CommitLineData
cd875161 1#ifndef ALIGENINFOTASK_H
2#define ALIGENINFOTASK_H
3
4// ROOT includes
5#include <TList.h>
6#include <TH1.h>
7#include <TH2.h>
8
9// AliRoot includes
10#include <AliAnalysisTask.h>
11#include <AliESDEvent.h>
12#include <AliESDfriend.h>
13#include <AliESDtrack.h>
14#include <AliESDfriendTrack.h>
15#include <AliTPCseed.h>
16class AliGenInfoMaker;
9c3fd353 17class TTreeSRedirector;
18class AliMCEventHadnler;
19class TParticle;
20class AliMCInfo;
21class AliESDRecInfo;
22class AliESDEvent;
d3eddc56 23class AliESDfriend;
9c3fd353 24class AliMCEvent;
25class AliComparisonObject;
cd875161 26
27class AliGenInfoTask : public AliAnalysisTask {
28 public:
29 AliGenInfoTask();
30 AliGenInfoTask(const char *name);
9c3fd353 31 virtual ~AliGenInfoTask();
cd875161 32
33 virtual void ConnectInputData(Option_t *);
34 virtual void CreateOutputObjects();
35 virtual void Exec(Option_t *option);
36 virtual void Terminate(Option_t *);
d3eddc56 37 virtual void FinishTaskOutput();
9c3fd353 38 //
39 //
40 void ProcessMCInfo();
41 void ProcessESDInfo();
42 void ProcessComparison();
76421d44 43 void DumpInfo();
44 static Float_t GetTPCTrackLength(const TClonesArray& trackRefs, TParticle*part, Float_t bz, Int_t &counter, Float_t deadWidth);
9c3fd353 45 //
46 //
47 // debug streamer part
48 //
49 TTreeSRedirector *GetDebugStreamer();
50 void SetStreamLevel(Int_t streamLevel){fStreamLevel=streamLevel;}
51 void SetDebugLevel(Int_t level) {fDebugLevel = level;}
52 Int_t GetStreamLevel() const {return fStreamLevel;}
53 Int_t GetDebugLevel() const {return fDebugLevel;}
54 //
55 Bool_t AcceptParticle(TParticle *part);
56 AliMCInfo *GetTrack(Int_t index, Bool_t force=kFALSE);
57 AliESDRecInfo *GetRecTrack(Int_t index, Bool_t force=kFALSE);
58 Bool_t AddComparisonObject(AliComparisonObject *pObj);
d3eddc56 59 void RegisterDebugOutput(const char *path);
60 void SetDebugOuputhPath(const char * name){fDebugOutputPath=name;}
cd875161 61 protected:
62 AliGenInfoTask(const AliGenInfoTask& /*info*/);
63 AliGenInfoTask& operator=(const AliGenInfoTask& /*info*/) { return *this;}
9c3fd353 64 AliMCEvent * fMCinfo; //! MC event handler
65 AliESDEvent * fESD; //! current esd event
d3eddc56 66 AliESDfriend * fESDfriend; //! current esd event
9c3fd353 67 //
68 TObjArray *fCompList; // comparison object list
69 //
70 TClonesArray *fGenTracksArray; //clones array with filtered particles
71 TClonesArray *fGenKinkArray; //clones array with filtered Kinks
72 TClonesArray *fGenV0Array; //clones array with filtered V0s
73 //
74 TClonesArray *fRecTracksArray; //clones array with filtered tracks
75 //
76 //
77 TTreeSRedirector *fDebugStreamer; //! debug streamer
78 Int_t fStreamLevel; // debug stream level
79 Int_t fDebugLevel; // debug level
d3eddc56 80 TString fDebugOutputPath; // debug output path
9c3fd353 81 ClassDef(AliGenInfoTask, 1); // Analysis task base class for tracks
cd875161 82};
83
84#endif