]> git.uio.no Git - u/mrichter/AliRoot.git/blame_incremental - MUON/AliMUONVTrackerDataMaker.h
Add option (flag) to reject candidates with tracks crossing the SPD misaligned staves...
[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 or not we're the owner of our AliMUONVTrackerData
35 virtual void SetOwnerOfData(Bool_t /*flag*/) { }
36
37 /// Whether we can be run
38 virtual Bool_t IsRunnable() const = 0;
39
40 /// Whether we are running (must be false if IsRunnable is false)
41 virtual Bool_t IsRunning() const = 0;
42
43 /// Whether we're only handling event-by-event data (i.e. no accumulation)
44 virtual Bool_t IsEventByEvent() const { return kFALSE; }
45
46 /// Set event-by-event mode
47 virtual void SetEventByEvent(Bool_t /*flag*/) { }
48
49 /// Set the running state (no effect if not runnable)
50 virtual void SetRunning(Bool_t flag) = 0;
51
52 /// Process current event
53 virtual Bool_t ProcessEvent() = 0;
54
55 /// Advance to next event and process it (no effect if not runnable)
56 virtual Bool_t NextEvent() { return ProcessEvent(); }
57
58 /// Rewind events (no effect if not runnable)
59 virtual void Rewind() = 0;
60
61 /// Set our source URI
62 virtual void SetSource(const char* source) = 0;
63
64 /// Get our source URI
65 virtual TString Source() const = 0;
66
67 /// Get the number of events we have seen (but not necessarily used...)
68 virtual Int_t NumberOfEvents() const = 0;
69
70 /// Merge
71 virtual Long64_t Merge(TCollection* list) = 0;
72
73 /// Set event range (if not event by event)
74 virtual void SetEventRange(Int_t /* firstevent */, Int_t /* lastevent */) {}
75
76 ClassDef(AliMUONVTrackerDataMaker,1) // Producer of AliMUONVTrackerData
77};
78
79#endif