TRD module
[u/mrichter/AliRoot.git] / TRD / TRDgui / AliTRDqaGuiClustersStack.h
1 #ifndef ALITRDQAGUICLUSTERSSTACK_H
2 #define ALITRDQAGUICLUSTERSSTACK_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: AliTRDqaGuiClustersStack.h 23387 2008-01-17 17:25:16Z cblume $ */
8
9 #include "TGFrame.h"  
10
11 class TH1D;
12 class TString;
13 class TGLabel;
14 class TGComboBox;
15 class TGTextButton;
16 class TRootEmbeddedCanvas;
17
18 class AliTRDqaGuiClustersStack : public TGCompositeFrame {
19
20  public:
21
22   AliTRDqaGuiClustersStack();
23   AliTRDqaGuiClustersStack(TGWindow *parent);
24   ~AliTRDqaGuiClustersStack() {}
25
26   
27   void SetQAFile(const char *filename);
28   void SetSM(Int_t idxSM);
29   void SetStack(Int_t idxStack);
30   void SetView(Int_t idxView);
31
32   // void Play();  // *SLOT*
33   void PreviusStack() {if (fIdxStack > 0) SetStack(fIdxStack-1);}   // *SLOT*
34   void NextStack()    {if (fIdxStack < fgknStack-1) SetStack(fIdxStack+1);}   // *SLOT*
35
36   void PreviusSM() {if (fIdxSM > 0) SetSM(fIdxSM-1);}      // *SLOT*
37   void NextSM()    {if (fIdxSM < fgknSM-1) SetSM(fIdxSM+1);}   // *SLOT*
38   
39   void SelectStack(Int_t idx) {SetStack(idx);} // *SLOT*
40   void SelectSM(Int_t idx) {SetSM(idx);}       // *SLOT*
41   void SelectView(Int_t idx) {SetView(idx);}   // *SLOT*
42
43
44  protected:
45
46   static const Int_t fgknSM;     // number of Super Modules
47   static const Int_t fgknStack;  // number of stacks
48   static const Int_t fgknCh;     // number of chambers per stack
49
50   Int_t fIdxSM;      // active super module
51   Int_t fIdxStack;   // active stack
52   Int_t fView;       // data type 
53
54   //char fFileName[256];      // file with histograms
55   const Char_t *fFileName;    // file with histograms
56   
57   TRootEmbeddedCanvas *fCanvasList[6];   // canvases
58   TH1D *fHistList[6];                    // and histos
59   
60   // 
61   TGCompositeFrame *fGPanel;   // panel with buttons
62   TGCompositeFrame *fGCanvas;  // and with canvases
63   
64   // steering panel
65   // TGLabel      *fGLabel;
66   TGComboBox   *fGSelectSM;        // select super module
67   TGComboBox   *fGSelectStack;     // select stack
68   TGComboBox   *fGSelectView;      // select data type
69
70   TGTextButton *fGPrevSM;       // button
71   TGTextButton *fGPrevStack;    // button
72   TGTextButton *fGNextSM;       // buton
73   TGTextButton *fGNextStack;    // button
74   TGTextButton *fGPlay;         // inactive button
75  
76   void CreateHistAmplitude();
77   void CreateHistTimeCharge();
78   void CreateHistTimeMPV();
79
80  private:  
81   AliTRDqaGuiClustersStack& operator = (const AliTRDqaGuiClustersStack& /*g*/) { return *this; };
82   AliTRDqaGuiClustersStack(const AliTRDqaGuiClustersStack &);
83   ClassDef(AliTRDqaGuiClustersStack,2) // 
84 };
85
86 #endif