TOF + macros to each detector folder
[u/mrichter/AliRoot.git] / TRD / qaGui / AliTRDqaGuiBlackChamber.h
1 #ifndef ALITRDQAGUIBLACKCHAMBER_H
2 #define ALITRDQAGUIBLACKCHAMBER_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: AliTRDqaGuiBlackChamber.h 23387 2008-01-17 17:25:16Z cblume $ */
8
9 ////////////////////////////////////////////////////////////////////////////
10 //                                                                    
11 // This class is a Graphical User Interface for the Quality Monitorig 
12 // of black (non zero zuppresed) events from TRD. 
13 // It lets display and browse throu histograms created by the class 
14 // AliTRDqaBlackEvents.
15 // The class works in cooperation with AliTRDqaGuiMainBlack.
16 //
17 // S. Radomski 
18 // Uni-Heidelberg
19 // Feb. 2008
20 //                                                                    
21 ////////////////////////////////////////////////////////////////////////////
22
23 #include "TGFrame.h"  
24
25 class TH1;
26 class TString;
27 class TGLabel;
28 class TGComboBox;
29 class TGTextButton;
30 class TRootEmbeddedCanvas;
31
32 class AliTRDqaGuiBlackChamber : public TGCompositeFrame {
33
34  public:
35
36   AliTRDqaGuiBlackChamber();
37   AliTRDqaGuiBlackChamber(TGWindow *parent);
38   ~AliTRDqaGuiBlackChamber() {};
39   
40   void SetQAFile(const char *filename);
41   void SetSM(Int_t idxSM);
42   void SetChamber(Int_t idxChamber);
43   void SetView(Int_t idxView);
44
45   void SetRangePed(Double_t min, Double_t max) {
46     fSetRangePed = 1;
47     fRangePed[0] = min;
48     fRangePed[1] = max;
49   }
50
51   void SetRangeNoise(Double_t min, Double_t max) {
52     fSetRangeNoise = 1;
53     fRangeNoise[0] = min;
54     fRangeNoise[1] = max;
55   }
56
57
58   // void Play();  // *SLOT*
59   void PreviusChamber() {if (fIdxChamber > 0) SetChamber(fIdxChamber-1);}   // *SLOT*
60   void NextChamber()    {if (fIdxChamber < fgknChamber-1) SetChamber(fIdxChamber+1);}   // *SLOT*
61
62   void PreviusSM() {if (fIdxSM > 0) SetSM(fIdxSM-1);}      // *SLOT*
63   void NextSM()    {if (fIdxSM < fgknSM-1) SetSM(fIdxSM+1);}   // *SLOT*
64   
65   void SelectChamber(Int_t idx) {SetChamber(idx);} // *SLOT*
66   void SelectSM(Int_t idx) {SetSM(idx);}       // *SLOT*
67   void SelectView(Int_t idx) {SetView(idx);}   // *SLOT*
68
69
70  protected:
71   
72   Int_t fView;
73   
74   static const Int_t fgknSM;       // number of supermodules
75   static const Int_t fgknChamber;  // number of chamberd (30)
76
77   Int_t    fSetRangePed;           // flag for range in pedestals
78   Double_t fRangePed[2];           // range for pedelstals 
79   
80   Int_t    fSetRangeNoise;         // flag for range in noise
81   Double_t fRangeNoise[2];         // range in noise
82   
83   Int_t fIdxSM;                    // active super module
84   Int_t fIdxChamber;               // active chamber 
85   //Int_t fView;
86
87   //char fFileName[256];                  // file with histograms
88   const Char_t *fFileName;              // file with histograms
89   
90   TRootEmbeddedCanvas *fCanvasList[5];  // canvases
91   TH1 *fHistList[5];                    // and histos
92   
93   // 
94   TGCompositeFrame *fGPanel;            // panel with buttons
95   TGCompositeFrame *fGCanvas;           // canvas
96   TGCompositeFrame *fGCanvasUp;         // canvas
97   TGCompositeFrame *fGCanvasDown;       // canvas
98   
99   // steering panel
100   // TGLabel      *fGLabel;
101   TGComboBox   *fGSelectSM;             // selector for Super Module
102   TGComboBox   *fGSelectChamber;        // selector for Chamber 
103   TGComboBox   *fGSelectView;           // select view
104
105   TGTextButton *fGPrevSM;        // button
106   TGTextButton *fGPrevChamber;   // button
107   TGTextButton *fGNextSM;        // button
108   TGTextButton *fGNextChamber;   // button
109   //TGTextButton *fGPlay;
110  
111   //void CreateHistAmplitude();
112   // void CreateHistTimeCharge();
113   //void CreateHistTimeMPV();
114
115  private:
116   AliTRDqaGuiBlackChamber& operator = (const AliTRDqaGuiBlackChamber& /*g*/) { return *this; };
117   AliTRDqaGuiBlackChamber(const AliTRDqaGuiBlackChamber &);
118
119   ClassDef(AliTRDqaGuiBlackChamber,1) // 
120
121 };
122
123 #endif