]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG1/AliMCTrackingTestTask.h
New EMCAL cosmic trigger as defined by Federico A.
[u/mrichter/AliRoot.git] / PWG1 / AliMCTrackingTestTask.h
CommitLineData
3880629c 1#ifndef ALIMCTRACKINGTESTTASK_H
2#define ALIMCTRACKINGTESTTASK_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>
16#include <TString.h>
17class AliGenInfoMaker;
18class TTreeSRedirector;
19class AliMCEventHadnler;
20class TParticle;
21class AliMCInfo;
22class AliESDRecInfo;
23class AliESDEvent;
24class AliMCEvent;
25class AliComparisonObject;
26
27class AliMCTrackingTestTask : public AliAnalysisTask {
28 public:
29 AliMCTrackingTestTask();
30 AliMCTrackingTestTask(const char *name);
31 virtual ~AliMCTrackingTestTask();
32
33 virtual void ConnectInputData(Option_t *);
34 virtual void CreateOutputObjects();
35 virtual void Exec(Option_t *option);
36 virtual void Terminate(Option_t *);
37 virtual void FinishTaskOutput();
38 void SetDebugOuputhPath(const char * name){fDebugOutputPath=name;}
39
40 //
41 void ProcessMCInfo();
42 void ProcessRefTracker(AliTrackReference* refIn, AliTrackReference* refOut, TParticle*part, Int_t type);
95dea3a7 43
44 void FitTrackRefs(TParticle * part, TClonesArray * trefs);
45
3880629c 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 static AliExternalTrackParam * MakeTrack(const AliTrackReference* ref, TParticle*part);
56 static Bool_t PropagateToPoint(AliExternalTrackParam *param, Double_t *xyz, Double_t mass, Float_t step);
57 protected:
58 void RegisterDebugOutput();
59 AliMCTrackingTestTask(const AliMCTrackingTestTask& /*info*/);
60 AliMCTrackingTestTask& operator=(const AliMCTrackingTestTask& /*info*/) { return *this;}
61 AliMCEvent * fMCinfo; //! MC event handler
62 AliESDEvent * fESD; //! current esd event
63 //
64 //
65 //
66 TTreeSRedirector *fDebugStreamer; //! debug streamer
67 Int_t fStreamLevel; // debug stream level
68 Int_t fDebugLevel; // debug level
69 TString fDebugOutputPath; // debug output path
70 ClassDef(AliMCTrackingTestTask, 1); // Analysis task base class for tracks
71};
72
73#endif