12#ifndef ROOT_TFitEditor
13#define ROOT_TFitEditor
123 fP[0] = 0;
fP[1] = 0;
fP[2] = 0;
214 virtual void DoFit();
#define ClassDefOverride(name, id)
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t Int_t Int_t Window_t TString Int_t GCValues_t GetPrimarySelectionOwner GetDisplay GetScreen GetColormap GetNativeEvent const char const char dpyName wid window const char font_name cursor keysym reg const char only_if_exist regb h Point_t winding char text const char depth char const char Int_t count const char ColorStruct_t color const char Pixmap_t Pixmap_t PictureAttributes_t attr const char char ret_data h unsigned char height h Atom_t Int_t ULong_t ULong_t unsigned char prop_list Atom_t sel
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void on
class describing the range in the coordinates it supports multiple range in a coordinate.
Class to manage histogram axis.
Class wrapping convolution of two functions.
Class adding two functions: c1*f1+c2*f2.
Allows to perform, explore and compare various fits.
TList * GetListOfFittingFunctions(TObject *obj=nullptr)
TGCheckButton * fBestErrors
switch on/off option 'improve errors'
TF1 * FindFunction()
This method looks among the functions stored by the fitpanel, the one that is currently selected in t...
TGDoubleHSlider * fSliderX
slider to set fit range along x-axis
static TFitEditor * GetInstance(TVirtualPad *pad=nullptr, TObject *obj=nullptr)
Static method - opens the fit panel.
TFitEditor(const TFitEditor &)
TGComboBox * fMinMethodList
void CloseWindow() override
Close fit panel window.
TGTextButton * fSetParam
open set parameters dialog
void CreateGeneralTab()
Create 'General' tab.
virtual void DoUpdate()
Easy here!
TGLayoutHints * fLayoutNormAdd
layout hints of fNOrmAdd radio button
TGNumberEntry * fSliderXMax
entry to set the maximum in the range
virtual void DoConvolution(Bool_t on)
Slot connected to addition of predefined functions.
TGNumberEntry * fSliderXMin
entry to set the minumum in the range
virtual void SetFitObject(TVirtualPad *pad, TObject *obj, Int_t event)
Slot called when the user clicks on an object inside a canvas.
virtual void DoEnteredFunction()
Slot connected to entered function in text entry.
virtual void DoNormAddition(Bool_t on)
Slot connected to addition of predefined functions.
virtual void DoPrintOpt(Bool_t on)
Slot connected to print option settings.
std::vector< TF1 * > fSystemFuncs
TGCheckButton * fDrawSame
switch on/off fit function drawing
TGRadioButton * fLibMinuit
TGRadioButton * fConv
set convolution mode
TVirtualPad * fParentPad
pad containing the object
TGRadioButton * fOptDefault
set default printing mode
TGCheckButton * fLinearFit
switch on/off linear fit option
TGRadioButton * fLibMinuit2
virtual void DoMinMethod(Int_t)
Set selected minimization method in use.
TF1 * HasFitFunction()
Look in the list of function for TF1.
void UpdateGUI()
Set the fit panel GUI according to the selected object.
TGCheckButton * fUseRange
switch on/off option 'use function range'
virtual void DoSliderXMoved()
Slot connected to range settings on x-axis.
TGTextButton * fDrawAdvanced
opens a dialog for advanced draw options
TGComboBox * fTypeFit
contains the types of functions to be selected
virtual void DoReset()
Reset all fit parameters.
TGNumberEntryField * fTolerance
TGCheckButton * fNoDrawing
switch on/off 'no drawing' option
TGHorizontalFrame * fSliderZParent
parent of fSliderZ
virtual void DoSetParameters()
Open set parameters dialog.
TGCompositeFrame * fMinimization
minimization tab
TGTab * fTab
tab widget holding the editor
virtual void DoLinearFit()
Slot connected to linear fit settings.
void FillFunctionList(Int_t selected=-1)
Fills the list of functions depending on the type of fit selected.
virtual void Show(TVirtualPad *pad, TObject *obj)
Show the fit panel (possible only via context menu).
virtual void DoNumericSliderYChanged()
syncronize the numeric slider with the graphical one.
virtual void DoClose()
Close the fit panel.
TF1NormSum * fSumFunc
! TF1NormSum object
TGComboBox * fMethodList
contains method list
TGDoubleHSlider * fSliderY
slider to set fit range along y-axis
void ShowObjectName(TObject *obj)
Show object name on the top.
friend class FitEditorUnitTesting
static TFitEditor * fgFitDialog
TList * GetFitObjectListOfFunctions()
virtual void DoAdvancedOptions()
Slot connected to advanced option button (opens a dialog).
TGRadioButton * fLibFumili
virtual void DoDataSet(Int_t sel)
Selects the data set to be fitted.
TGRadioButton * fAdd
set addition mode
TGComboBox * BuildMethodList(TGFrame *parent, Int_t id)
Create method list in a combo box.
void CreateMinimizationTab()
Create 'Minimization' tab.
TGRadioButton * fLibGenetics
TGCheckButton * fImproveResults
switch on/off option 'improve fit results'
TGComboBox * fFuncList
contains function list
TF1Convolution * fConvFunc
! TF1Convolution object
TGCheckButton * fUseGradient
switch on/off option 'use gradient'
TGRadioButton * fNormAdd
set normalized addition mode
virtual void SetCanvas(TCanvas *c)
Connect to another canvas.
EObjectType fType
object type info
TGNumberEntryField * fIterations
TGCompositeFrame * fTabContainer
main tab container
virtual void DoFunction(Int_t sel)
Slot connected to predefined fit function settings.
virtual void DoUseFuncRange()
TGComboBox * fDataSet
contains list of data set to be fitted
virtual void ConnectSlots()
Connect GUI signals to fit panel slots.
virtual void DoFit()
Perform a fit with current parameters' settings.
TGRadioButton * fOptVerbose
set printing mode to 'Verbose'
virtual void SetFunction(const char *function)
Set the function to be used in performed fit.
virtual void Terminate()
Called to delete the fit panel.
TGTextButton * fUserButton
opens a dialog for user-defined fit method
~TFitEditor() override
Fit editor destructor.
TGDoubleHSlider * fSliderZ
slider to set fit range along z-axis
TGTextButton * fFitButton
performs fitting
virtual void DoMaxIterations()
Set the maximum number of iterations.
virtual void DoLibrary(Bool_t on)
Set selected minimization library in use.
void FillDataSetList()
Create a combo box with all the possible objects to be fitted.
virtual void DoEmptyBinsAllWeights1()
Slot connected to 'include emtry bins and forse all weights to 1' setting.
virtual void DoSliderYMoved()
Slot connected to range settings on y-axis.
void RetrieveOptions(Foption_t &, TString &, ROOT::Math::MinimizerOptions &, Int_t)
Retrieve the fitting options from all the widgets.
std::vector< FuncParamData_t > fFuncPars
TGHorizontalFrame * fSliderYParent
parent of fSliderY
TGCheckButton * fNoChi2
switch on/off option 'No Chi-square'
virtual void DoNoStoreDrawing()
Slot connected to 'no storing, no drawing' settings.
void MakeTitle(TGCompositeFrame *parent, const char *title)
Create section title in the GUI.
virtual void DoNoSelection()
Slot called when users close a TCanvas or when the user select no object.
TGTextButton * fUpdateButton
updates data from gROOT and gDirectory
TGTextEntry * fEnteredFunc
contains user function file name
TGCheckButton * fIntegral
switch on/off option 'integral'
virtual void DoAllWeights1()
Slot connected to 'set all weights to 1' setting.
Bool_t SetObjectType(TObject *obj)
Check whether the object suitable for fitting and set its type, dimension and method combo box accord...
virtual void Hide()
Hide the fit panel and set it to non-active state.
TFitEditor & operator=(const TFitEditor &)
TGNumberEntryField * fErrorScale
void SetEditable(Bool_t) override
Option_t * GetDrawOption() const override
Get draw options of the selected object.
std::vector< FuncParamData_t > FuncParams_t
TGLayoutHints * fLayoutAdd
layout hints of fAdd radio button
TGHorizontalFrame * fSliderXParent
parent of fSliderX
void ProcessTreeInput(TObject *objSelected, Int_t selected, TString variables, TString cuts)
TGCheckButton * fEnableRobust
switch on/off robust option
void DrawSelection(bool restore=false)
Draws the square around the object showing where the limits for fitting are.
TGCheckButton * fEmptyBinsWghts1
switch on/off option 'include empry bins'
virtual void DoSliderZMoved()
Slot connected to range settings on z-axis.
Int_t fDim
object dimension
TGNumberEntry * fSliderYMin
entry to set the minumum in the range
void GetRanges(ROOT::Fit::DataRange &)
std::multimap< TObject *, TF1 * > fPrevFit
TGNumberEntry * fRobustValue
contains robust value for linear fit
TGNumberEntry * fSliderYMax
entry to set the maximum in the range
virtual void DoNoChi2()
Slot connected to 'no chi2' option settings.
TGCheckButton * fAdd2FuncList
switch on/off option 'add to list'
TGCompositeFrame * fGeneral
general tab
virtual void DisconnectSlots()
Disconnect GUI signals from fit panel slots.
void GetFunctionsFromSystem()
TGRadioButton * fOptQuiet
set printing mode to 'Quiet'
void FillMinMethodList(Int_t selected=-1)
Fills the list of methods depending on the minimization library selected.
TGCheckButton * fNoStoreDrawing
switch on/off 'no store/drwing' option
TGCheckButton * fAllWeights1
switch on/off option 'all weights=1'
TGRadioButton * fNone
set no operation mode
TGLayoutHints * fLayoutConv
layout hints of fConv radio button
TGTextButton * fResetButton
resets fit parameters
void CreateFunctionGroup()
Creates the Frame that contains oll the information about the function.
TGLayoutHints * fLayoutNone
layout hints of fNone radio button
TGLabel * fSelLabel
contains selected fit function
Int_t CheckFunctionString(const char *str)
Check entered function string.
void RecursiveRemove(TObject *obj) override
When obj is deleted, clear fFitObject if fFitObject = obj.
TObject * fFitObject
selected object to fit
virtual void DoRobustFit()
Slot connected to 'robust fitting' option settings.
TGTextButton * fCloseButton
close the fit panel
virtual void DoAddition(Bool_t on)
Slot connected to addition of predefined functions.
virtual void DoUserDialog()
Open a dialog for getting a user defined method.
virtual void DoNumericSliderXChanged()
Sincronize the numeric sliders with the graphical one.
A combobox (also known as a drop down listbox) allows the selection of one item out of a list of item...
The base class for composite widgets (menu bars, list boxes, etc.).
Dragging the slider will generate the event:
A subclasses of TGWindow, and is used as base class for some simple widgets (buttons,...
A composite frame that layout their children in horizontal way.
This class handles GUI labels.
This class describes layout hints used by the layout classes.
Defines top level windows that interact with the system Window Manager.
TGNumberEntry is a number entry input widget with up/down buttons.
Provides a StatusBar widget.
A tab widget contains a set of composite frames each with a little tab with a name (like a set of fol...
Yield an action as soon as it is clicked.
A TGTextEntry is a one line text input widget.
Mother of all ROOT objects.
TVirtualPad is an abstract base class for the Pad and Canvas classes.
Double_t & operator[](UInt_t i)