]>
Commit | Line | Data |
---|---|---|
0145e89a | 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 | ||
4ef00a18 | 9 | /// \ingroup rec |
0145e89a | 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; | |
49419555 | 20 | class TCollection; |
0145e89a | 21 | |
22 | class AliMUONVTrackerDataMaker : public TObject | |
23 | { | |
24 | public: | |
25 | AliMUONVTrackerDataMaker(); | |
26 | virtual ~AliMUONVTrackerDataMaker(); | |
27 | ||
9016a84e | 28 | /// Whether we are valid or not |
0145e89a | 29 | virtual Bool_t IsValid() const = 0; |
30 | ||
9016a84e | 31 | /// Our data |
0145e89a | 32 | virtual AliMUONVTrackerData* Data() const = 0; |
33 | ||
9016a84e | 34 | /// Whether we can be run |
0145e89a | 35 | virtual Bool_t IsRunnable() const = 0; |
36 | ||
9016a84e | 37 | /// Whether we are running (must be false if IsRunnable is false) |
0145e89a | 38 | virtual Bool_t IsRunning() const = 0; |
39 | ||
49419555 | 40 | /// Whether we're only handling event-by-event data (i.e. no accumulation) |
41 | virtual Bool_t IsEventByEvent() const { return kFALSE; } | |
42 | ||
43 | /// Set event-by-event mode | |
44 | virtual void SetEventByEvent(Bool_t /*flag*/) { } | |
45 | ||
9016a84e | 46 | /// Set the running state (no effect if not runnable) |
0145e89a | 47 | virtual void SetRunning(Bool_t flag) = 0; |
48 | ||
515cc5b5 | 49 | /// Process current event |
50 | virtual Bool_t ProcessEvent() = 0; | |
51 | ||
52 | /// Advance to next event and process it (no effect if not runnable) | |
53 | virtual Bool_t NextEvent() { return ProcessEvent(); } | |
0145e89a | 54 | |
9016a84e | 55 | /// Rewind events (no effect if not runnable) |
0145e89a | 56 | virtual void Rewind() = 0; |
57 | ||
9016a84e | 58 | /// Set our source URI |
0145e89a | 59 | virtual void SetSource(const char* source) = 0; |
60 | ||
9016a84e | 61 | /// Get our source URI |
0145e89a | 62 | virtual TString Source() const = 0; |
d59411b9 | 63 | |
64 | /// Get the number of events we have seen (but not necessarily used...) | |
65 | virtual Int_t NumberOfEvents() const = 0; | |
0145e89a | 66 | |
49419555 | 67 | /// Merge |
68 | virtual Long64_t Merge(TCollection* list) = 0; | |
69 | ||
0145e89a | 70 | ClassDef(AliMUONVTrackerDataMaker,1) // Producer of AliMUONVTrackerData |
71 | }; | |
72 | ||
73 | #endif |