Line data Source code
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 AliMUONDigitStoreV1;
17 : class TGTransientFrame;
18 : class TObjArray;
19 : class TRootEmbeddedCanvas;
20 : class TPave;
21 : class TH1F;
22 : class TGWindow;
23 : class TPad;
24 :
25 : class AliMUONTriggerGUIdimap : public TGFrame
26 : {
27 :
28 : public:
29 :
30 : AliMUONTriggerGUIdimap(TObjArray *boards,
31 : const TGWindow *p, const TGWindow *main,
32 : UInt_t w, UInt_t h);
33 : virtual ~AliMUONTriggerGUIdimap();
34 :
35 : /// set the current muon loader
36 0 : void SetLoader(AliLoader * const loader) { fLoader = loader; };
37 : /// set the MC data interface
38 0 : void SetMCDataInterface(AliMUONMCDataInterface * const mc) { fMCDataInterface = mc; };
39 : /// set the digit store from raw data
40 0 : void SetRawDigitStore(AliMUONDigitStoreV1 * const ds) { fRawDigitStore = ds; };
41 :
42 : /// return info if the map is open
43 0 : Bool_t IsOn() const { return fIsOn; };
44 : void DoClose();
45 : void DoUpdate();
46 : void DoTab(Int_t id) const;
47 : void DoReset();
48 : void CloseWindow();
49 : void DrawMaps(Int_t chamber);
50 : void SelectBoard(Int_t ib);
51 : void DrawAllMaps();
52 :
53 : private:
54 : /// Not implemented
55 : AliMUONTriggerGUIdimap (const AliMUONTriggerGUIdimap& dimap);
56 : /// Not implemented
57 : AliMUONTriggerGUIdimap& operator=(const AliMUONTriggerGUIdimap& dimap);
58 :
59 : private:
60 :
61 : enum { kNBoards = 234 }; ///< number of boards
62 : enum { kGood = 0x0001, kWithProblems = 0x0002, kNotWorking = 0x0004, kUnknown = 0x0008 }; ///< working status flags
63 : enum { kNSide = 2, kNCol = 7, kNLine = 9, kNMT = 4, kNBoardType = 3 }; ///< other constants
64 :
65 : TGTransientFrame *fMain; ///< Main frame
66 :
67 : AliLoader *fLoader; ///< The MUON loader
68 : AliMUONMCDataInterface *fMCDataInterface; ///< MC data interface
69 : AliMUONDigitStoreV1 *fRawDigitStore; ///< Raw data digit store
70 :
71 : TRootEmbeddedCanvas *fEc[kNMT]; ///< Canvases for drawing the digits
72 :
73 : TPave *fPaveBoard[kNMT][kNBoards]; ///< Drawing of the board
74 : TObjArray *fBoards; ///< Array of boards
75 :
76 : Bool_t fIsOn; ///< True if the map is open
77 :
78 16 : ClassDef(AliMUONTriggerGUIdimap,2) //Trigger GUI utility class: digits maps of the trigger chambers
79 :
80 : };
81 :
82 : #endif
|