Macro to read the ESD event
[u/mrichter/AliRoot.git] / STEER / AliReconstruction.h
CommitLineData
596a855f 1#ifndef ALIRECONSTRUCTION_H
2#define ALIRECONSTRUCTION_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6/* $Id$ */
7
8#include <TNamed.h>
9#include <TString.h>
10
11class AliRunLoader;
12class AliLoader;
2257f27e 13class AliVertexer;
596a855f 14class AliTracker;
15class AliESD;
e583c30d 16class TFile;
596a855f 17
18
19class AliReconstruction: public TNamed {
20public:
e583c30d 21 AliReconstruction(const char* gAliceFilename = "galice.root",
22 const char* name = "AliReconstruction",
596a855f 23 const char* title = "reconstruction");
24 AliReconstruction(const AliReconstruction& rec);
25 AliReconstruction& operator = (const AliReconstruction& rec);
26 virtual ~AliReconstruction();
27
28 void SetGAliceFile(const char* fileName);
29
30 void SetRunReconstruction(const char* detectors) {
31 fRunReconstruction = detectors;};
2257f27e 32 void SetRunVertexFinder(Bool_t run) {fRunVertexFinder = run;};
596a855f 33 void SetRunTracking(Bool_t run) {fRunTracking = run;};
34 void SetFillESD(const char* detectors) {fFillESD = detectors;};
35
24f7a148 36 void SetStopOnError(Bool_t stopOnError)
37 {fStopOnError = stopOnError;}
38 void SetCheckPointLevel(Int_t checkPointLevel)
39 {fCheckPointLevel = checkPointLevel;}
40
596a855f 41 virtual Bool_t Run();
42
43private:
596a855f 44 Bool_t RunReconstruction(const TString& detectors);
2257f27e 45 Bool_t RunVertexFinder(AliESD*& esd);
24f7a148 46 Bool_t RunTracking(AliESD*& esd);
47 Bool_t FillESD(AliESD*& esd, const TString& detectors);
596a855f 48
e583c30d 49 Bool_t IsSelected(TString detName, TString& detectors) const;
2257f27e 50 Bool_t CreateVertexer();
24f7a148 51 Bool_t CreateTrackers();
e583c30d 52 void CleanUp(TFile* file = NULL);
53
24f7a148 54 Bool_t ReadESD(AliESD*& esd, const char* recStep) const;
55 void WriteESD(AliESD* esd, const char* recStep) const;
56
596a855f 57 TString fRunReconstruction; // run the reconstr. for these detectors
2257f27e 58 Bool_t fRunVertexFinder; // run the vertex finder
596a855f 59 Bool_t fRunTracking; // run the barrel tracking
60 TString fFillESD; // fill ESD for these detectors
596a855f 61 TString fGAliceFileName; // name of the galice file
e583c30d 62 Bool_t fStopOnError; // stop or continue on errors
24f7a148 63 Int_t fCheckPointLevel; // level of ESD check points
596a855f 64
65 AliRunLoader* fRunLoader; //! current run loader object
66 AliLoader* fITSLoader; //! loader for ITS
2257f27e 67 AliVertexer* fITSVertexer; //! vertexer for ITS
596a855f 68 AliTracker* fITSTracker; //! tracker for ITS
69 AliLoader* fTPCLoader; //! loader for TPC
70 AliTracker* fTPCTracker; //! tracker for TPC
71 AliLoader* fTRDLoader; //! loader for TRD
72 AliTracker* fTRDTracker; //! tracker for TRD
73 AliLoader* fTOFLoader; //! loader for TOF
74 AliTracker* fTOFTracker; //! tracker for TOF
75
76 ClassDef(AliReconstruction, 1) // class for running the reconstruction
77};
78
79#endif