]> git.uio.no Git - u/mrichter/AliRoot.git/blame - MUON/AliMUONPainterRegistry.h
Remove uneeded file
[u/mrichter/AliRoot.git] / MUON / AliMUONPainterRegistry.h
CommitLineData
0145e89a 1#ifndef ALIMUONPAINTERREGISTRY_H
2#define ALIMUONPAINTERREGISTRY_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 graphics
10/// \class AliMUONPainterRegistry
11/// \brief Registry for a bunch of AliMUONVPainter related stuff
12///
13// Author Laurent Aphecetche, Subatech
14
15#ifndef ROOT_TObject
16# include "TObject.h"
17#endif
4a3224ff 18#ifndef ROOT_TQObject
19# include <TQObject.h>
0145e89a 20#endif
21
22class TGPopupMenu;
23class TObjArray;
24class AliMUONVTrackerData;
25class AliMUONVTrackerDataMaker;
26class AliMUONPainterMatrix;
27class TGMenuBar;
28
4a3224ff 29class AliMUONPainterRegistry : public TObject, public TQObject
0145e89a 30{
0145e89a 31public:
32 virtual ~AliMUONPainterRegistry();
33
49419555 34 AliMUONVTrackerDataMaker* DataMaker(Int_t i) const;
0145e89a 35
36 AliMUONVTrackerData* DataSource(Int_t i) const;
37
49419555 38 AliMUONVTrackerData* DataSource(const char* name) const;
39
0145e89a 40 void DataSourceWasRegistered(AliMUONVTrackerData* data); // *SIGNAL*
41
42 void DataSourceWasUnregistered(AliMUONVTrackerData* data); // *SIGNAL*
43
49419555 44 void DataMakerWasRegistered(AliMUONVTrackerDataMaker* reader); // *SIGNAL*
0145e89a 45
49419555 46 void DataMakerWasUnregistered(AliMUONVTrackerDataMaker* reader); // *SIGNAL*
0145e89a 47
0145e89a 48 Int_t FindIndexOf(AliMUONPainterMatrix* group) const;
49
0145e89a 50 void HistoryMenuActivated(Int_t i);
51
52 static AliMUONPainterRegistry* Instance();
53
49419555 54 Int_t NumberOfDataMakers() const;
0145e89a 55
49419555 56 Int_t NumberOfDataSources() const { return NumberOfDataMakers(); }
0145e89a 57
58 Int_t NumberOfPainterMatrices() const;
59
60 AliMUONPainterMatrix* PainterMatrix(Int_t i) const;
61
49419555 62 AliMUONPainterMatrix* PainterMatrix(const char* groupName) const;
63
0145e89a 64 void AddToHistory(AliMUONPainterMatrix* group);
65
66 void PainterMatrixWasRegistered(AliMUONPainterMatrix* group); // *SIGNAL*
67
68 void PainterMatrixWasUnregistered(AliMUONPainterMatrix* group); // *SIGNAL*
69
70 void PainterMatrixWantToShow(AliMUONPainterMatrix* group); // *SIGNAL*
71
72 void Print(Option_t* opt) const;
73
74 Int_t Register(AliMUONPainterMatrix* group);
75
0145e89a 76 void Register(AliMUONVTrackerDataMaker* reader);
77
78 /// Set the menu bar where to put the history menu
79 void SetMenuBar(TGMenuBar* bar) { fMenuBar = bar; }
80
81 Bool_t Unregister(AliMUONPainterMatrix* group);
82
0145e89a 83 Bool_t Unregister(AliMUONVTrackerDataMaker* reader);
84
49419555 85 void DeleteZombies();
86
0145e89a 87private:
88 /// Not implemented
89 AliMUONPainterRegistry();
90 /// Not implemented
91 AliMUONPainterRegistry(const AliMUONPainterRegistry&);
92 /// Not implemented
93 AliMUONPainterRegistry& operator=(const AliMUONPainterRegistry&);
94
95private:
96 static AliMUONPainterRegistry* fgInstance; ///< unique instance
0145e89a 97 TObjArray* fPainterMatrices; ///< painter matrices
49419555 98 TObjArray* fDataMakers; ///< data makers
0145e89a 99 TGPopupMenu* fHistoryMenu; ///< history menu
100 TGMenuBar* fMenuBar; ///< Menu bar where to put the history menu
101 Int_t fHistoryCounter; ///< index to get back history menu items
49419555 102 TObjArray* fZombies; ///< data readers to be deleted
0145e89a 103
49419555 104 ClassDef(AliMUONPainterRegistry,3) // Registry for AliMUONVPainter related stuff
0145e89a 105};
106
107#endif