]>
Commit | Line | Data |
---|---|---|
78a96979 | 1 | #ifndef ALIMUONVTRIGGERSTORE_H |
2 | #define ALIMUONVTRIGGERSTORE_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 base | |
10 | /// \class AliMUONVTriggerStore | |
11 | /// \brief Base class of a trigger information store | |
12 | /// | |
13 | // Author Laurent Aphecetche, Subatech | |
14 | ||
15 | #ifndef ALIMUONVSTORE_H | |
16 | # include "AliMUONVStore.h" | |
17 | #endif | |
18 | ||
19 | class AliMUONLocalTrigger; | |
20 | class AliMUONGlobalTrigger; | |
21 | class AliMUONRegionalTrigger; | |
22 | ||
23 | class AliMUONVTriggerStore : public AliMUONVStore | |
24 | { | |
25 | public: | |
26 | AliMUONVTriggerStore(); | |
27 | virtual ~AliMUONVTriggerStore(); | |
28 | ||
29 | /// Add an object, if of the right type | |
30 | virtual Bool_t Add(TObject* object); | |
31 | ||
32 | /// Add local trigger | |
33 | virtual void Add(const AliMUONLocalTrigger& localTrigger) = 0; | |
34 | /// Set global trigger | |
35 | virtual void SetGlobal(const AliMUONGlobalTrigger& globalTrigger) = 0; | |
36 | /// Add regional trigger | |
37 | virtual void Add(const AliMUONRegionalTrigger& regionalTrigger) = 0; | |
38 | ||
39 | using AliMUONVStore::Create; | |
40 | ||
41 | /// Create a store from the tree (if possible). | |
42 | static AliMUONVTriggerStore* Create(TTree& tree); | |
43 | ||
44 | /// Create iterator (on local card) | |
45 | virtual TIterator* CreateIterator() const; | |
46 | ||
47 | /// Create iterator on local trigger | |
48 | virtual TIterator* CreateLocalIterator() const = 0; | |
49 | /// Create iterator on regional trigger | |
50 | virtual TIterator* CreateRegionalIterator() const = 0; | |
51 | ||
52 | /// Return global trigger | |
53 | virtual AliMUONGlobalTrigger* Global() const = 0; | |
54 | ||
55 | /// Find a local trigger by the board number (not an index, it is a number really) | |
56 | virtual AliMUONLocalTrigger* FindLocal(Int_t boardNumber) const = 0; | |
57 | ||
58 | /// Find a regional trigger by the board number (not an index, it is a number really) | |
59 | virtual AliMUONRegionalTrigger* FindRegional(Int_t boardNumber) const = 0; | |
60 | ||
61 | using AliMUONVStore::Print; | |
62 | ||
63 | virtual void Print(Option_t* wildcard="") const { return Print(wildcard,""); } | |
64 | ||
65 | ClassDef(AliMUONVTriggerStore,1) // Base class of a trigger store | |
66 | }; | |
67 | ||
68 | #endif |