class TFitEditor: public TGMainFrame


Allows to perform, explore and compare various fits.

To display the new Fit panel interface right click on a histogram
or a graph to pop up the context menu and then select the menu
entry 'Fit Panel'.

"General" Tab

The first set of GUI elements is related to the function choice
and settings. The status bar on the bottom provides information
about the current minimization settings using the following
LIB - shows the current choice between Minuit/Minuit2/Fumili
MIGRAD or FUMILI points to the current minimization method in use.
Itr: - shows the maximum number of iterations nnnn set for the fit.
Prn: - can be DEF/VER/QT and shows the current print option in use.

"Predefined" combo box - contains a list of predefined functions
in ROOT. The default one is Gaussian.

"Operation" radio button group defines selected operational mode
between functions: NOP - no operation (default); ADD - addition
CONV - convolution (will be implemented in the future).

Users can enter the function expression in a text entry field.
The entered string is checked after Enter key was pressed. An
error message shows up if the string is not accepted. The current
prototype is limited and users have no freedom to enter file/user
function names in this field.

"Set Parameters" button opens a dialog for parameters settings.

"Fit Settings" provides user interface elements related to the
fitter. Currently there are two method choices: Chi-square and
Binned Likelihood.

"Linear Fit" check button sets the use of Linear fitter is it is
selected. Otherwise the option 'F' is applied if polN is selected.
"Robust" number entry sets the robust value when fitting graphs.
"No Chi-square" check button sets ON/OFF option 'C' - do not
calculate Chi-square (for Linear fitter).

Fit options:
"Integral" check button switch ON/OFF option 'I' - use integral
of function instead of value in bin center.
"Best Errors" sets ON/OFF option 'E' - better errors estimation
using Minos technique.
"All weights = 1" sets ON/OFF option 'W' - all weights set to 1,
excluding empty bins and ignoring error bars.
"Empty bins, weights=1" sets ON/OFF option 'WW' -  all weights
equal to 1, including  empty bins, error bars ignored.
"Use range" sets ON/OFF option 'R' - fit only data within the
specified function range with the slider.
"Improve fit results" sets ON/OFF option 'M' - after minimum is
found, search for a new one.
"Add to list" sets On/Off option '+'- add function to the list
without deleting the previous.

Draw options:
"SAME" sets On/Off function drawing on the same pad.
"No drawing" sets On/Off option '0'- do not draw function graphics.
"Do not store/draw" sets On/Off option 'N'- do not store the
function, do not draw it.

Sliders settings are used if option 'R' - use range is active.
Users can change min/max values by pressing the left mouse button
near to the left/right slider edges. It is possible o change both
values simultaneously by pressing the left mouse button near to its
center and moving it to a new desire position.

"Minimization" Tab

"Library" group allows you to use Minuit, Minuit2 or Fumili
minimization packages for your fit.
"Minuit" - the popular Minuit minimization package.
"Minuit2" - a new object-oriented implementation of Minuit in C++.
"Fumili" - the popular Fumili minimization package.

"Method" group has currently restricted functionality.
"MIGRAD" method is available for Minuit and Minuit2
"FUMILI" method is available for Fumili and Minuit2
"SIMPLEX" method is disabled (will come with the new fitter design)

 "Minimization Settings' group allows users to set values for:        //
"Error definition" - between 0.0 and 100.0  (default is 1.0).
"Maximum tolerance" - the fit relative precision in use.
"Maximum number of iterations" - default is 5000.

Print options:
"Default" - between Verbose and Quiet.
"Verbose" - prints results after each iteration.
"Quiet" - no fit information is printed.

Fit button - performs a fit.
Reset - resets all GUI elements and related fit settings to the
default ones.
Close - closes this window.

// /* */

Function Members (Methods)

voidTObject::AbstractMethod(const char* method) const
virtual voidTGFrame::Activate(Bool_t)
virtual voidTGCompositeFrame::AddFrame(TGFrame* f, TGLayoutHints* l = 0)
voidTGFrame::AddInput(UInt_t emask)
virtual voidTObject::AppendPad(Option_t* option = "")
static Bool_tTQObject::AreAllSignalsBlocked()
Bool_tTQObject::AreSignalsBlocked() const
virtual Bool_tTGMainFrame::BindKey(const TGWindow* w, Int_t keycode, Int_t modifier) const
static Bool_tTQObject::BlockAllSignals(Bool_t b)
Bool_tTQObject::BlockSignals(Bool_t b)
virtual voidTObject::Browse(TBrowser* b)
virtual voidTGFrame::ChangeBackground(Pixel_t back)
virtual voidTQObject::ChangedBy(const char* method)SIGNAL
virtual voidTGCompositeFrame::ChangeOptions(UInt_t options)
virtual voidTGCompositeFrame::ChangeSubframesBackground(Pixel_t back)
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidTGCompositeFrame::Cleanup()
virtual voidTObject::Clear(Option_t* = "")
virtual TObject*TObject::Clone(const char* newname = "") const
virtual voidCloseWindow()
voidTQObject::CollectClassSignalLists(TList& list, TClass* cls)
virtual Int_tTObject::Compare(const TObject* obj) const
Bool_tTQObject::Connect(const char* signal, const char* receiver_class, void* receiver, const char* slot)
static Bool_tTQObject::Connect(TQObject* sender, const char* signal, const char* receiver_class, void* receiver, const char* slot)
static Bool_tTQObject::Connect(const char* sender_class, const char* signal, const char* receiver_class, void* receiver, const char* slot)
virtual voidTQObject::Connected(const char*)
virtual voidConnectSlots()
Bool_tTGFrame::Contains(Int_t x, Int_t y) const
virtual voidTObject::Copy(TObject& object) const
virtual voidTGFrame::Delete(Option_t* = "")
virtual voidTGFrame::DeleteWindow()
virtual voidTQObject::Destroyed()SIGNAL
virtual voidTGWindow::DestroySubwindows()
virtual voidTGWindow::DestroyWindow()
Bool_tTQObject::Disconnect(const char* signal = 0, void* receiver = 0, const char* slot = 0)
static Bool_tTQObject::Disconnect(TQObject* sender, const char* signal = 0, void* receiver = 0, const char* slot = 0)
static Bool_tTQObject::Disconnect(const char* class_name, const char* signal, void* receiver = 0, const char* slot = 0)
virtual voidTQObject::Disconnected(const char*)
virtual voidDisconnectSlots()
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual voidDoAddition(Bool_t on)
virtual voidDoAdvancedOptions()
virtual voidDoAllWeights1()
virtual voidDoClose()
virtual voidDoConvolution(Bool_t on)
virtual voidDoDataSet(Int_t sel)
virtual voidDoEmptyBinsAllWeights1()
virtual voidDoEnteredFunction()
virtual voidDoFit()
virtual voidDoFunction(Int_t sel)
virtual voidDoLibrary(Bool_t on)
virtual voidDoLinearFit()
virtual voidDoMaxIterations()
virtual voidDoMinMethod(Int_t)
virtual voidDoNoChi2()
virtual voidDoNormAddition(Bool_t on)
virtual voidDoNoSelection()
virtual voidDoNoStoreDrawing()
virtual voidDoNumericSliderXChanged()
virtual voidDoNumericSliderYChanged()
virtual voidDoPrintOpt(Bool_t on)
virtual voidDoReset()
virtual voidDoRobustFit()
virtual voidDoSetParameters()
virtual voidDoSliderXMoved()
virtual voidDoSliderYMoved()
virtual voidDoSliderZMoved()
virtual voidDoUpdate()
virtual voidDoUseFuncRange()
virtual voidDoUserDialog()
virtual voidTObject::Draw(Option_t* option = "")
virtual voidTGFrame::DrawBorder()
virtual voidTGFrame::DrawClass() const
virtual TObject*TGFrame::DrawClone(Option_t* = "") const
virtual voidTGFrame::DrawCopy(Handle_t, Int_t, Int_t)
virtual voidTGFrame::Dump() const
voidTQObject::Emit(const char* signal)
voidTQObject::Emit(const char* signal, Long_t* paramArr)
voidTQObject::Emit(const char* signal, const char* params)
voidTQObject::Emit(const char* signal, Double_t param)
voidTQObject::Emit(const char* signal, Long_t param)
voidTQObject::Emit(const char* signal, Long64_t param)
voidTQObject::Emit(const char* signal, Bool_t param)
voidTQObject::Emit(const char* signal, Char_t param)
voidTQObject::Emit(const char* signal, UChar_t param)
voidTQObject::Emit(const char* signal, Short_t param)
voidTQObject::Emit(const char* signal, UShort_t param)
voidTQObject::Emit(const char* signal, Int_t param)
voidTQObject::Emit(const char* signal, UInt_t param)
voidTQObject::Emit(const char* signal, ULong_t param)
voidTQObject::Emit(const char* signal, ULong64_t param)
voidTQObject::Emit(const char* signal, Float_t param)
voidTQObject::EmitVA(const char* signal, Int_t nargs, va_list va)
voidTQObject::EmitVA<>(const char* signal_name, Int_t)
virtual voidTObject::Error(const char* method, const char* msgfmt) const
virtual voidTObject::Execute(const char* method, const char* params, Int_t* error = 0)
virtual voidTObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0)
virtual voidTObject::ExecuteEvent(Int_t event, Int_t px, Int_t py)
virtual voidTObject::Fatal(const char* method, const char* msgfmt) const
voidFillFunctionList(Int_t selected = -1)
voidFillMinMethodList(Int_t selected = -1)
virtual TGFrameElement*TGCompositeFrame::FindFrameElement(TGFrame* f) const
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
virtual Pixel_tTGFrame::GetBackground() const
static const TGGC&TGFrame::GetBckgndGC()
TList*TGMainFrame::GetBindList() const
static const TGGC&TGFrame::GetBlackGC()
static Pixel_tTGFrame::GetBlackPixel()
Int_tTGFrame::GetBorderWidth() const
voidTGMainFrame::GetClassHints(const char*& className, const char*& resourceName) const
TGClient*TGObject::GetClient() const
static Int_tTGWindow::GetCounter()
static Pixel_tTGFrame::GetDefaultFrameBackground()
virtual UInt_tTGCompositeFrame::GetDefaultHeight() const
static Pixel_tTGFrame::GetDefaultSelectedBackground()
virtual TGDimensionTGCompositeFrame::GetDefaultSize() const
virtual UInt_tTGCompositeFrame::GetDefaultWidth() const
virtual TDNDData*TGFrame::GetDNDData(Atom_t)
virtual Int_tTGFrame::GetDragType() const
virtual Option_t*GetDrawOption() const
virtual Int_tTGFrame::GetDropType() const
static Long_tTObject::GetDtorOnly()
virtual UInt_tTGWindow::GetEditDisabled() const
UInt_tTGFrame::GetEventMask() const
virtual Pixel_tTGFrame::GetForeground() const
TGFrameElement*TGFrame::GetFrameElement() const
virtual TGFrame*TGCompositeFrame::GetFrameFromPoint(Int_t x, Int_t y)
UInt_tTGFrame::GetHeight() const
static const TGGC&TGFrame::GetHilightGC()
virtual const char*TGMainFrame::GetIconName() const
const char*TGMainFrame::GetIconPixmap() const
Handle_tTGObject::GetId() const
static TFitEditor*GetInstance(TVirtualPad* pad = 0, TObject* obj = 0)
virtual TGLayoutManager*TGCompositeFrame::GetLayoutManager() const
virtual TList*TGCompositeFrame::GetList() const
TList*TQObject::GetListOfClassSignals() const
TList*TQObject::GetListOfConnections() const
TList*GetListOfFittingFunctions(TObject* obj = 0)
TList*TQObject::GetListOfSignals() const
virtual const TGWindow*TGWindow::GetMainFrame() const
UInt_tTGFrame::GetMaxHeight() const
UInt_tTGFrame::GetMaxWidth() const
UInt_tTGFrame::GetMinHeight() const
UInt_tTGFrame::GetMinWidth() const
voidTGMainFrame::GetMWMHints(UInt_t& value, UInt_t& funcs, UInt_t& input) const
virtual const char*TGWindow::GetName() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
virtual UInt_tTGFrame::GetOptions() const
const TGWindow*TGWindow::GetParent() const
static const TGGC&TGFrame::GetShadowGC()
TGDimensionTGFrame::GetSize() const
Int_tTGCompositeFrame::GetState(TGFrame* f) const
virtual const char*TObject::GetTitle() const
virtual UInt_tTObject::GetUniqueID() const
static const TGGC&TGFrame::GetWhiteGC()
static Pixel_tTGFrame::GetWhitePixel()
UInt_tTGFrame::GetWidth() const
const char*TGMainFrame::GetWindowName() const
voidTGMainFrame::GetWMPosition(Int_t& x, Int_t& y) const
voidTGMainFrame::GetWMSize(UInt_t& w, UInt_t& h) const
voidTGMainFrame::GetWMSizeHints(UInt_t& wmin, UInt_t& hmin, UInt_t& wmax, UInt_t& hmax, UInt_t& winc, UInt_t& hinc) const
EInitialStateTGMainFrame::GetWMState() const
Int_tTGFrame::GetX() const
Int_tTGFrame::GetY() const
virtual Bool_tTGMainFrame::HandleButton(Event_t* event)
virtual Bool_tTGMainFrame::HandleClientMessage(Event_t* event)
virtual Bool_tTGFrame::HandleColormapChange(Event_t*)
virtual Bool_tTGFrame::HandleConfigureNotify(Event_t* event)
virtual Bool_tTGCompositeFrame::HandleCrossing(Event_t*)
virtual Bool_tTGFrame::HandleDNDDrop(TDNDData*)
virtual Atom_tTGFrame::HandleDNDEnter(Atom_t*)
virtual Bool_tTGFrame::HandleDNDFinished()
virtual Bool_tTGFrame::HandleDNDLeave()
virtual Atom_tTGFrame::HandleDNDPosition(Int_t, Int_t, Atom_t, Int_t, Int_t)
virtual Bool_tTGCompositeFrame::HandleDoubleClick(Event_t*)
virtual Bool_tTGCompositeFrame::HandleDragDrop(TGFrame* frame, Int_t x, Int_t y, TGLayoutHints* lo)
virtual Bool_tTGCompositeFrame::HandleDragEnter(TGFrame*)
virtual Bool_tTGCompositeFrame::HandleDragLeave(TGFrame*)
virtual Bool_tTGCompositeFrame::HandleDragMotion(TGFrame*)
virtual Bool_tTGFrame::HandleEvent(Event_t* event)
virtual Bool_tTGWindow::HandleExpose(Event_t* event)
virtual Bool_tTGCompositeFrame::HandleFocusChange(Event_t*)
virtual Bool_tTGWindow::HandleIdleEvent(TGIdleHandler*)
virtual Bool_tTGMainFrame::HandleKey(Event_t* event)
virtual Bool_tTGMainFrame::HandleMotion(Event_t* event)
virtual Bool_tTGMainFrame::HandleSelection(Event_t* event)
virtual Bool_tTGFrame::HandleSelectionClear(Event_t*)
virtual Bool_tTGMainFrame::HandleSelectionRequest(Event_t* event)
virtual Bool_tTGWindow::HandleTimer(TTimer*)
virtual Bool_tTQObject::HasConnection(const char* signal_name) const
virtual ULong_tTGObject::Hash() const
virtual voidHide()
virtual voidTGCompositeFrame::HideFrame(TGFrame* f)
virtual voidTQObject::HighPriority(const char* signal_name, const char* slot_name = 0)
virtual voidTGWindow::IconifyWindow()
virtual voidTObject::Info(const char* method, const char* msgfmt) const
virtual Bool_tTObject::InheritsFrom(const char* classname) const
virtual Bool_tTObject::InheritsFrom(const TClass* cl) const
virtual voidTGFrame::Inspect() const
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
virtual Bool_tTGFrame::IsActive() const
Bool_tTGCompositeFrame::IsArranged(TGFrame* f) const
Bool_tTGCompositeFrame::IsArranged(TGFrameElement* ptr) const
virtual Bool_tTGCompositeFrame::IsComposite() const
Bool_tTGFrame::IsDNDSource() const
Bool_tTGFrame::IsDNDTarget() const
virtual Bool_tTGCompositeFrame::IsEditable() const
virtual Bool_tTGObject::IsEqual(const TObject* obj) const
virtual Bool_tTObject::IsFolder() const
virtual Bool_tTGCompositeFrame::IsLayoutBroken() const
virtual Bool_tTGWindow::IsMapped()
virtual Bool_tTGCompositeFrame::IsMapSubwindows() const
Bool_tTObject::IsOnHeap() const
virtual Bool_tTObject::IsSortable() const
Bool_tTGCompositeFrame::IsVisible(TGFrame* f) const
Bool_tTGCompositeFrame::IsVisible(TGFrameElement* ptr) const
Bool_tTObject::IsZombie() const
virtual voidTGCompositeFrame::Layout()
virtual voidTGWindow::LowerWindow()
virtual voidTQObject::LowPriority(const char* signal_name, const char* slot_name = 0)
virtual voidTObject::ls(Option_t* option = "") const
virtual voidTGFrame::MapRaised()
virtual voidTGCompositeFrame::MapSubwindows()
virtual voidTGFrame::MapWindow()
voidTObject::MayNotUse(const char* method) const
virtual voidTQObject::Message(const char* msg)SIGNAL
virtual voidTGFrame::Move(Int_t x, Int_t y)
virtual voidTGFrame::MoveResize(Int_t x, Int_t y, UInt_t w = 0, UInt_t h = 0)
virtual Int_tTGCompositeFrame::MustCleanup() const
virtual Bool_tTObject::Notify()
virtual Int_tTQObject::NumberOfConnections() const
virtual Int_tTQObject::NumberOfSignals() const
voidTObject::Obsolete(const char* method, const char* asOfVers, const char* removedFromVers) const
voidTObject::operator delete(void* ptr)
voidTObject::operator delete(void* ptr, void* vp)
voidTObject::operator delete[](void* ptr)
voidTObject::operator delete[](void* ptr, void* vp)
void*TObject::operator new(size_t sz)
void*TObject::operator new(size_t sz, void* vp)
void*TObject::operator new[](size_t sz)
void*TObject::operator new[](size_t sz, void* vp)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidTGCompositeFrame::Print(Option_t* option = "") const
virtual voidTGFrame::ProcessedConfigure(Event_t* event)SIGNAL
virtual voidTGFrame::ProcessedEvent(Event_t* event)SIGNAL
virtual Bool_tTGCompositeFrame::ProcessMessage(Long_t, Long_t, Long_t)
virtual voidTGWindow::RaiseWindow()
virtual Int_tTObject::Read(const char* name)
virtual voidTGFrame::ReallyDelete()
virtual voidRecursiveRemove(TObject* obj)
virtual voidTGCompositeFrame::RemoveAll()
virtual voidTGMainFrame::RemoveBind(const TGWindow* w, Int_t keycode, Int_t modifier) const
virtual voidTGCompositeFrame::RemoveFrame(TGFrame* f)
voidTGFrame::RemoveInput(UInt_t emask)
virtual voidTGFrame::ReparentWindow(const TGWindow* p, Int_t x = 0, Int_t y = 0)
virtual voidTGWindow::RequestFocus()
voidTObject::ResetBit(UInt_t f)
virtual voidTGFrame::Resize(TGDimension size)
virtual voidTGFrame::Resize(UInt_t w = 0, UInt_t h = 0)
virtual voidTGObject::SaveAs(const char* filename = "", Option_t* option = "") const
virtual Bool_tTGMainFrame::SaveFrameAsCodeOrImage()
virtual voidTGMainFrame::SavePrimitive(ostream& out, Option_t* option = "")
virtual voidTGCompositeFrame::SavePrimitiveSubframes(ostream& out, Option_t* option = "")
virtual voidTGMainFrame::SaveSource(const char* filename = "Rootappl.C", Option_t* option = "")MENU
voidTGFrame::SaveUserColor(ostream& out, Option_t*)
virtual voidTGMainFrame::SendCloseMessage()
virtual voidTGFrame::SendMessage(const TGWindow* w, Long_t msg, Long_t parm1, Long_t parm2)
virtual voidTGFrame::SetBackgroundColor(Pixel_t back)
virtual voidTGWindow::SetBackgroundPixmap(Pixmap_t pixmap)
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
voidTGMainFrame::SetClassHints(const char* className, const char* resourceName)
virtual voidTGCompositeFrame::SetCleanup(Int_t mode = kLocalCleanup)
voidTGFrame::SetDNDSource(Bool_t onoff)
voidTGFrame::SetDNDTarget(Bool_t onoff)
virtual voidTGFrame::SetDragType(Int_t type)
virtual voidTGFrame::SetDrawOption(Option_t* = "")
virtual voidTGFrame::SetDropType(Int_t type)
static voidTObject::SetDtorOnly(void* obj)
virtual voidTGCompositeFrame::SetEditDisabled(UInt_t on = 1)
virtual voidSetFitObject(TVirtualPad* pad, TObject* obj, Int_t event)
virtual voidTGFrame::SetForegroundColor(Pixel_t)
voidTGFrame::SetFrameElement(TGFrameElement* fe)
virtual voidSetFunction(const char* function)
virtual voidTGFrame::SetHeight(UInt_t h)
voidTGMainFrame::SetIconName(const char* name)
const TGPicture*TGMainFrame::SetIconPixmap(const char* iconName)
voidTGMainFrame::SetIconPixmap(char** xpm_array)
virtual voidTGCompositeFrame::SetLayoutBroken(Bool_t on = kTRUE)
virtual voidTGCompositeFrame::SetLayoutManager(TGLayoutManager* l)
virtual voidTGCompositeFrame::SetMapSubwindows(Bool_t on)
virtual voidTGFrame::SetMaxHeight(UInt_t h)
virtual voidTGFrame::SetMaxWidth(UInt_t w)
virtual voidTGFrame::SetMinHeight(UInt_t h)
virtual voidTGFrame::SetMinWidth(UInt_t w)
voidTGMainFrame::SetMWMHints(UInt_t value, UInt_t funcs, UInt_t input)
virtual voidTGWindow::SetName(const char* name)
static voidTObject::SetObjectStat(Bool_t stat)
Bool_tSetObjectType(TObject* obj)
virtual voidTGFrame::SetSize(const TGDimension& s)
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidTGFrame::SetWidth(UInt_t w)
virtual voidTGMainFrame::SetWindowName(const char* name = 0)
voidTGMainFrame::SetWMPosition(Int_t x, Int_t y)
voidTGMainFrame::SetWMSize(UInt_t w, UInt_t h)
voidTGMainFrame::SetWMSizeHints(UInt_t wmin, UInt_t hmin, UInt_t wmax, UInt_t hmax, UInt_t winc, UInt_t hinc)
voidTGMainFrame::SetWMState(EInitialState state)
virtual voidTGFrame::SetX(Int_t x)
virtual voidTGFrame::SetY(Int_t y)
virtual voidShow(TVirtualPad* pad, TObject* obj)
virtual voidTGCompositeFrame::ShowFrame(TGFrame* f)
virtual voidShowMembers(TMemberInspector& insp) const
voidShowObjectName(TObject* obj)
virtual voidStreamer(TBuffer&)
voidStreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_b)
virtual voidTObject::SysError(const char* method, const char* msgfmt) const
virtual voidTerminate()
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
TFitEditor(TVirtualPad* pad, TObject* obj)
virtual Bool_tTGCompositeFrame::TranslateCoordinates(TGFrame* child, Int_t x, Int_t y, Int_t& fx, Int_t& fy)
virtual voidTGFrame::UnmapWindow()
virtual voidTObject::UseCurrentStyle()
virtual voidTObject::Warning(const char* method, const char* msgfmt) const
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0)
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) const
TGComboBox*BuildMethodList(TGFrame* parent, Int_t id)
static Int_tTQObject::CheckConnectArgs(TQObject* sender, TClass* sender_class, const char* signal, TClass* receiver_class, const char* slot)
Int_tCheckFunctionString(const char* str)
static TStringTQObject::CompressName(const char* method_name)
static Bool_tTQObject::ConnectToClass(TQObject* sender, const char* signal, TClass* receiver_class, void* receiver, const char* slot)
static Bool_tTQObject::ConnectToClass(const char* sender_class, const char* signal, TClass* receiver_class, void* receiver, const char* slot)
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
virtual voidTGFrame::DoRedraw()
virtual voidTGFrame::Draw3dRectangle(UInt_t type, Int_t x, Int_t y, UInt_t w, UInt_t h)
voidDrawSelection(bool restore = false)
static Time_tTGFrame::GetLastClick()
TStringTGMainFrame::GetMWMfuncString() const
TStringTGMainFrame::GetMWMinpString() const
TStringTGMainFrame::GetMWMvalueString() const
TStringTGFrame::GetOptionString() const
const TGResourcePool*TGFrame::GetResourcePool() const
virtual void*TGFrame::GetSender()
virtual const char*TQObject::GetSenderClassName() const
voidMakeTitle(TGCompositeFrame* parent, const char* title)
voidProcessTreeInput(TObject* objSelected, Int_t selected, TString variables, TString cuts)
virtual voidSetCanvas(TCanvas* c)
virtual voidSetEditable(Bool_t)
virtual voidTGFrame::StartGuiBuilding(Bool_t on = kTRUE)

Data Members

static TObject::(anonymous)TObject::kBitMask
static TObject::EStatusBitsTObject::kCanDelete
static TObject::EStatusBitsTObject::kCannotPick
static TGWindow::EEditModeTGWindow::kEditDisable
static TGWindow::EEditModeTGWindow::kEditDisableBtnEnable
static TGWindow::EEditModeTGWindow::kEditDisableEvents
static TGWindow::EEditModeTGWindow::kEditDisableGrab
static TGWindow::EEditModeTGWindow::kEditDisableHeight
static TGWindow::EEditModeTGWindow::kEditDisableKeyEnable
static TGWindow::EEditModeTGWindow::kEditDisableLayout
static TGWindow::EEditModeTGWindow::kEditDisableResize
static TGWindow::EEditModeTGWindow::kEditDisableWidth
static TGWindow::EEditModeTGWindow::kEditEnable
static TObject::EStatusBitsTObject::kHasUUID
static TObject::EStatusBitsTObject::kInvalidObject
static TObject::(anonymous)TObject::kIsOnHeap
static TObject::EStatusBitsTObject::kIsReferenced
static TObject::EStatusBitsTObject::kMustCleanup
static TObject::EStatusBitsTObject::kNoContextMenu
static TObject::(anonymous)TObject::kNotDeleted
static TObject::EStatusBitsTObject::kObjInCanvas
static TObject::(anonymous)TObject::kOverwrite
static TObject::(anonymous)TObject::kSingleKey
static TObject::(anonymous)TObject::kWriteDelete
static TObject::(anonymous)TObject::kZombie
TGRadioButton*fAddset addition mode
TGCheckButton*fAdd2FuncListswitch on/off option 'add to list'
TGCheckButton*fAllWeights1switch on/off option 'all weights=1'
Pixel_tTGFrame::fBackgroundframe background color
TGCheckButton*fBestErrorsswitch on/off option 'improve errors'
TList*TGMainFrame::fBindListlist with key bindings
Int_tTGFrame::fBorderWidthframe border width
TStringTGMainFrame::fClassNameWM class name
TGClient*TGObject::fClientConnection to display server
TGTextButton*fCloseButtonclose the fit panel
TGRadioButton*fConvset convolution mode
TF1Convolution*fConvFunc! TF1Convolution object
Atom_t*TGMainFrame::fDNDTypeListhandles DND types
TGComboBox*fDataSetcontains list of data set to be fitted
Int_tfDimobject dimension
TGTextButton*fDrawAdvancedopens a dialog for advanced draw options
TGCheckButton*fDrawSameswitch on/off fit function drawing
UInt_tTGWindow::fEditDisabledflags used for "guibuilding"
TGCheckButton*fEmptyBinsWghts1switch on/off option 'include empry bins'
TGCheckButton*fEnableRobustswitch on/off robust option
TGTextEntry*fEnteredFunccontains user function file name
TGNumberEntryField*fErrorScalecontains error scale set for minimization
UInt_tTGFrame::fEventMaskcurrenty active event mask
TGFrameElement*TGFrame::fFEpointer to frame element
TGTextButton*fFitButtonperforms fitting
TObject*fFitObjectselected object to fit
TGComboBox*fFuncListcontains function list
vector<TFitEditor::FuncParamData_t>fFuncParsfunction parameters (value + limits)
TGCompositeFrame*fGeneralgeneral tab
UInt_tTGFrame::fHeightframe height
TStringTGMainFrame::fIconNameicon name
TStringTGMainFrame::fIconPixmapicon pixmap name
Handle_tTGObject::fIdX11/Win32 Window identifier
TGCheckButton*fImproveResultsswitch on/off option 'improve fit results'
TGCheckButton*fIntegralswitch on/off option 'integral'
TGNumberEntryField*fIterationscontains maximum number of iterations
TGLayoutHints*fLayoutAddlayout hints of fAdd radio button
Bool_tTGCompositeFrame::fLayoutBrokenno layout manager is used
TGLayoutHints*fLayoutConvlayout hints of fConv radio button
TGLayoutManager*TGCompositeFrame::fLayoutManagerlayout manager
TGLayoutHints*fLayoutNonelayout hints of fNone radio button
TGLayoutHints*fLayoutNormAddlayout hints of fNOrmAdd radio button
TGRadioButton*fLibFumiliset Fumili as minimization library
TGRadioButton*fLibGSLset GSL as minimization library
TGRadioButton*fLibGeneticsset Genetic/GALib as minimization library
TGRadioButton*fLibMinuitset default minimization library (Minuit)
TGRadioButton*fLibMinuit2set Minuit2 as minimization library
TGCheckButton*fLinearFitswitch on/off linear fit option
TList*TGCompositeFrame::fListcontainer of frame elements
TList*TQObject::fListOfConnections! list of connections to this object
TList*TQObject::fListOfSignals! list of signals from this object
UInt_tTGMainFrame::fMWMFuncsMWM functions
UInt_tTGMainFrame::fMWMInputMWM input modes
UInt_tTGMainFrame::fMWMValueMWM decoration hints
Bool_tTGCompositeFrame::fMapSubwindowskTRUE - map subwindows
UInt_tTGFrame::fMaxHeightmaximal frame height
UInt_tTGFrame::fMaxWidthmaximal frame width
TGComboBox*fMethodListcontains method list
UInt_tTGFrame::fMinHeightminimal frame height
TGComboBox*fMinMethodListset the minimization method
UInt_tTGFrame::fMinWidthminimal frame width
TGCompositeFrame*fMinimizationminimization tab
Int_tTGCompositeFrame::fMustCleanupcleanup mode (see EFrameCleanup)
TStringTGWindow::fNamename of the window used in SavePrimitive()
Bool_tTGWindow::fNeedRedrawkTRUE if window needs to be redrawn
TGCheckButton*fNoChi2switch on/off option 'No Chi-square'
TGCheckButton*fNoDrawingswitch on/off 'no drawing' option
TGCheckButton*fNoStoreDrawingswitch on/off 'no store/drwing' option
TGRadioButton*fNoneset no operation mode
TGRadioButton*fNormAddset normalized addition mode
TGRadioButton*fOptDefaultset default printing mode
TGRadioButton*fOptQuietset printing mode to 'Quiet'
TGRadioButton*fOptVerboseset printing mode to 'Verbose'
UInt_tTGFrame::fOptionsframe options
const TGWindow*TGWindow::fParentParent window
TVirtualPad*fParentPadpad containing the object
multimap<TObject*,TF1*>fPrevFitPrevious successful fits.
TGTextButton*fResetButtonresets fit parameters
TStringTGMainFrame::fResourceNameWM resource name
TGNumberEntry*fRobustValuecontains robust value for linear fit
TGLabel*fSelLabelcontains selected fit function
TGTextButton*fSetParamopen set parameters dialog
Bool_tTQObject::fSignalsBlocked! flag used for suppression of signals
TGDoubleHSlider*fSliderXslider to set fit range along x-axis
TGNumberEntry*fSliderXMaxentry to set the maximum in the range
TGNumberEntry*fSliderXMinentry to set the minumum in the range
TGHorizontalFrame*fSliderXParentparent of fSliderX
TGDoubleHSlider*fSliderYslider to set fit range along y-axis
TGNumberEntry*fSliderYMaxentry to set the maximum in the range
TGNumberEntry*fSliderYMinentry to set the minumum in the range
TGHorizontalFrame*fSliderYParentparent of fSliderY
TGDoubleHSlider*fSliderZslider to set fit range along z-axis
TGHorizontalFrame*fSliderZParentparent of fSliderZ
TGStatusBar*fStatusBarstatusbar widget
TF1NormSum*fSumFunc! TF1NormSum object
vector<TF1*>fSystemFuncsfunctions managed by the fitpanel
TGTab*fTabtab widget holding the editor
TGCompositeFrame*fTabContainermain tab container
TGNumberEntryField*fTolerancecontains tolerance set for minimization
EObjectTypefTypeobject type info
TGComboBox*fTypeFitcontains the types of functions to be selected
TGTextButton*fUpdateButtonupdates data from gROOT and gDirectory
TGCheckButton*fUseGradientswitch on/off option 'use gradient'
TGCheckButton*fUseRangeswitch on/off option 'use function range'
TGTextButton*fUserButtonopens a dialog for user-defined fit method
UInt_tTGMainFrame::fWMHeightWM height
UInt_tTGMainFrame::fWMHeightIncWM height increments
EInitialStateTGMainFrame::fWMInitStateWM initial state
UInt_tTGMainFrame::fWMMaxHeightWM max height
UInt_tTGMainFrame::fWMMaxWidthWM max width
UInt_tTGMainFrame::fWMMinHeightWM min height
UInt_tTGMainFrame::fWMMinWidthWM min width
UInt_tTGMainFrame::fWMWidthWM width
UInt_tTGMainFrame::fWMWidthIncWM width increments
Int_tTGMainFrame::fWMXWM x position
Int_tTGMainFrame::fWMYWM y position
UInt_tTGFrame::fWidthframe width
TStringTGMainFrame::fWindowNamewindow name
Int_tTGFrame::fXframe x position
Int_tTGFrame::fYframe y position
static Bool_tTQObject::fgAllSignalsBlockedflag used for suppression of all signals
static const TGGC*TGFrame::fgBckgndGC
static const TGGC*TGFrame::fgBlackGC
static Pixel_tTGFrame::fgBlackPixel
static Int_tTGWindow::fgCountercounter of created windows in SavePrimitive
static Window_tTGFrame::fgDbw
static Int_tTGFrame::fgDbx
static Int_tTGFrame::fgDby
static Pixel_tTGFrame::fgDefaultFrameBackground
static TGLayoutHints*TGCompositeFrame::fgDefaultHintsdefault hints used by AddFrame()
static Pixel_tTGFrame::fgDefaultSelectedBackground
static TFitEditor*fgFitDialogsingleton fit panel
static const TGGC*TGFrame::fgHilightGC
static Bool_tTGFrame::fgInit
static UInt_tTGFrame::fgLastButton
static Time_tTGFrame::fgLastClick
static const TGGC*TGFrame::fgShadowGC
static UInt_tTGFrame::fgUserColor
static const TGGC*TGFrame::fgWhiteGC
static Pixel_tTGFrame::fgWhitePixel
static TGFrame::(anonymous)TGFrame::kDeleteWindowCalled
static TGMainFrame::(anonymous)TGMainFrame::kDontCallClose

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

TF1* FindFunction()
 This method looks among the functions stored by the fitpanel, the
 one that is currently selected in the fFuncList
TFitEditor * GetInstance(TVirtualPad* pad = 0, TObject* obj = 0)
 Static method - opens the fit panel.
TFitEditor(TVirtualPad* pad, TObject* obj)
 Constructor of fit editor. 'obj' is the object to be fitted and
 'pad' where it is drawn.
 Fit editor destructor.
void CreateFunctionGroup()
 Creates the Frame that contains oll the information about the
void CreateGeneralTab()
 Create 'General' tab.
void CreateMinimizationTab()
 Create 'Minimization' tab.
void ConnectSlots()
 Connect GUI signals to fit panel slots.
void DisconnectSlots()
 Disconnect GUI signals from fit panel slots.
void SetCanvas(TCanvas* c)
 Connect to another canvas.
void Hide()
 Hide the fit panel and set it to non-active state.
void Show(TVirtualPad* pad, TObject* obj)
 Show the fit panel (possible only via context menu).
void CloseWindow()
 Close fit panel window.
void Terminate()
  Called to delete the fit panel.
void UpdateGUI()
  Set the fit panel GUI according to the selected object.
void SetFitObject(TVirtualPad* pad, TObject* obj, Int_t event)
 Slot called when the user clicks on an object inside a canvas.
 Updates pointers to the parent pad and the selected object
 for fitting (if suitable).
void DoNoSelection()
 Slot called when users close a TCanvas or when the user select
 no object.
void RecursiveRemove(TObject* obj)
 When obj is deleted, clear fFitObject if fFitObject = obj.
void FillFunctionList(Int_t selected = -1)
 Fills the list of functions depending on the type of fit
void FillMinMethodList(Int_t selected = -1)
 Fills the list of methods depending on the minimization library
void FillDataSetList()
 Create a combo box with all the possible objects to be fitted.
TGComboBox* BuildMethodList(TGFrame* parent, Int_t id)
 Create method list in a combo box.
void DoAdvancedOptions()
 Slot connected to advanced option button (opens a dialog).
void DoEmptyBinsAllWeights1()
 Slot connected to 'include emtry bins and forse all weights to 1' setting.
void DoUseFuncRange()
void DoAllWeights1()
 Slot connected to 'set all weights to 1' setting.
void DoClose()
 Close the fit panel.
void DoUpdate()
 Easy here!
void DoFit()
 Perform a fit with current parameters' settings.
Int_t CheckFunctionString(const char* str)
 Check entered function string.
void DoAddition(Bool_t on)
 Slot connected to addition of predefined functions. It will
 insert the next selected function with a plus sign so that it
 doesn't override the current content of the formula.
void DoNormAddition(Bool_t on)
 Slot connected to addition of predefined functions. It will
 insert the next selected function with a plus sign so that it
 doesn't override the current content of the formula.

   static Bool_t first = kFALSE;
   TString s = fEnteredFunc->GetText();
   if (on) {
      if (!first) {
         first = kTRUE;
         ((TGCompositeFrame *)fSelLabel->GetParent())->Layout();
   } else {
      first = kFALSE;
void DoConvolution(Bool_t on)
 Slot connected to addition of predefined functions. It will
 insert the next selected function with a plus sign so that it
 doesn't override the current content of the formula.

   static Bool_t first = kFALSE;
   TString s = fEnteredFunc->GetText();
   if (on) {
      if (!first) {
        // s += "(0)";
         first = kTRUE;
         ((TGCompositeFrame *)fSelLabel->GetParent())->Layout();
   } else
first = kFALSE;
void DoDataSet(Int_t sel)
 Selects the data set to be fitted
void ProcessTreeInput(TObject* objSelected, Int_t selected, TString variables, TString cuts)
 If the input is valid, insert the tree with the selections as an entry to fDataSet
void DoFunction(Int_t sel)
 Slot connected to predefined fit function settings.
void DoEnteredFunction()
 Slot connected to entered function in text entry.
void DoLinearFit()
 Slot connected to linear fit settings.
void DoNoChi2()
 Slot connected to 'no chi2' option settings.
void DoRobustFit()
 Slot connected to 'robust fitting' option settings.
void DoNoStoreDrawing()
 Slot connected to 'no storing, no drawing' settings.
void DoPrintOpt(Bool_t on)
 Slot connected to print option settings.
void DoReset()
 Reset all fit parameters.
void DoSetParameters()
 Open set parameters dialog.
void DoSliderXMoved()
 Slot connected to range settings on x-axis.
void DrawSelection(bool restore = false)
 Draws the square around the object showing where the limits for
 fitting are.
void DoNumericSliderXChanged()
 Sincronize the numeric sliders with the graphical one.
void DoSliderYMoved()
 Slot connected to range settings on y-axis.
void DoNumericSliderYChanged()
syncronize the numeric slider with the graphical one.
void DoSliderZMoved()
 Slot connected to range settings on z-axis.
void DoUserDialog()
 Open a dialog for getting a user defined method.
void SetFunction(const char* function)
 Set the function to be used in performed fit.
Bool_t SetObjectType(TObject* obj)
 Check whether the object suitable for fitting and set
 its type, dimension and method combo box accordingly.
void ShowObjectName(TObject* obj)
 Show object name on the top.
Option_t * GetDrawOption() const
 Get draw options of the selected object.
void DoLibrary(Bool_t on)
 Set selected minimization library in use.
void DoMinMethod(Int_t )
 Set selected minimization method in use.
void DoMaxIterations()
 Set the maximum number of iterations.
void MakeTitle(TGCompositeFrame* parent, const char* title)
 Create section title in the GUI.
TF1* HasFitFunction()
 Look in the list of function for TF1. If a TF1 is
 found in the list of functions, it will be returned
void RetrieveOptions(Foption_t& , TString& , ROOT::Math::MinimizerOptions& , Int_t )
 Retrieve the fitting options from all the widgets.
void SetEditable(Bool_t )
 Set the state of some input widgets depending on whether the fit
 function can be defined by text or if it is an existing one.
void GetRanges(ROOT::Fit::DataRange& )
 Return the ranges selected by the sliders.
TList* GetFitObjectListOfFunctions()
 Get the list of functions previously used in the fitobject.
void GetFunctionsFromSystem()
 Looks for all the functions registered in the current ROOT
TList* GetListOfFittingFunctions(TObject* obj = 0)
 This function returns a TList with all the functions used in the
 FitPanel to fit a given object. If the object passed is NULL,
 then the object used is the currently selected one. It is
 important to notice that the FitPanel is still the owner of
 those functions. This means that the user SHOULD NOT delete any
 of these functions, as the FitPanel will do so in the
TF1* GetFitFunction()
 Get the fit function selected or declared in the fiteditor
TFitEditor(const TFitEditor& )
TFitEditor& operator=(const TFitEditor& )