#ifndef ROOT_TFitEditor
#define ROOT_TFitEditor
#ifndef ROOT_TGFrame
#include "TGFrame.h"
#endif
#ifndef ROOT_TGButton
#include "TGButton.h"
#endif
enum EObjectType {
kObjectHisto,
kObjectGraph,
kObjectGraph2D,
kObjectHStack,
kObjectTree
};
class TGTab;
class TVirtualPad;
class TCanvas;
class TGLabel;
class TGComboBox;
class TGTextEntry;
class TGNumberEntry;
class TGDoubleHSlider;
class TGNumberEntry;
class TGNumberEntryField;
class TGStatusBar;
class TAxis;
class TF1;
class TFitEditor : public TGMainFrame {
protected:
TGTab *fTab;
TGCompositeFrame *fTabContainer;
TGCompositeFrame *fGeneral;
TGCompositeFrame *fMinimization;
TGTextButton *fFitButton;
TGTextButton *fResetButton;
TGTextButton *fCloseButton;
TGHorizontalFrame *fObjLabelParent;
TGLabel *fObjLabel;
TGLabel *fSelLabel;
TGComboBox *fFuncList;
Int_t fLastEntryId;
TGTextEntry *fEnteredFunc;
TGTextButton *fUserButton;
TGRadioButton *fNone;
TGRadioButton *fAdd;
TGRadioButton *fConv;
TGLayoutHints *fLayoutNone;
TGLayoutHints *fLayoutAdd;
TGLayoutHints *fLayoutConv;
TGTextButton *fSetParam;
TGCheckButton *fIntegral;
TGCheckButton *fBestErrors;
TGCheckButton *fUseRange;
TGCheckButton *fAdd2FuncList;
TGCheckButton *fAllWeights1;
TGCheckButton *fImproveResults;
TGCheckButton *fEmptyBinsWghts1;
TGComboBox *fMethodList;
TGCheckButton *fLinearFit;
TGCheckButton *fNoChi2;
TGCheckButton *fNoStoreDrawing;
TGCheckButton *fNoDrawing;
TGCheckButton *fDrawSame;
TGTextButton *fDrawAdvanced;
TGDoubleHSlider *fSliderX;
TGDoubleHSlider *fSliderY;
TGDoubleHSlider *fSliderZ;
TGHorizontalFrame *fSliderXParent;
TGHorizontalFrame *fSliderYParent;
TGHorizontalFrame *fSliderZParent;
TGNumberEntry *fRobustValue;
TGRadioButton *fOptDefault;
TGRadioButton *fOptVerbose;
TGRadioButton *fOptQuiet;
TCanvas *fCanvas;
TVirtualPad *fParentPad;
TObject *fFitObject;
EObjectType fType;
Int_t fDim;
TAxis *fXaxis;
TAxis *fYaxis;
TAxis *fZaxis;
Float_t fXrange;
Float_t fXmin;
Float_t fXmax;
Float_t fYrange;
Float_t fYmin;
Float_t fYmax;
Float_t fZrange;
Float_t fZmin;
Float_t fZmax;
TString fPlus;
TString fFunction;
TString fFitOption;
TString fDrawOption;
TF1 *fFitFunc;
TList *fFitFuncList;
Int_t fPx1old,
fPy1old,
fPx2old,
fPy2old;
TGRadioButton *fLibMinuit;
TGRadioButton *fLibMinuit2;
TGRadioButton *fLibFumili;
TGRadioButton *fMigrad;
TGRadioButton *fSimplex;
TGRadioButton *fFumili;
TGNumberEntryField *fErrorScale;
TGNumberEntryField *fTolerance;
TGNumberEntryField *fIterations;
TGStatusBar *fStatusBar;
static TFitEditor *fgFitDialog;
TGComboBox *BuildFunctionList(TGFrame *parent, Int_t id);
TGComboBox *BuildMethodList(TGFrame *parent, Int_t id);
Int_t CheckFunctionString(const char* str);
void CreateGeneralTab();
void CreateMinimizationTab();
void MakeTitle(TGCompositeFrame *parent, const char *title);
Bool_t HasFitFunction(TObject *obj);
void GetFunctionsFromList(TList *list);
void CheckRange(TF1 *f1);
private:
TFitEditor(const TFitEditor&);
TFitEditor& operator=(const TFitEditor&);
public:
TFitEditor(TVirtualPad* pad, TObject *obj);
virtual ~TFitEditor();
static TFitEditor *&GetFP();
static void Open(TVirtualPad* pad, TObject *obj);
virtual Option_t *GetDrawOption() const;
virtual void Hide();
virtual void Show(TVirtualPad* pad, TObject *obj);
void ShowObjectName(TObject* obj);
Bool_t SetObjectType(TObject* obj);
virtual void Terminate();
void UpdateGUI();
virtual void CloseWindow();
virtual void ConnectSlots();
virtual void ConnectToCanvas();
virtual void DisconnectSlots();
virtual void RecursiveRemove(TObject* obj);
virtual void SetCanvas(TCanvas *c);
virtual void SetFitObject(TVirtualPad *pad, TObject *obj, Int_t event);
virtual void SetFunction(const char *function);
virtual void DoAddition(Bool_t on);
virtual void DoAddtoList();
virtual void DoAdvancedOptions();
virtual void DoAllWeights1();
virtual void DoBestErrors();
virtual void DoBound(Bool_t set);
virtual void DoClose();
virtual void DoDrawSame();
virtual void DoEmptyBinsAllWeights1();
virtual void DoEnteredFunction();
virtual void DoFit();
virtual void DoErrorsDef();
virtual void DoMaxTolerance();
virtual void DoMaxIterations();
virtual void DoFunction(Int_t sel);
virtual void DoImproveResults();
virtual void DoIntegral();
virtual void DoLinearFit();
virtual void DoMethod(Int_t id);
virtual void DoNoChi2();
virtual void DoNoDrawing();
virtual void DoNoOperation(Bool_t on);
virtual void DoNoSelection();
virtual void DoNoStoreDrawing();
virtual void DoReset();
virtual void DoRobust();
virtual void DoSetParameters();
virtual void DoSliderXMoved();
virtual void DoSliderXPressed();
virtual void DoSliderXReleased();
virtual void DoSliderYMoved();
virtual void DoSliderYPressed();
virtual void DoSliderYReleased();
virtual void DoSliderZMoved();
virtual void DoSliderZPressed();
virtual void DoSliderZReleased();
virtual void DoUserDialog();
virtual void DoUseRange();
virtual void DoLibrary(Bool_t on);
virtual void DoMinMethod(Bool_t on);
virtual void DoPrintOpt(Bool_t on);
ClassDef(TFitEditor,0)
};
#endif
Last change: Wed Jun 25 08:39:07 2008
Last generated: 2008-06-25 08:39
This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.