AliRoot Core  3dc7879 (3dc7879)
AliMUONPainterDataRegistry.h
Go to the documentation of this file.
1 #ifndef ALIMUONPAINTERDATAREGISTRY_H
2 #define ALIMUONPAINTERDATAREGISTRY_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: AliMUONPainterDataRegistry.h 26812 2008-06-20 15:22:59Z laphecet $
8 
13 // Author Laurent Aphecetche, Subatech
14 
15 #ifndef ROOT_TObject
16 # include "TObject.h"
17 #endif
18 #ifndef ROOT_TQObject
19 # include <TQObject.h>
20 #endif
21 
22 class TObjArray;
25 
26 class AliMUONPainterDataRegistry : public TObject, public TQObject
27 {
28 public:
30 
31  AliMUONVTrackerDataMaker* DataMaker(Int_t i) const;
32 
33  AliMUONVTrackerData* DataSource(Int_t i) const;
34 
35  AliMUONVTrackerData* DataSource(const char* name) const;
36 
38 
39  void DataSourceWasRegistered(const AliMUONVTrackerData* data); // *SIGNAL*
40 
41  void DataSourceWasUnregistered(const AliMUONVTrackerData* data); // *SIGNAL*
42 
43  void DataMakerWasRegistered(const AliMUONVTrackerDataMaker* reader); // *SIGNAL*
44 
45  void DataMakerWasUnregistered(const AliMUONVTrackerDataMaker* reader); // *SIGNAL*
46 
48 
49  Int_t NumberOfDataMakers() const;
50 
52  Int_t NumberOfDataSources() const { return NumberOfDataMakers(); }
53 
54  void Print(Option_t* opt) const;
55 
56  void Register(AliMUONVTrackerDataMaker* reader);
57 
58  Bool_t Unregister(AliMUONVTrackerDataMaker* reader);
59 
60  void DeleteZombies();
61 
62 private:
69 
70  void CreateInteractiveReadOutConfig() const;
71 
72 private:
77 
78  ClassDef(AliMUONPainterDataRegistry,1) // Registry for AliMUONVTrackerDataMaker objects
79 };
80 
81 #endif
AliMUONVTrackerData * DataSource(Int_t i) const
void DataMakerWasUnregistered(const AliMUONVTrackerDataMaker *reader)
static AliMUONPainterDataRegistry * fgInstance
unique instance
#define TObjArray
Producer of some AliMUONVTrackerData.
TObjArray * fZombies
data readers to be deleted
TObjArray * fDataMakers
data makers
Int_t NumberOfDataSources() const
Number of data sources = data makers.
void DataSourceWasUnregistered(const AliMUONVTrackerData *data)
void Register(AliMUONVTrackerDataMaker *reader)
static AliMUONPainterDataRegistry * Instance()
Bool_t Unregister(AliMUONVTrackerDataMaker *reader)
Registry for painter data sources.
void DataSourceWasRegistered(const AliMUONVTrackerData *data)
AliMUONVTrackerDataMaker * DataMaker(Int_t i) const
Base class for MUON data that can be presented at different levels in the hierarchy of the MUON syste...
void DataMakerWasRegistered(const AliMUONVTrackerDataMaker *reader)
AliMUONVTrackerData * InteractiveReadOutConfig() const
AliMUONPainterDataRegistry & operator=(const AliMUONPainterDataRegistry &)
Not implemented.
AliMUONVTrackerData * fInteractiveReadOutConfig
clickable readout configuration