1 #ifndef ALITPCCALIBVIEWERGUI
2 #define ALITPCCALIBVIEWERGUI
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
7 /* $Id: AliTPCCalibViewerGUI.h,v */
9 ///////////////////////////////////////////////////////////////////////////////
11 // GUI for the AliTPCCalibViewer //
12 // used for the calibration monitor //
14 ///////////////////////////////////////////////////////////////////////////////
24 #include <TGListBox.h>
25 #include <TGComboBox.h>
26 #include <TGNumberEntry.h>
27 #include <TRootEmbeddedCanvas.h>
28 #include <TGSplitter.h>
29 #include <TGButtonGroup.h>
32 #include "AliTPCCalibViewer.h"
35 class AliTPCCalibViewerGUI : public TGMainFrame {
37 AliTPCCalibViewer *fViewer; // CalibViewer object used for drawing
39 TGCompositeFrame *fContAll; // container for all GUI elements
40 TGCompositeFrame *fContLeft; // container for GUI elements on left side
41 TGCompositeFrame *fContRight; // container for GUI elements on right side
42 TGCompositeFrame *fContCenter; // container for GUI elements at the center
43 TGCompositeFrame *fContPlotOpt; // container for plot options GUI elements
44 TGCompositeFrame *fContDrawOpt; // container for draw options GUI elements
45 TGCompositeFrame *fContNormalized; // container for normalization options GUI elements
46 TGCompositeFrame *fContCustom; // container for custom draw command GUI elements
47 TGCompositeFrame *fContCuts; // container for cut options GUI elements
48 TGCompositeFrame *fContSector; // container for sector GUI elements
49 TGCompositeFrame *fContAddCuts; // container for additional cut command GUI elements
50 TGListBox *fListVariables; // listbox with possible variables
51 TGTextButton *fBtnDraw; // draw button
52 TRootEmbeddedCanvas *fCanvMain; // main drawing canvas
53 TGRadioButton *fRadioRaw; // raw radio button
54 TGRadioButton *fRadioNormalized; // normalized radio button
55 TGRadioButton *fRadioCustom; // custom radio button
56 TGRadioButton *fRadio1D; // 1D radio button
57 TGRadioButton *fRadio2D; // 2D radio button
58 TGRadioButton *fRadioTPC; // TPC radio button
59 TGRadioButton *fRadioSideA; // side A radio button
60 TGRadioButton *fRadioSideC; // side C radio button
61 TGRadioButton *fRadioSector; // sector radio button
62 TGCheckButton *fChkAuto; // automatic redraw checkbox
63 TGComboBox *fComboMethod; // normalization methods dropdown box
64 TGListBox *fListNormalization; // listbox with possible normalization variables
65 TGTextEntry *fTxtCustom; // text box for custom draw command
66 TGNumberEntry *fNmbSector; // number entry box for specifying the sector
67 TGCheckButton *fChkAddCuts; // additional cuts check box
68 TGTextEntry *fTxtAddCuts; // additional cuts text box
70 void Initialize(char* fileName); // initializes the GUI with default settings and opens tree for drawing
73 AliTPCCalibViewerGUI(const TGWindow *p, UInt_t w, UInt_t h, char* fileName); // constructor; fileName specifies the ROOT tree used for drawing
74 AliTPCCalibViewerGUI(const AliTPCCalibViewerGUI &c); // copy constructor
75 AliTPCCalibViewerGUI &operator = (const AliTPCCalibViewerGUI ¶m); // assignment operator
77 virtual ~AliTPCCalibViewerGUI();
78 virtual void CloseWindow();
80 void HandleButtons(Int_t id = -1); // handles mutual radio button exclusions
81 void DoNewSelection(); // decides whether to redraw if user makes another selection
82 void DoDraw(); // main method for drawing according to user selection
83 ClassDef(AliTPCCalibViewerGUI, 0)