framework for reconstruction of raw data
[u/mrichter/AliRoot.git] / STEER / AliReconstructor.h
CommitLineData
59697224 1#ifndef ALIRECONSTRUCTOR_H
2#define ALIRECONSTRUCTOR_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
0742d588 8//
9// base class for reconstruction algorithm
10// Derived classes should implement a default constructor and
11// the virtual methods
12//
13
59697224 14#include <TObject.h>
efd2085e 15#include <TString.h>
59697224 16
17class AliRunLoader;
b649205a 18class AliRawReader;
59697224 19class AliVertexer;
20class AliTracker;
21class AliESD;
22
23
24class AliReconstructor: public TObject {
25public:
efd2085e 26 AliReconstructor(): TObject(), fOption() {};
c757bafd 27 virtual ~AliReconstructor() {};
28
59697224 29 virtual void Reconstruct(AliRunLoader* runLoader) const = 0;
b649205a 30 virtual void Reconstruct(AliRunLoader* runLoader,
31 AliRawReader* rawReader) const;
59697224 32 virtual AliVertexer* CreateVertexer(AliRunLoader* /*runLoader*/) const
33 {return NULL;}
34 virtual AliTracker* CreateTracker(AliRunLoader* /*runLoader*/) const
35 {return NULL;}
36 virtual void FillESD(AliRunLoader* runLoader, AliESD* esd) const = 0;
b649205a 37 virtual void FillESD(AliRunLoader* runLoader,
38 AliRawReader* rawReader, AliESD* esd) const;
59697224 39
c757bafd 40 virtual const char* GetDetectorName() const;
41
efd2085e 42 void SetOption(Option_t* option) {fOption = option;};
43 virtual Option_t* GetOption() const {return fOption.Data();};
44
45private:
46 TString fOption; //! option for reconstruction
47
59697224 48 ClassDef(AliReconstructor, 0) // base class for reconstruction algorithms
49};
50
51#endif