First big commit of the mchview program and its accompanying library,
[u/mrichter/AliRoot.git] / MUON / AliMUONVTrackerDataMaker.h
1 #ifndef ALIMUONVTRACKERDATAMAKER_H
2 #define ALIMUONVTRACKERDATAMAKER_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 /// \ingroup graphics
10 /// \class AliMUONVTrackerDataMaker
11 /// \brief Producer of some AliMUONVTrackerData
12 /// 
13 //  Author Laurent Aphecetche, Subatech
14
15 #ifndef ROOT_TObject
16 #  include "TObject.h"
17 #endif
18
19 class AliMUONVTrackerData;
20
21 class AliMUONVTrackerDataMaker : public TObject
22 {
23 public:
24   AliMUONVTrackerDataMaker();
25   virtual ~AliMUONVTrackerDataMaker();
26   
27   virtual Bool_t IsValid() const = 0;
28   
29   virtual AliMUONVTrackerData* Data() const = 0;
30
31   virtual Bool_t IsRunnable() const = 0;
32
33   virtual Bool_t IsRunning() const = 0;
34   
35   virtual void SetRunning(Bool_t flag) = 0;
36   
37   virtual Bool_t NextEvent() = 0;
38   
39   virtual void Rewind() = 0;
40   
41   /// Whether we're owner of our data
42   virtual void SetOwner(Bool_t flag) = 0; 
43   
44   virtual void SetSource(const char* source) = 0;
45   
46   virtual TString Source() const = 0;
47   
48   ClassDef(AliMUONVTrackerDataMaker,1) // Producer of AliMUONVTrackerData
49 };
50
51 #endif