]> git.uio.no Git - u/mrichter/AliRoot.git/blame_incremental - MUON/AliMUONVTrackerDataMaker.h
Sergey: bug fix with storing cluster id's
[u/mrichter/AliRoot.git] / MUON / AliMUONVTrackerDataMaker.h
... / ...
CommitLineData
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 rec
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
19class AliMUONVTrackerData;
20class TCollection;
21
22class AliMUONVTrackerDataMaker : public TObject
23{
24public:
25 AliMUONVTrackerDataMaker();
26 virtual ~AliMUONVTrackerDataMaker();
27
28 /// Whether we are valid or not
29 virtual Bool_t IsValid() const = 0;
30
31 /// Our data
32 virtual AliMUONVTrackerData* Data() const = 0;
33
34 /// Whether we can be run
35 virtual Bool_t IsRunnable() const = 0;
36
37 /// Whether we are running (must be false if IsRunnable is false)
38 virtual Bool_t IsRunning() const = 0;
39
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
46 /// Set the running state (no effect if not runnable)
47 virtual void SetRunning(Bool_t flag) = 0;
48
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(); }
54
55 /// Rewind events (no effect if not runnable)
56 virtual void Rewind() = 0;
57
58 /// Set our source URI
59 virtual void SetSource(const char* source) = 0;
60
61 /// Get our source URI
62 virtual TString Source() const = 0;
63
64 /// Get the number of events we have seen (but not necessarily used...)
65 virtual Int_t NumberOfEvents() const = 0;
66
67 /// Merge
68 virtual Long64_t Merge(TCollection* list) = 0;
69
70 ClassDef(AliMUONVTrackerDataMaker,1) // Producer of AliMUONVTrackerData
71};
72
73#endif