JG ROOT Tools libraries  version 5.0 - august 2014
RGFitBase2D.hh
Go to the documentation of this file.
1 //======================================================================
2 /*! \file RGFitBase2D.hh
3  *
4  * Include file for class RGFitBase2D
5  */
6 //======================================================================
7 
8 #ifndef RG_FIT_BASE_2D_HH
9 #define RG_FIT_BASE_2D_HH
10 
11 #include "RFitBase2D.hh"
12 #include "RGFitDisplayer2D.hh"
13 #include "RGHistoWindow.hh"
14 
15 #include <TLine.h>
16 #include <TMarker.h>
17 
18 #include <TSystem.h>
19 #include <TPad.h>
20 #include <TCanvas.h>
21 #include <TPolyLine.h>
22 #include <TGFrame.h>
23 #include <TGCanvas.h>
24 #include <TGButton.h>
25 #include <TGLabel.h>
26 #include <TGNumberEntry.h>
27 #include <TGComboBox.h>
28 #include <TRootEmbeddedCanvas.h>
29 #include <TGDoubleSlider.h>
30 #include <TGSplitter.h>
31 
32 #include <TColor.h>
33 #include <TGFileDialog.h>
34 #include <TFile.h>
35 
36 // include pour les types de points de saisie.
37 #include "RGFitBase1D.hh"
38 
39 //======================================================================
40 /*! \class RGFitBase2D
41  *
42  * Base graphical user interface class for 2D histogram fits.
43  *
44  * The interface is started with the Request() function.
45  * This is not done automatically, in order to preset parameters
46  * and options for the fit.
47  *
48  * In the same manner, when the interface is closed, the instance is
49  * not destroyed, so that fit results can still be accessible.
50  * If it is allocated dynamically (with new), it must be deleted by
51  * the calling program.
52  *
53  * When the interface is closed, a returned value can be accessed with
54  * the GetReturnValue() function.
55  * This value is:
56  * - -1 if interface was not started;
57  * - 0 if it was closed with button to accept result (done);
58  * - 1 if it was closed with button to reject result (cancel).
59  */
60 class RGFitBase2D : virtual public RFitBase2D,
61  public RGHistoWindow
62 {
63  //------------------------------------------------------------
64  /*! \object_doc{RGFitBase2D} */
66  //------------------------------------------------------------
67 
68  friend class RGFitDisplayer2D;
69 
70  public:
71 
72  static TAttLine limit_line_att; ///< Fit limits display attributes de fit
73  static TAttLine select_line_att; ///< Selected line attributes
74  static TAttMarker limit_marker_att; ///< Fit limits markers attributes
75  static TAttMarker select_marker_att; ///< Selected marker attributes
76 
77  static UInt_t canvas_width; ///< Embedded canvas default width
78  static UInt_t canvas_height; ///< Embedded canvas default height
79 
80  protected:
81 
82  static string file_dir; ///< Output directory name
83  static string file_root_file; ///< Output ROOT file
84  static string file_param_file; ///< Output parameter file
85  static string file_output_file; ///< Output result file
86 
87  // variables pour l'interface
88  bool exit_flag; ///< End of request check
89  bool constructed; ///< Check if interface is constructed
90  Int_t return_value; ///< Interface return value
91 
92  const TGWindow * main_window; ///< Parent application main window
93 
94  Double_t init_x1; ///< Initial display lower limit
95  Double_t init_x2; ///< Initial display upper limit
96  Double_t init_y1; ///< Initial display lower limit
97  Double_t init_y2; ///< Initial display upper limit
98 
99  // variable pour sélection des points
100  Double_t select_distance; ///< Point selection distance (in pixel)
101  Int_t select_point; ///< Point at selection distance (-1 if no point)
102  bool move_lock; ///< Used to check if point is moving
103 
104  // variable pour saisie des points
105  Int_t np_max; ///< Maximum number of preset points
106  #ifndef __MAKECINT__
107  bool * pt_set; ///< Array of points defined
108  bool * pt_pre; ///< Array of preset points
109  double * pt_x; ///< Array of points X positions
110  double * pt_y; ///< Array of points Y positions
111  #endif
112  TList obj_list; ///< List of objects to drawList of objects to draw
113 
114  TH2 * h_fct; ///<Fit function histogram pointer
115  TH2 * h_diff; ///<Difference histogram pointer
116  TH2 * h_err_pos; ///<Function positive error (square root) histogram
117  TH2 * h_err_neg; ///<Function negative error (square root) histogram
118 
119  // Widgets spécifiques
120 
121  /*! Variable used to avoid recursive loops in the widgets slots for
122  * parameters values (in ROOT version 5.12, it is not possible to
123  * set values without emission of the signal for TGNumberEntryList).*/
125 
126  TGGroupFrame * w_fit_limits_frame; ///< Fit zone frame
127  TGHorizontalFrame * w_fit_limit; ///< Fit limits line
128  TGNumberEntry * w_fit_xinf_value; ///< Lower limit value
129  TGNumberEntry * w_fit_yinf_value; ///< Lower limit value
130  TGNumberEntry * w_fit_xsup_value; ///< Upper limit value
131  TGNumberEntry * w_fit_ysup_value; ///< Upper limit value
132  TGTextButton * w_fit_limit_set; ///< Limits validation button
133  TGTextButton * w_fit_limit_disp; ///< Button to set fit limits to display
134 
135  TGHorizontalFrame * w_buttons_frame; ///< Buttons frame
136  TGGroupFrame * w_fit_but_group; ///< Group for fit buttons
137  TGComboBox * w_fit_mode_select; ///< Fit mode selection
138  TGTextButton * w_preset_button; ///< Full precalculation button
139  TGTextButton * w_fit_button; ///< Fit button
140  TGTextButton * w_set_fit_button; ///< Precalculation and fit button
141  TGGroupFrame * w_param_but_group; ///< Group for parameters buttons
142  TGTextButton * w_view_button; ///< Result display button
143  TGTextButton * w_save_button; ///< Fit data save button
144  TGTextButton * w_param_button; ///< Parameters save button
145  TGTextButton * w_update_button; ///< Interface update button
146  TGGroupFrame * w_funct_but_group; ///< Group for functions buttons
147  TGTextButton * w_clear_button; ///< Clear fit histograms button
148  TGTextButton * w_funct_button; ///< Save functions button
149  TGTextButton * w_draw_button; ///< Plot fit histograms button
150  TGTextButton * w_display_button; ///< Separated display button
151  TGVerticalFrame * w_global_but_frame; ///< Frame for general buttons
152  TGTextButton * w_reset_button; ///< Reset interface button
153  TGTextButton * w_load_button; ///< Fit data read button
154  TGTextButton * w_cancel_button; ///< Cancel button (close interface)
155  TGTextButton * w_done_button; ///< Done button (close interface)
156 
157  //----------------------------------------------------------
158  public:
159  // Constructeurs
160  RGFitBase2D ( const TGWindow * parent, TH2 *hptr, TH2 * herr = NULL );
161  RGFitBase2D ( const TGWindow * parent, TH2 *hptr, const Double_t x1, const Double_t x2,
162  const Double_t y1, const Double_t y2 );
163  RGFitBase2D ( const TGWindow * parent, TH2 *hptr, TH2 * herr, const Double_t x1, const Double_t x2,
164  const Double_t y1, const Double_t y2 );
165 
166  protected:
167  RGFitBase2D ( const RGFitBase2D & original );
168 
169  public:
170  // Destructeur
171  virtual ~RGFitBase2D ( );
172 
173  protected:
174  void ClassInit ( );
175 
176  public:
177  //----------------------------------------------------------
178  // gestion de l'interface
179  virtual void Init ( );
180  virtual void Construct ( );
181  virtual void ConstructLimits ( );
182  virtual void ConstructFitData ( );
183  virtual void ConstructActions ( );
184 
185  /*! Fonction qui démarre l'interface graphique (voir classe dérivée).*/
186  virtual void Request ( ) = 0;
187  virtual void Quit ( );
188 
189  virtual Int_t GetReturnValue ( );
190  virtual TH1 * GetHistoPtr ( ) const;
191 
192  virtual void Redraw ( );
193  virtual void DrawPadHisto ( const char *opts = "COL", const Double_t zinf = 0., const Double_t zsup = 0.);
194 
195  //----------------------------------------------------------
196  // Surchage des fonctions de la classe RFitBase2D
197  // (pour associer la mise à jour de l'interface graphique)
198  virtual void SetPlotLimits ( const Double_t x1, const Double_t x2, const Double_t y1, const Double_t y );
199  virtual void SetFitLimits ( const Double_t x1, const Double_t x2, const Double_t y1, const Double_t y2 );
200  virtual void SetFitMode ( const Int_t mode );
201 
202  /*! Creation d'une structure de données relatives au fit (voir classes dérivées).*/
203  virtual RFitData2D * CreateFitData ( ) = 0;
204  virtual RFitData2D * GetFitData ( );
205  virtual void SetFitData ( const RFitData2D * fit_data );
206 
207  virtual void GetDisplayMinMax ( Double_t & min, Double_t & max ) const;
208  virtual void AutoScale ( ) const;
209 
210  virtual void ResetFunctions ( );
211  virtual void CalcFunctions ( const bool bg = false );
212  virtual bool SaveFunctions ( const string &fname = "" ) const;
213 
214  //----------------------------------------------------------
215  // Fonctions liées à la saisie des points
216 
217  protected:
218  virtual void AnyEvent ( const Double_t x, const Double_t y );
219 
220  // Renvoit le point le plus proche (distance en pixels)
221  virtual Int_t SelectedPoint ( const Double_t x, const Double_t y );
222  virtual Int_t GetPointType ( const Int_t p );
223 
224  // Retrace les points saisis
225  virtual void RedrawPoints ( );
226 
227  // bouton 1 pour créer ou déplacer un point
228  virtual void MouseButton1Down ( const Double_t x, const Double_t y );
229  virtual void MouseButton1Up ( const Double_t x, const Double_t y );
230 
231  // bouton 2 pour supprimer un point
232  virtual void MouseButton2Down ( const Double_t x, const Double_t y );
233  virtual void MouseButton2Up ( const Double_t x, const Double_t y );
234 
235  virtual void AddPoint ( const Double_t x, const Double_t y, const bool select = true );
236  virtual void MovePoint ( const Int_t p, const Double_t x, const Double_t y );
237  virtual void DeletePoint ( const Int_t p );
238 
239  virtual void PointMoved ( const Int_t p );
240  virtual void PointSelected ( const Int_t p );
241  virtual void PointUnselected ( const Int_t p );
242 
243  //----------------------------------------------------------
244  // Fonctions de mise à jour de l'interface
245  // en principe, elles devraient être surchargées par les classes dérivées
246 
247  // remise à jour de l'interface lorsque les paramètres de fit ont
248  // été perdus (appel à InitMode())
249  virtual void ParamUpdateAll ( );
250 
251 
252  // points de saisie -> paramètres de fit (classe de base)
253  virtual void PointsToParam ( );
254  virtual void PointsToParamLimits ( );
255 
256  // points de saisie -> valeurs widgets
257  virtual void PointsToWidget ( );
258  virtual void PointsToWidgetLimits ( );
259 
260 
261  // valeurs widgets -> paramètres de fit (classe de base)
262  virtual void WidgetsToParam ( );
263  virtual void WidgetsToParamLimits ( );
264  virtual void WidgetsToParamFitMode ( );
265 
266  // valeurs widgets -> points de saisie
267  virtual void WidgetsToPoint ( );
268  virtual void WidgetsToPointLimits ( );
269 
270 
271  // paramètres de fit (classe de base) -> valeurs des widgets
272  virtual void ParamToWidget ( );
273  virtual void ParamToWidgetLimits ( );
274  virtual void ParamToWidgetFitMode ( );
275 
276  // paramètres de fit (classe de base) -> points de saisie
277  virtual void ParamToPoint ( );
278  virtual void ParamToPointLimits ( );
279 
280 
281  //----------------------------------------------------------
282  // affichage des widgets
283  virtual void GuiUpdateOptions ( );
284  virtual void GuiUpdateDisplay ( );
285 
286  //----------------------------------------------------------
287  // Fonctions globales de fit
288  virtual void GuiPreset ( );
289  virtual void GuiFit ( );
290 
291  virtual void GuiTextView ( );
292  virtual void GuiSaveFitData ( );
293  virtual void GuiUpdate ( );
294  virtual void GuiWriteParam ( );
295 
296  virtual void GuiWriteFct ( );
297  virtual void GuiDrawFct ( );
298  virtual void GuiDisplayFct ( );
299 
300  virtual void GuiReset ( );
301  virtual void GuiLoadFitData ( );
302 
303  //----------------------------------------------------------
304  // SLOTS
305 
306  public:
307  virtual void FitModeSelected ( Int_t m );
308 
309  virtual void PresetButton ( );
310  virtual void FitButton ( );
311  virtual void PresetFitButton ( );
312 
313  virtual void ViewButton ( );
314  virtual void SaveButton ( );
315  virtual void ParamButton ( );
316  virtual void UpdateButton ( );
317 
318  virtual void FunctButton ( );
319  virtual void DrawButton ( );
320  virtual void DisplayButton ( );
321  virtual void ClearButton ( );
322 
323  virtual void ResetButton ( );
324  virtual void LoadButton ( );
325  virtual void CancelButton ( );
326  virtual void DoneButton ( );
327 
328  virtual void FitXInfLimitChanged ( Long_t n );
329  virtual void FitXInfLimitTextChanged ( const char * str );
330  virtual void FitYInfLimitChanged ( Long_t n );
331  virtual void FitYInfLimitTextChanged ( const char * str );
332  virtual void FitXSupLimitChanged ( Long_t n );
333  virtual void FitXSupLimitTextChanged ( const char * str );
334  virtual void FitYSupLimitChanged ( Long_t n );
335  virtual void FitYSupLimitTextChanged ( const char * str );
336  virtual void FitLimitsSet ( );
337  virtual void FitLimitsToDisplay ( );
338 
339  //------------------------------------------------------------
340  /*! For ROOT dictionary.*/
341  public:
343 };
344 
345 //----------------------------------------------------------------------
346 // Inline functions
347 #include "icc/RGFitBase2D.icc"
348 
349 //======================================================================
350 #endif
static string file_output_file
Output result file.
Definition: RGFitBase2D.hh:85
virtual void SetFitData(const RFitData2D *fit_data)
Definition: RGFitBase2D.cpp:1111
Int_t select_point
Point at selection distance (-1 if no point)
Definition: RGFitBase2D.hh:101
virtual void ParamToPointLimits()
Definition: RGFitBase2D.cpp:2006
virtual void ResetFunctions()
Definition: RGFitBase2D.cpp:1657
virtual void PresetButton()
Definition: RGFitBase2D.cpp:2414
static TAttLine select_line_att
Selected line attributes.
Definition: RGFitBase2D.hh:73
virtual void FitXInfLimitTextChanged(const char *str)
Definition: RGFitBase2D.cpp:2538
virtual void ParamToWidget()
Definition: RGFitBase2D.cpp:1946
TGTextButton * w_update_button
Interface update button.
Definition: RGFitBase2D.hh:145
virtual void Redraw()
Definition: RGFitBase2D.cpp:864
virtual void WidgetsToPointLimits()
Definition: RGFitBase2D.cpp:1925
Double_t init_y2
Initial display upper limit.
Definition: RGFitBase2D.hh:97
virtual void MouseButton2Up(const Double_t x, const Double_t y)
Definition: RGFitBase2D.cpp:1470
virtual void DrawButton()
Definition: RGFitBase2D.cpp:2464
TGGroupFrame * w_fit_but_group
Group for fit buttons.
Definition: RGFitBase2D.hh:136
RGFitBase2D(const TGWindow *parent, TH2 *hptr, TH2 *herr=NULL)
Definition: RGFitBase2D.cpp:41
TGNumberEntry * w_fit_xsup_value
Upper limit value.
Definition: RGFitBase2D.hh:130
virtual void GuiSaveFitData()
Definition: RGFitBase2D.cpp:2118
TGTextButton * w_display_button
Separated display button.
Definition: RGFitBase2D.hh:150
virtual void DisplayButton()
Definition: RGFitBase2D.cpp:2472
TGGroupFrame * w_param_but_group
Group for parameters buttons.
Definition: RGFitBase2D.hh:141
static UInt_t canvas_width
Embedded canvas default width.
Definition: RGFitBase2D.hh:77
Definition: RFitBase2D.hh:38
virtual void GuiUpdateDisplay()
Definition: RGFitBase2D.cpp:2028
void ClassInit()
Definition: RGFitBase2D.cpp:257
virtual void ParamToWidgetLimits()
Definition: RGFitBase2D.cpp:1974
virtual void SaveButton()
Definition: RGFitBase2D.cpp:2443
static UInt_t canvas_height
Embedded canvas default height.
Definition: RGFitBase2D.hh:78
Int_t np_max
Maximum number of preset points.
Definition: RGFitBase2D.hh:105
static string file_dir
Output directory name.
Definition: RGFitBase2D.hh:82
TGTextButton * w_cancel_button
Cancel button (close interface)
Definition: RGFitBase2D.hh:154
TGTextButton * w_load_button
Fit data read button.
Definition: RGFitBase2D.hh:153
virtual void AnyEvent(const Double_t x, const Double_t y)
Definition: RGFitBase2D.cpp:1392
virtual void FitYInfLimitChanged(Long_t n)
Definition: RGFitBase2D.cpp:2559
TGTextButton * w_clear_button
Clear fit histograms button.
Definition: RGFitBase2D.hh:147
virtual void PointsToParam()
Definition: RGFitBase2D.cpp:1768
bool move_lock
Used to check if point is moving.
Definition: RGFitBase2D.hh:102
static TAttMarker limit_marker_att
Fit limits markers attributes.
Definition: RGFitBase2D.hh:74
TH2 * h_fct
Fit function histogram pointer.
Definition: RGFitBase2D.hh:114
virtual void CalcFunctions(const bool bg=false)
Definition: RGFitBase2D.cpp:1673
virtual void GuiWriteParam()
Definition: RGFitBase2D.cpp:2176
TH2 * h_err_neg
Function negative error (square root) histogram.
Definition: RGFitBase2D.hh:117
virtual void ClearButton()
Definition: RGFitBase2D.cpp:2486
virtual void GetDisplayMinMax(Double_t &min, Double_t &max) const
Definition: RGFitBase2D.cpp:1170
virtual void AutoScale() const
Definition: RGFitBase2D.cpp:1213
virtual void ParamToPoint()
Definition: RGFitBase2D.cpp:1996
virtual void WidgetsToParam()
Definition: RGFitBase2D.cpp:1881
virtual Int_t SelectedPoint(const Double_t x, const Double_t y)
Definition: RGFitBase2D.cpp:1233
TGTextButton * w_fit_limit_set
Limits validation button.
Definition: RGFitBase2D.hh:132
virtual void PresetFitButton()
Definition: RGFitBase2D.cpp:2428
virtual void FitXInfLimitChanged(Long_t n)
Definition: RGFitBase2D.cpp:2531
TGNumberEntry * w_fit_xinf_value
Lower limit value.
Definition: RGFitBase2D.hh:128
Int_t return_value
Interface return value.
Definition: RGFitBase2D.hh:90
virtual void GuiPreset()
Definition: RGFitBase2D.cpp:2056
double * pt_x
Array of points X positions.
Definition: RGFitBase2D.hh:109
virtual void PointSelected(const Int_t p)
Definition: RGFitBase2D.cpp:1602
virtual void WidgetsToParamFitMode()
Definition: RGFitBase2D.cpp:1905
Definition: RGFitDisplayer2D.hh:21
virtual void WidgetsToPoint()
Definition: RGFitBase2D.cpp:1916
virtual void SetFitLimits(const Double_t x1, const Double_t x2, const Double_t y1, const Double_t y2)
Definition: RGFitBase2D.cpp:1012
Double_t init_y1
Initial display lower limit.
Definition: RGFitBase2D.hh:96
virtual void ConstructLimits()
Definition: RGFitBase2D.cpp:446
virtual void GuiDrawFct()
Definition: RGFitBase2D.cpp:2223
virtual Int_t GetPointType(const Int_t p)
Definition: RGFitBase2D.cpp:1291
virtual void PointsToParamLimits()
Definition: RGFitBase2D.cpp:1779
TList obj_list
List of objects to drawList of objects to draw.
Definition: RGFitBase2D.hh:112
virtual void LoadButton()
Definition: RGFitBase2D.cpp:2501
virtual void MouseButton2Down(const Double_t x, const Double_t y)
Definition: RGFitBase2D.cpp:1461
virtual void FitYInfLimitTextChanged(const char *str)
Definition: RGFitBase2D.cpp:2566
virtual void GuiDisplayFct()
Definition: RGFitBase2D.cpp:2243
virtual RFitData2D * CreateFitData()=0
virtual void GuiFit()
Definition: RGFitBase2D.cpp:2070
virtual void FitButton()
Definition: RGFitBase2D.cpp:2421
virtual void SetFitMode(const Int_t mode)
Definition: RGFitBase2D.cpp:1063
bool inhibit_value_slot
Definition: RGFitBase2D.hh:124
virtual void ParamToWidgetFitMode()
Definition: RGFitBase2D.cpp:1957
TGTextButton * w_funct_button
Save functions button.
Definition: RGFitBase2D.hh:148
virtual void SetPlotLimits(const Double_t x1, const Double_t x2, const Double_t y1, const Double_t y)
Definition: RGFitBase2D.cpp:981
virtual TH1 * GetHistoPtr() const
Definition: RGFitBase2D.icc:12
TGVerticalFrame * w_global_but_frame
Frame for general buttons.
Definition: RGFitBase2D.hh:151
virtual void AddPoint(const Double_t x, const Double_t y, const bool select=true)
Definition: RGFitBase2D.cpp:1486
virtual void ResetButton()
Definition: RGFitBase2D.cpp:2494
Double_t init_x1
Initial display lower limit.
Definition: RGFitBase2D.hh:94
virtual ~RGFitBase2D()
Definition: RGFitBase2D.cpp:239
virtual void GuiUpdate()
Definition: RGFitBase2D.cpp:2103
TGComboBox * w_fit_mode_select
Fit mode selection.
Definition: RGFitBase2D.hh:137
const TGWindow * main_window
Parent application main window.
Definition: RGFitBase2D.hh:92
virtual void PointUnselected(const Int_t p)
Definition: RGFitBase2D.cpp:1628
static TAttLine limit_line_att
Fit limits display attributes de fit.
Definition: RGFitBase2D.hh:72
TGTextButton * w_preset_button
Full precalculation button.
Definition: RGFitBase2D.hh:138
virtual void Construct()
Definition: RGFitBase2D.cpp:357
virtual void GuiLoadFitData()
Definition: RGFitBase2D.cpp:2329
virtual void FunctButton()
Definition: RGFitBase2D.cpp:2479
virtual void Request()=0
virtual void MovePoint(const Int_t p, const Double_t x, const Double_t y)
Definition: RGFitBase2D.cpp:1526
virtual void RedrawPoints()
Definition: RGFitBase2D.cpp:1305
virtual void ParamButton()
Definition: RGFitBase2D.cpp:2450
TGTextButton * w_fit_limit_disp
Button to set fit limits to display.
Definition: RGFitBase2D.hh:133
virtual void DrawPadHisto(const char *opts="COL", const Double_t zinf=0., const Double_t zsup=0.)
Definition: RGFitBase2D.cpp:892
virtual void CancelButton()
Definition: RGFitBase2D.cpp:2509
TGGroupFrame * w_fit_limits_frame
Fit zone frame.
Definition: RGFitBase2D.hh:126
ClassDef(RGFitBase2D, 0)
virtual void DoneButton()
Definition: RGFitBase2D.cpp:2519
virtual bool SaveFunctions(const string &fname="") const
Definition: RGFitBase2D.cpp:1694
virtual void FitYSupLimitTextChanged(const char *str)
Definition: RGFitBase2D.cpp:2620
GObjectV(RGFitBase2D)
TGHorizontalFrame * w_fit_limit
Fit limits line.
Definition: RGFitBase2D.hh:127
virtual void GuiTextView()
Definition: RGFitBase2D.cpp:2087
static string file_param_file
Output parameter file.
Definition: RGFitBase2D.hh:84
TH2 * h_err_pos
Function positive error (square root) histogram.
Definition: RGFitBase2D.hh:116
virtual void MouseButton1Down(const Double_t x, const Double_t y)
Definition: RGFitBase2D.cpp:1428
TGTextButton * w_fit_button
Fit button.
Definition: RGFitBase2D.hh:139
TGGroupFrame * w_funct_but_group
Group for functions buttons.
Definition: RGFitBase2D.hh:146
virtual void FitYSupLimitChanged(Long_t n)
Definition: RGFitBase2D.cpp:2613
TGTextButton * w_view_button
Result display button.
Definition: RGFitBase2D.hh:142
virtual void FitXSupLimitChanged(Long_t n)
Definition: RGFitBase2D.cpp:2586
virtual void MouseButton1Up(const Double_t x, const Double_t y)
Definition: RGFitBase2D.cpp:1448
Double_t select_distance
Point selection distance (in pixel)
Definition: RGFitBase2D.hh:100
Definition: RGFitBase2D.hh:60
TH2 * h_diff
Difference histogram pointer.
Definition: RGFitBase2D.hh:115
virtual void DeletePoint(const Int_t p)
Definition: RGFitBase2D.cpp:1540
virtual void ViewButton()
Definition: RGFitBase2D.cpp:2436
TGNumberEntry * w_fit_yinf_value
Lower limit value.
Definition: RGFitBase2D.hh:129
TGTextButton * w_param_button
Parameters save button.
Definition: RGFitBase2D.hh:144
virtual void PointsToWidgetLimits()
Definition: RGFitBase2D.cpp:1848
static string file_root_file
Output ROOT file.
Definition: RGFitBase2D.hh:83
virtual Int_t GetReturnValue()
Definition: RGFitBase2D.icc:18
virtual void FitXSupLimitTextChanged(const char *str)
Definition: RGFitBase2D.cpp:2593
virtual void UpdateButton()
Definition: RGFitBase2D.cpp:2457
virtual void FitLimitsSet()
Definition: RGFitBase2D.cpp:2639
virtual void GuiUpdateOptions()
Definition: RGFitBase2D.cpp:2043
virtual void Quit()
Definition: RGFitBase2D.cpp:846
virtual void FitLimitsToDisplay()
Definition: RGFitBase2D.cpp:2659
Definition: RGHistoWindow.hh:97
TGTextButton * w_save_button
Fit data save button.
Definition: RGFitBase2D.hh:143
virtual RFitData2D * GetFitData()
Definition: RGFitBase2D.cpp:1075
bool * pt_pre
Array of preset points.
Definition: RGFitBase2D.hh:108
virtual void ParamUpdateAll()
Definition: RGFitBase2D.cpp:1746
Double_t init_x2
Initial display upper limit.
Definition: RGFitBase2D.hh:95
TGTextButton * w_reset_button
Reset interface button.
Definition: RGFitBase2D.hh:152
virtual void GuiWriteFct()
Definition: RGFitBase2D.cpp:2255
TGHorizontalFrame * w_buttons_frame
Buttons frame.
Definition: RGFitBase2D.hh:135
virtual void PointMoved(const Int_t p)
Definition: RGFitBase2D.cpp:1555
TGTextButton * w_set_fit_button
Precalculation and fit button.
Definition: RGFitBase2D.hh:140
virtual void ConstructFitData()
Definition: RGFitBase2D.cpp:438
bool constructed
Check if interface is constructed.
Definition: RGFitBase2D.hh:89
static TAttMarker select_marker_att
Selected marker attributes.
Definition: RGFitBase2D.hh:75
bool * pt_set
Array of points defined.
Definition: RGFitBase2D.hh:107
bool exit_flag
End of request check.
Definition: RGFitBase2D.hh:88
TGNumberEntry * w_fit_ysup_value
Upper limit value.
Definition: RGFitBase2D.hh:131
TGTextButton * w_done_button
Done button (close interface)
Definition: RGFitBase2D.hh:155
Definition: RFitData2D.hh:22
TGTextButton * w_draw_button
Plot fit histograms button.
Definition: RGFitBase2D.hh:149
virtual void WidgetsToParamLimits()
Definition: RGFitBase2D.cpp:1892
virtual void GuiReset()
Definition: RGFitBase2D.cpp:2305
virtual void Init()
Definition: RGFitBase2D.cpp:326
virtual void FitModeSelected(Int_t m)
Definition: RGFitBase2D.cpp:2407
double * pt_y
Array of points Y positions.
Definition: RGFitBase2D.hh:110
virtual void PointsToWidget()
Definition: RGFitBase2D.cpp:1837
virtual void ConstructActions()
Definition: RGFitBase2D.cpp:635