]> git.uio.no Git - u/mrichter/AliRoot.git/blob - MUON/AliMUONTriggerGUIdimap.h
Making Trigger GUI working again
[u/mrichter/AliRoot.git] / MUON / AliMUONTriggerGUIdimap.h
1 #ifndef ALIMUONTRIGGERGUIDIMAP_H
2 #define ALIMUONTRIGGERGUIDIMAP_H
3
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice                               */
6
7 /// \ingroup evaluation
8 /// \class AliMUONTriggerGUIdimap
9 /// \brief Trigger GUI utility class: digits maps of the trigger chambers
10 //  Author Bogdan Vulpescu, LPC Clermont-Ferrand
11
12 #include <TGFrame.h>
13
14 class AliLoader;
15 class AliMUONMCDataInterface;
16 class TGTransientFrame;
17 class TObjArray;
18 class TRootEmbeddedCanvas;
19 class TPave;
20 class TH1F;
21 class TGWindow;
22 class TPad;
23
24 class AliMUONTriggerGUIdimap : public TGFrame
25 {
26     
27 public:
28
29  AliMUONTriggerGUIdimap(TObjArray *boards, 
30                         const TGWindow *p, const TGWindow *main, 
31                         UInt_t w, UInt_t h);
32  virtual ~AliMUONTriggerGUIdimap();
33  
34  /// set the current muon loader
35  void SetLoader(AliLoader *loader) { fLoader = loader; };
36  /// set the MC data interface
37  void SetMCDataInterface(AliMUONMCDataInterface *mc) { fMCDataInterface = mc; };
38
39  /// return info if the map is open
40  Bool_t IsOn() const { return fIsOn; };
41  void DoClose();
42  void DoUpdate();
43  void DoTab(Int_t id) const;
44  void DoReset();
45  void CloseWindow();
46  void DrawMaps(Int_t chamber);
47  void SelectBoard(Int_t ib);
48  void DrawAllMaps();
49
50 private:
51  /// Not implemented  
52  AliMUONTriggerGUIdimap (const AliMUONTriggerGUIdimap& dimap);
53  /// Not implemented  
54  AliMUONTriggerGUIdimap& operator=(const AliMUONTriggerGUIdimap& dimap);
55  
56 private:
57
58   enum { kNBoards = 234 };        ///< number of boards
59   enum { kGood = 0x0001, kWithProblems = 0x0002, kNotWorking = 0x0004, kUnknown = 0x0008 };                      ///< working status flags
60   enum { kNSide = 2, kNCol = 7, kNLine = 9, kNMT = 4, kNBoardType = 3 }; ///< other constants
61   
62   TGTransientFrame    *fMain;     ///< Main frame
63
64   AliLoader   *fLoader;           ///< The MUON loader
65   AliMUONMCDataInterface *fMCDataInterface;  ///< MC data interface
66
67   TRootEmbeddedCanvas *fEc[kNMT]; ///< Canvases for drawing the digits
68
69   TPave *fPaveBoard[kNMT][kNBoards];    ///< Drawing of the board
70   TObjArray   *fBoards;           ///< Array of boards
71
72   Bool_t fIsOn;                   ///< True if the map is open
73
74   ClassDef(AliMUONTriggerGUIdimap,1) //Trigger GUI utility class: digits maps of the trigger chambers
75    
76 };
77
78 #endif