JG ROOT Tools libraries  version 5.0 - august 2014
RGHistoWindow.hh
Go to the documentation of this file.
1 //======================================================================
2 /*! \file RGHistoWindow.hh
3  *
4  * Include file for class RGHistoWindow
5  */
6 //======================================================================
7 
8 // 18 septembre 2009
9 // - option du constructeur pour ne pas créer immédiatement l'interface
10 // (nécessaire pour la classe RGHistoTools afin de placer les menus
11 // avant les cadres de RGHistoWindow)
12 
13 
14 #ifndef RG_HISTO_WINDOW_HH
15 #define RG_HISTO_WINDOW_HH
16 
17 #include "RGFrameEvent.hh"
18 #include <TPad.h>
19 #include <TCanvas.h>
20 #include <TH1.h>
21 #include <TRootEmbeddedCanvas.h>
22 #include <TGFrame.h>
23 #include <TGSplitter.h>
24 #include <TGButton.h>
25 #include <TGLabel.h>
26 #include <TGNumberEntry.h>
27 
28 #include "RGHistoLimits.hh"
29 #include "RGWidgetFunctions.hh"
30 
31 
32 ///! Histogram window options
34 {
35  // option de choix des histo
36  rghw1DHisto = 0x00000001,
37  rghw2DHisto = 0x00000002,
38  rghw3DHisto = 0x00000004,
39  rghwAllHisto = 0x00000007,
40  rghwCopyHisto = 0x00000008,
41 
42  // options des outils prédéfinis
43  rghwToolSplitter = 0x00000010,
44  rghwPositionLine = 0x00000020,
45  rghwLimitsTool = 0x00000040,
46  rghwLimitsUnderPad = 0x00000080
47 
48 };
49 
50 //======================================================================
51 /*! class RGHistoWindow
52  *
53  * This class defines a window with a plotting zone (canvas) to display
54  * an histogram, and some widgets zone.
55  * Its purpose is to display a single histogram for specific purpose
56  * (the pad should not be divided).
57  *
58  * The following options are defined:
59  *
60  * - \b rghw1DHisto allows 1D histograms
61  * - \b rghw2DHisto allows 2D histograms
62  * - \b rghw3DHisto allows 3D histograms
63  * - \b rghwAllHisto allows 1D, 2D and 3D histograms (if none is allowed
64  * they are all...)
65  * - \b rghwToolSplitter use a splitter for adjustable separation between
66  * canvas and the tools frame.
67  * - \b rghwPositionLine display an information line below the canvas
68  * - \b rghwLimitsTool set the display limits tools for histograms
69  * - \b rghwLimitsUnderPad set the display limits tools under the histogram
70  * pad (default is in tools frame)
71  *
72  * When cursor in on the plotting area, the histogram display can be moved
73  * with keyboard arrow keys.
74  * The + and - keys are for zoom in and out.
75  *
76  *
77  * The (default) interface looks like:
78  *
79  * \image html RGHistoWindow.gif
80  *
81  *
82  * The display limits can also be placed below the plot canvas
83  * (the optional area on the right can be used for additional GUI
84  * elements - see below):
85  *
86  * \image html RGHistoWindow_b.gif
87  *
88  *
89  * It also defines various frames in order to add new elements to the
90  * graphical interface.
91  * The positions of the empty frames are shown here, together with the
92  * (non empty) class frames where new elements can be added:
93  *
94  * \image html RGHistoWindow_frames_a.gif
95  */
96 
97 class RGHistoWindow : public TGTransientFrame,
98  public RGFrameEvent,
99  public RGHistoLimits
100 {
101  //------------------------------------------------------------
102  /*! \object_doc{RGHistoWindow} */
104  //------------------------------------------------------------
105 
106  public:
107  // For debugging (counter to increment dump files number)
108  //static int test_count;
109 
110  static UInt_t canvas_width; ///< Default canvas width
111  static UInt_t canvas_height; ///< Default canvas height
112 
113  protected:
114  UInt_t options; ///< Window options
115  bool limits_widgets; ///< Flag indicating if histogram limits widgets are created
116 
117  TCanvas * canvas_ptr; ///< Canvas pointer
118  TH1 * histo_ptr; ///< Histogram pointer
119  bool histo_copy; ///< Flag if the class works with a copy of the histogram
120 
121  string plot_mode; ///< ROOT options for histogram display
122 
123  // Interface widgets
124  bool inhibit_slot; ///< Prevents recursive calls
125 
126  TRootEmbeddedCanvas * w_canvas; ///< Pointer to embedded canvas
127 
128  // cadres principaux
129  // +------------------------------------------+
130  // | upper frame |
131  // +------------------------------------------+
132  // +------------------------------------------+
133  // | middle frame |
134  // | +-------+ +------------------+ +-------+ |
135  // | | mid. | | center | | mid. | |
136  // | | left | | frame | | right | |
137  // | | frame | | | | frame | |
138  // | | | | | | | |
139  // | | | | up. canvas fr. | | | |
140  // | | | | canvas + tools | | | |
141  // | | | | | | | |
142  // | | | | | | | |
143  // | +-------+ +------------------+ +-------+ |
144  // +------------------------------------------+
145  // +------------------------------------------+
146  // | lower frame |
147  // +------------------------------------------+
148 
149  TGCompositeFrame * w_upper_frame; ///< Upper base frame
150  TGHorizontalFrame * w_middle_frame; ///< Middle base frame
151  TGCompositeFrame * w_middle_left_frame; ///< Middle left frame
152  TGHorizontalFrame * w_center_frame; ///< Middle center frame
153  TGCompositeFrame * w_upper_canvas_frame; ///< Base frame on top of pad
154  TGCompositeFrame * w_middle_right_frame; ///< Middle right frame
155  TGCompositeFrame * w_lower_frame; ///< Lower base frame
156 
157  // cadres de la zone d'outils centrale
158  // +----------------------------------+
159  // | center frame |
160  // | +------------------+ s +-------+ |
161  // | | | p | | |
162  // | | canvas frame | l | tools | |
163  // | | | i | frame | |
164  // | | | t | | |
165  // | | | t | | |
166  // | | position line | e | | |
167  // | +------------------+ r +-------+ |
168  // +----------------------------------+
169  TGVerticalFrame * w_canvas_frame; ///< Canvas frame
170  TGVSplitter * w_splitter; ///< Frames separator
171  TGVerticalFrame * w_tools_frame; ///< Tools frame
172  TGLabel * w_position_line; ///< Position information line
173 
174  // cadre des outils
175  // +----------------------------------+
176  // | tools frame |
177  // | +------------------------------+ |
178  // | | upper tools frame | | définie si le cadre limits
179  // | +------------------------------+ | est défini (sinon = tools frame)
180  // | +------------------------------+ |
181  // | | limits frame | |
182  // | +------------------------------+ |
183  // +----------------------------------+
184  TGCompositeFrame * w_upper_tools_frame; ///< Upper frame for additionnal widgets
185  TGGroupFrame * w_limits_frame; ///< Frame for plot limits
186 
187  TGHorizontalFrame * w_axis_frame; ///< Sous-cadre des axes
188  TGVerticalFrame * w_axis_name_frame; ///< Cadre labels des axes
189  TGLabel * w_x_label; ///< Labels
190  TGLabel * w_y_label; ///< Labels
191  TGLabel * w_z_label; ///< Labels
192  TGVerticalFrame * w_axis_log_frame; ///< Cadre boutons échelle log
193  TGCheckButton * w_x_log_button; ///< Bouton échelle log
194  TGCheckButton * w_y_log_button; ///< Bouton échelle log
195  TGCheckButton * w_z_log_button; ///< Bouton échelle log
196  TGVerticalFrame * w_axis_min_label; ///< Cadre labels valeurs min
197  TGLabel * w_min_label[3]; ///< Labels
198  TGVerticalFrame * w_axis_min_value; ///< Cadre valeurs min
199  TGNumberEntry * w_x_min_entry; ///< Saisie valeur mini
200  TGNumberEntry * w_y_min_entry; ///< Saisie valeur mini
201  TGNumberEntry * w_z_min_entry; ///< Saisie valeur mini
202  TGVerticalFrame * w_axis_max_label; ///< Cadre labels valeurs max
203  TGLabel * w_max_label[3]; ///< Labels
204  TGVerticalFrame * w_axis_max_value; ///< Cadre valeurs min
205  TGNumberEntry * w_x_max_entry; ///< Saisie valeur maxi
206  TGNumberEntry * w_y_max_entry; ///< Saisie valeur maxi
207  TGNumberEntry * w_z_max_entry; ///< Saisie valeur maxi
208  TGVerticalFrame * w_axis_full_frame; ///< Cadre boutons pleine échelle
209  TGTextButton * w_x_full_button; ///< Bouton pleine échelle
210  TGTextButton * w_y_full_button; ///< Bouton pleine échelle
211  TGTextButton * w_z_full_button; ///< Bouton pleine échelle
212  TGVerticalFrame * w_zoom_frame; ///< Cadre boutons zoom
213  TGTextButton * w_unzoom_button; ///< Bouton unzoom
214  TGTextButton * w_auto_button; ///< Bouton échelle automatique
215  TGHorizontalFrame * w_angles_frame; ///< Cadre des angles
216  TGNumberEntry * w_theta_entry; ///< Saisie de l'angle
217  TGNumberEntry * w_phi_entry; ///< Saisie de l'angle
218 
219  //------------------------------------------------------------
220  // Constructors / affectation / destructor
221  public:
222 
223  // Constructor
224  RGHistoWindow ( const TGWindow * main = NULL,
225  TH1 * hptr = NULL,
226  const string plot_opt = "",
227  const UInt_t opts = 0,
228  const bool construct = true,
229  const bool autostart = true );
230 
231  // Copy constructor
232  RGHistoWindow ( const RGHistoWindow &original );
233 
234  // Affectation operator
235  RGHistoWindow & operator = ( const RGHistoWindow &original );
236 
237  // Destructor
238  virtual ~RGHistoWindow();
239 
240  //------------------------------------------------------------
241  protected:
242  void ClassInit ( );
243 
244  //------------------------------------------------------------
245  // Interface construction and execution
246  public:
247  virtual void Construct ( );
248  virtual void ConstructLimits ( );
249 
250  virtual void MapSubwindows ( );
251  virtual void RemapToolsFrame ( );
252  virtual void UpdateWindowTitle ( );
253 
254  virtual void Request ( );
255  virtual void Quit ( );
256 
257  TGCompositeFrame * GetUpperFrame ( ); // inline
258  TGHorizontalFrame * GetMiddleFrame ( ); // inline
259  TGCompositeFrame * GetMiddleLeftFrame ( ); // inline
260  TGHorizontalFrame * GetCenterFrame ( ); // inline
261  TGCompositeFrame * GetUpperCanvasFrame ( ); // inline
262  TGVerticalFrame * GetCanvasFrame ( ); // inline
263  TGCompositeFrame * GetMiddleRightFrame ( ); // inline
264  TGCompositeFrame * GetLowerFrame ( ); // inline
265  TGVerticalFrame * GetToolsFrame ( ); // inline
266  TGCompositeFrame * GetUpperToolsFrame ( ); // inline
267 
268  //------------------------------------------------------------
269  // Pad events
270  virtual void PadEvent ( Int_t event, Int_t x, Int_t y, TObject * selected );
271 
272  virtual void SetPositionNul ( );
273  virtual void SetPositionHisto ( const Double_t xh, const Double_t yh );
274  virtual void SetPositionXAxis ( const Double_t xh );
275  virtual void SetPositionYAxis ( const Double_t yh );
276  virtual void SetPositionZAxis ( const Double_t zh );
277 
278  virtual void XAxisChanged ( );
279  virtual void YAxisChanged ( );
280  virtual void ZAxisChanged ( );
281 
282  virtual void ArrowKeyLeft ( );
283  virtual void ArrowKeyRight ( );
284  virtual void ArrowKeyUp ( );
285  virtual void ArrowKeyDown ( );
286 
287  virtual void ZoomInKey ( );
288  virtual void ZoomOutKey ( );
289 
290  //------------------------------------------------------------
291  // Updates
292  virtual void Reset ( );
293 
294  // Redefinition of RGHistoLimits function
295  // the first one is to avoid compilation warning due
296  // to -Woverloaded-virtual option
297  virtual Int_t SetHisto ( TH1 * hptr, const bool reset = false ); // inline
298  virtual Int_t SetHisto ( TH1 * hptr, const bool reset, const bool redraw );
299 
300 
301  virtual void Redraw ( );
302  virtual void PlotHisto ( );
303  virtual void UpdateLimits ( );
304 
305  virtual bool SetXLog ( const Bool_t b = kTRUE );
306  virtual bool SetYLog ( const Bool_t b = kTRUE );
307  virtual bool SetZLog ( const Bool_t b = kTRUE );
308 
309 
310  virtual void SetXFull ( const Bool_t redraw );
311  virtual void SetYFull ( const Bool_t redraw );
312  virtual void SetZFull ( const Bool_t redraw );
313 
314  // these function are overloaded from RGHistoLimits to
315  // avoid compilation warning
316  virtual void SetXFull ( ); // inline
317  virtual void SetYFull ( ); // inline
318  virtual void SetZFull ( ); // inline
319 
320  //------------------------------------------------------------
321  // Slots
322 
323  virtual void LogXToggled ( Bool_t b );
324  virtual void LogYToggled ( Bool_t b );
325  virtual void LogZToggled ( Bool_t b );
326 
327  virtual void XValueChanged ( );
328  virtual void YValueChanged ( );
329  virtual void ZValueChanged ( );
330 
331  virtual void XFullButtonClicked ( );
332  virtual void YFullButtonClicked ( );
333  virtual void ZFullButtonClicked ( );
334  virtual void UnzoomButtonClicked ( );
335  virtual void AutoButtonClicked ( );
336 
337  virtual void AnglesChanged ( );
338 
339  //------------------------------------------------------------
340  /*! For ROOT dictionary.*/
342 };
343 
344 //----------------------------------------------------------------------
345 // Inline functions
346 #include "icc/RGHistoWindow.icc"
347 
348 //======================================================================
349 #endif
350 
virtual void LogZToggled(Bool_t b)
Definition: RGHistoWindow.cpp:2460
TRootEmbeddedCanvas * w_canvas
Pointer to embedded canvas.
Definition: RGHistoWindow.hh:126
virtual void YValueChanged()
Definition: RGHistoWindow.cpp:2492
TGLabel * w_max_label[3]
Labels.
Definition: RGHistoWindow.hh:203
virtual void Construct()
Definition: RGHistoWindow.cpp:183
RGHistoWindow & operator=(const RGHistoWindow &original)
Definition: RGHistoWindow.cpp:83
Definition: RGFrameEvent.hh:30
TGHorizontalFrame * w_middle_frame
Middle base frame.
Definition: RGHistoWindow.hh:150
TGHorizontalFrame * w_angles_frame
Cadre des angles.
Definition: RGHistoWindow.hh:215
TGVerticalFrame * w_axis_name_frame
Cadre labels des axes.
Definition: RGHistoWindow.hh:188
virtual void ZFullButtonClicked()
Definition: RGHistoWindow.cpp:2552
TGLabel * w_y_label
Labels.
Definition: RGHistoWindow.hh:190
TGHorizontalFrame * w_axis_frame
Sous-cadre des axes.
Definition: RGHistoWindow.hh:187
static UInt_t canvas_width
Default canvas width.
Definition: RGHistoWindow.hh:110
TGVerticalFrame * w_axis_min_value
Cadre valeurs min.
Definition: RGHistoWindow.hh:198
virtual void PadEvent(Int_t event, Int_t x, Int_t y, TObject *selected)
Definition: RGHistoWindow.cpp:948
TGLabel * w_min_label[3]
Labels.
Definition: RGHistoWindow.hh:197
TGCompositeFrame * GetMiddleLeftFrame()
Definition: RGHistoWindow.icc:19
TGNumberEntry * w_z_min_entry
Saisie valeur mini.
Definition: RGHistoWindow.hh:201
virtual void ArrowKeyDown()
Definition: RGHistoWindow.cpp:1614
TGTextButton * w_z_full_button
Bouton pleine échelle.
Definition: RGHistoWindow.hh:211
TGLabel * w_x_label
Labels.
Definition: RGHistoWindow.hh:189
TGCompositeFrame * GetMiddleRightFrame()
Definition: RGHistoWindow.icc:35
virtual void YFullButtonClicked()
Definition: RGHistoWindow.cpp:2544
TGNumberEntry * w_x_max_entry
Saisie valeur maxi.
Definition: RGHistoWindow.hh:205
string plot_mode
ROOT options for histogram display.
Definition: RGHistoWindow.hh:121
bool inhibit_slot
Prevents recursive calls.
Definition: RGHistoWindow.hh:124
virtual void XFullButtonClicked()
Definition: RGHistoWindow.cpp:2536
virtual void SetZFull()
Definition: RGHistoWindow.icc:69
TGNumberEntry * w_phi_entry
Saisie de l&#39;angle.
Definition: RGHistoWindow.hh:217
TH1 * histo_ptr
Histogram pointer.
Definition: RGHistoWindow.hh:118
TGHorizontalFrame * w_center_frame
Middle center frame.
Definition: RGHistoWindow.hh:152
virtual bool SetZLog(const Bool_t b=kTRUE)
Definition: RGHistoWindow.cpp:2303
virtual void ZAxisChanged()
Definition: RGHistoWindow.cpp:1490
TGTextButton * w_auto_button
Bouton échelle automatique.
Definition: RGHistoWindow.hh:214
virtual void LogYToggled(Bool_t b)
Definition: RGHistoWindow.cpp:2451
TGHorizontalFrame * GetCenterFrame()
Definition: RGHistoWindow.icc:23
TGNumberEntry * w_y_min_entry
Saisie valeur mini.
Definition: RGHistoWindow.hh:200
virtual void YAxisChanged()
Definition: RGHistoWindow.cpp:1482
TGCompositeFrame * w_middle_right_frame
Middle right frame.
Definition: RGHistoWindow.hh:154
virtual bool SetYLog(const Bool_t b=kTRUE)
Definition: RGHistoWindow.cpp:2242
TGVerticalFrame * w_axis_min_label
Cadre labels valeurs min.
Definition: RGHistoWindow.hh:196
virtual void ArrowKeyRight()
Definition: RGHistoWindow.cpp:1537
TGCompositeFrame * GetUpperFrame()
Definition: RGHistoWindow.icc:11
TGGroupFrame * w_limits_frame
Frame for plot limits.
Definition: RGHistoWindow.hh:185
TGNumberEntry * w_theta_entry
Saisie de l&#39;angle.
Definition: RGHistoWindow.hh:216
virtual void MapSubwindows()
Definition: RGHistoWindow.cpp:783
TGNumberEntry * w_y_max_entry
Saisie valeur maxi.
Definition: RGHistoWindow.hh:206
TGVerticalFrame * w_axis_max_value
Cadre valeurs min.
Definition: RGHistoWindow.hh:204
TGTextButton * w_unzoom_button
Bouton unzoom.
Definition: RGHistoWindow.hh:213
virtual void Quit()
Definition: RGHistoWindow.cpp:927
virtual void SetXFull()
Definition: RGHistoWindow.icc:61
TGCheckButton * w_z_log_button
Bouton échelle log.
Definition: RGHistoWindow.hh:195
TGTextButton * w_x_full_button
Bouton pleine échelle.
Definition: RGHistoWindow.hh:209
TGVerticalFrame * w_axis_log_frame
Cadre boutons échelle log.
Definition: RGHistoWindow.hh:192
UInt_t options
Window options.
Definition: RGHistoWindow.hh:114
TGCompositeFrame * w_upper_tools_frame
Upper frame for additionnal widgets.
Definition: RGHistoWindow.hh:184
virtual void SetPositionHisto(const Double_t xh, const Double_t yh)
Definition: RGHistoWindow.cpp:1397
virtual void ZoomInKey()
Definition: RGHistoWindow.cpp:1657
TGVSplitter * w_splitter
Frames separator.
Definition: RGHistoWindow.hh:170
TGVerticalFrame * w_zoom_frame
Cadre boutons zoom.
Definition: RGHistoWindow.hh:212
TGCheckButton * w_x_log_button
Bouton échelle log.
Definition: RGHistoWindow.hh:193
TGVerticalFrame * GetToolsFrame()
Definition: RGHistoWindow.icc:47
TGCompositeFrame * w_middle_left_frame
Middle left frame.
Definition: RGHistoWindow.hh:151
TGVerticalFrame * w_axis_full_frame
Cadre boutons pleine échelle.
Definition: RGHistoWindow.hh:208
virtual void UnzoomButtonClicked()
Definition: RGHistoWindow.cpp:2560
TGCheckButton * w_y_log_button
Bouton échelle log.
Definition: RGHistoWindow.hh:194
virtual void LogXToggled(Bool_t b)
Definition: RGHistoWindow.cpp:2442
ClassDef(RGHistoWindow, 0)
virtual void Request()
Definition: RGHistoWindow.cpp:887
TGVerticalFrame * w_axis_max_label
Cadre labels valeurs max.
Definition: RGHistoWindow.hh:202
static UInt_t canvas_height
Default canvas height.
Definition: RGHistoWindow.hh:111
TGLabel * w_position_line
Position information line.
Definition: RGHistoWindow.hh:172
virtual void SetPositionXAxis(const Double_t xh)
Definition: RGHistoWindow.cpp:1433
TGCompositeFrame * GetUpperToolsFrame()
Definition: RGHistoWindow.icc:43
virtual void Reset()
Definition: RGHistoWindow.cpp:1876
virtual ~RGHistoWindow()
Definition: RGHistoWindow.cpp:97
virtual void SetYFull()
Definition: RGHistoWindow.icc:65
TGVerticalFrame * w_canvas_frame
Canvas frame.
Definition: RGHistoWindow.hh:169
virtual void XValueChanged()
Definition: RGHistoWindow.cpp:2471
virtual void ConstructLimits()
Definition: RGHistoWindow.cpp:382
TCanvas * canvas_ptr
Canvas pointer.
Definition: RGHistoWindow.hh:117
TGVerticalFrame * w_tools_frame
Tools frame.
Definition: RGHistoWindow.hh:171
TGNumberEntry * w_z_max_entry
Saisie valeur maxi.
Definition: RGHistoWindow.hh:207
RGHistoWindow(const TGWindow *main=NULL, TH1 *hptr=NULL, const string plot_opt="", const UInt_t opts=0, const bool construct=true, const bool autostart=true)
Definition: RGHistoWindow.cpp:34
virtual void SetPositionYAxis(const Double_t yh)
Definition: RGHistoWindow.cpp:1447
TGCompositeFrame * GetUpperCanvasFrame()
Definition: RGHistoWindow.icc:27
virtual void AutoButtonClicked()
Definition: RGHistoWindow.cpp:2580
TGCompositeFrame * w_upper_frame
Upper base frame.
Definition: RGHistoWindow.hh:149
virtual void RemapToolsFrame()
Definition: RGHistoWindow.cpp:792
virtual void Redraw()
Definition: RGHistoWindow.cpp:1978
bool limits_widgets
Flag indicating if histogram limits widgets are created.
Definition: RGHistoWindow.hh:115
virtual void ZValueChanged()
Definition: RGHistoWindow.cpp:2513
TGNumberEntry * w_x_min_entry
Saisie valeur mini.
Definition: RGHistoWindow.hh:199
virtual void ZoomOutKey()
Definition: RGHistoWindow.cpp:1758
virtual void SetPositionNul()
Definition: RGHistoWindow.cpp:1382
virtual void AnglesChanged()
Definition: RGHistoWindow.cpp:2598
virtual void ArrowKeyUp()
Definition: RGHistoWindow.cpp:1574
virtual void XAxisChanged()
Definition: RGHistoWindow.cpp:1474
virtual void UpdateLimits()
Definition: RGHistoWindow.cpp:2116
virtual void ArrowKeyLeft()
Definition: RGHistoWindow.cpp:1500
TGTextButton * w_y_full_button
Bouton pleine échelle.
Definition: RGHistoWindow.hh:210
Definition: RGHistoWindow.hh:97
GObject(RGHistoWindow)
TGHorizontalFrame * GetMiddleFrame()
Definition: RGHistoWindow.icc:15
TGCompositeFrame * GetLowerFrame()
Definition: RGHistoWindow.icc:39
void ClassInit()
Definition: RGHistoWindow.cpp:108
RGHistoWindowOptions
! Histogram window options
Definition: RGHistoWindow.hh:33
TGLabel * w_z_label
Labels.
Definition: RGHistoWindow.hh:191
TGVerticalFrame * GetCanvasFrame()
Definition: RGHistoWindow.icc:31
TGCompositeFrame * w_upper_canvas_frame
Base frame on top of pad.
Definition: RGHistoWindow.hh:153
bool histo_copy
Flag if the class works with a copy of the histogram.
Definition: RGHistoWindow.hh:119
TGCompositeFrame * w_lower_frame
Lower base frame.
Definition: RGHistoWindow.hh:155
Definition: RGHistoLimits.hh:20
virtual bool SetXLog(const Bool_t b=kTRUE)
Definition: RGHistoWindow.cpp:2199
virtual void SetPositionZAxis(const Double_t zh)
Definition: RGHistoWindow.cpp:1461
virtual void PlotHisto()
Definition: RGHistoWindow.cpp:2106
virtual void UpdateWindowTitle()
Definition: RGHistoWindow.cpp:865
virtual Int_t SetHisto(TH1 *hptr, const bool reset=false)
Definition: RGHistoWindow.icc:56