Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
ROOT::Experimental::RFitPanel Class Reference

Definition at line 35 of file RFitPanel.hxx.

Classes

struct  FitRes
 

Public Member Functions

 RFitPanel (const std::string &title="Fit panel")
 Constructor.
 
 ~RFitPanel ()
 Destructor.
 
void AssignCanvas (const std::string &cname)
 
void AssignCanvas (std::shared_ptr< RCanvas > &canv)
 assign canvas to use for drawing results of fitting or showing fitpanel itself
 
void AssignHistogram (const std::string &hname)
 Assign histogram name to use with fit panel - it should be available in gDirectory.
 
void AssignHistogram (TH1 *hist)
 Assign histogram to use with fit panel - without ownership.
 
void ClearOnClose (const std::shared_ptr< void > &handle)
 Set handle which will be cleared when connection is closed.
 
std::shared_ptr< ROOT::RWebWindowGetWindow ()
 Returns RWebWindow instance, used to display FitPanel.
 
void Hide ()
 hide FitPanel
 
void Show (const RWebDisplayArgs &args="")
 show FitPanel in specified place
 

Private Member Functions

TF1copyTF1 (TF1 *f)
 Copies f into a new TF1 to be stored in the fitpanel with it's own ownership.
 
bool DoDraw ()
 Perform drawing using current model settings Returns true if any action was done.
 
bool DoFit ()
 Perform fitting using current model settings Returns true if any action was done.
 
void DoPadUpdate (TPad *pad)
 Mark pad modified and do update For web canvas set async mode first to avoid blocking here.
 
TFitResultFindFitResult (const std::string &funcid)
 Creates new instance to make fitting.
 
TF1FindFunction (const std::string &funcid)
 Search for existing functions, ownership still belongs to FitPanel or global lists.
 
Color_t GetColor (const std::string &colorid)
 Extract color from string Should be coded as #ff00ff string.
 
TPadGetDrawPad (TObject *obj, bool force=false)
 Returns pad where histogram is drawn If canvas not exists, create new one.
 
std::unique_ptr< TF1GetFitFunction (const std::string &funcid)
 Creates new instance to make fitting.
 
RFitPanelModel::EFitObjectType GetFitObjectType (TObject *obj)
 Returns kind of object.
 
void GetFunctionsFromSystem ()
 Looks for all the functions registered in the current ROOT session.
 
TObjectGetSelectedObject (const std::string &objid)
 Returns object based on it string id Searches either in gDirectory or in internal panel list.
 
TObjectMakeConfidenceLevels (TFitResult *res)
 Create confidence levels drawing tab.
 
RFitPanelModelmodel ()
 Return reference on model object Model created if was not exists before.
 
void ProcessData (unsigned connid, const std::string &arg)
 Process data from FitPanel OpenUI5-based FitPanel sends commands or status changes.
 
void SelectFunction (const std::string &funcid)
 Select fit function.
 
void SelectObject (const std::string &objid)
 Select object for fitting.
 
void SendModel ()
 Send model object to the client.
 
void UpdateDataSet ()
 Update list of available data.
 
void UpdateFunctionsList ()
 Update list of available functions.
 
int UpdateModel (const std::string &json)
 Update fit model returns -1 if JSON fails return 0 if nothing large changed return 1 if important selection are changed and client need to be updated.
 

Private Attributes

std::shared_ptr< RCanvasfCanvas
 ! v7 canvas used to display results
 
std::string fCanvName
 ! v6 canvas name used to display fit, will be created if not exists
 
unsigned fConnId {0}
 ! client connection id
 
std::unique_ptr< RFitPanelModelfModel
 
std::vector< TObject * > fObjects
 ! objects provided directly to panel for fitting
 
std::string fPadName
 ! v6 pad name in the canvas, where object is (was) drawn
 
std::list< FitResfPrevRes
 ! all previous functions used for fitting
 
std::vector< std::unique_ptr< TF1 > > fSystemFuncs
 ! local copy of all internal system funcs
 
std::shared_ptr< ROOT::RWebWindowfWindow
 ! configured display
 

#include <ROOT/RFitPanel.hxx>

Constructor & Destructor Documentation

◆ RFitPanel()

RFitPanel::RFitPanel ( const std::string & title = "Fit panel")

Constructor.

Definition at line 83 of file RFitPanel.cxx.

◆ ~RFitPanel()

RFitPanel::~RFitPanel ( )

Destructor.

Definition at line 93 of file RFitPanel.cxx.

Member Function Documentation

◆ AssignCanvas() [1/2]

void ROOT::Experimental::RFitPanel::AssignCanvas ( const std::string & cname)
inline

Definition at line 106 of file RFitPanel.hxx.

◆ AssignCanvas() [2/2]

void RFitPanel::AssignCanvas ( std::shared_ptr< RCanvas > & canv)

assign canvas to use for drawing results of fitting or showing fitpanel itself

Definition at line 330 of file RFitPanel.cxx.

◆ AssignHistogram() [1/2]

void RFitPanel::AssignHistogram ( const std::string & hname)

Assign histogram name to use with fit panel - it should be available in gDirectory.

Definition at line 321 of file RFitPanel.cxx.

◆ AssignHistogram() [2/2]

void RFitPanel::AssignHistogram ( TH1 * hist)

Assign histogram to use with fit panel - without ownership.

Definition at line 312 of file RFitPanel.cxx.

◆ ClearOnClose()

void RFitPanel::ClearOnClose ( const std::shared_ptr< void > & handle)

Set handle which will be cleared when connection is closed.

Definition at line 982 of file RFitPanel.cxx.

◆ copyTF1()

TF1 * RFitPanel::copyTF1 ( TF1 * f)
private

Copies f into a new TF1 to be stored in the fitpanel with it's own ownership.

This is taken from Fit::StoreAndDrawFitFunction in HFitImpl.cxx

Definition at line 546 of file RFitPanel.cxx.

◆ DoDraw()

bool RFitPanel::DoDraw ( )
private

Perform drawing using current model settings Returns true if any action was done.

Definition at line 864 of file RFitPanel.cxx.

◆ DoFit()

bool RFitPanel::DoFit ( )
private

Perform fitting using current model settings Returns true if any action was done.

Definition at line 685 of file RFitPanel.cxx.

◆ DoPadUpdate()

void RFitPanel::DoPadUpdate ( TPad * pad)
private

Mark pad modified and do update For web canvas set async mode first to avoid blocking here.

Definition at line 970 of file RFitPanel.cxx.

◆ FindFitResult()

TFitResult * RFitPanel::FindFitResult ( const std::string & funcid)
private

Creates new instance to make fitting.

Definition at line 456 of file RFitPanel.cxx.

◆ FindFunction()

TF1 * RFitPanel::FindFunction ( const std::string & funcid)
private

Search for existing functions, ownership still belongs to FitPanel or global lists.

Definition at line 432 of file RFitPanel.cxx.

◆ GetColor()

Color_t RFitPanel::GetColor ( const std::string & colorid)
private

Extract color from string Should be coded as #ff00ff string.

Definition at line 783 of file RFitPanel.cxx.

◆ GetDrawPad()

TPad * RFitPanel::GetDrawPad ( TObject * obj,
bool force = false )
private

Returns pad where histogram is drawn If canvas not exists, create new one.

Definition at line 624 of file RFitPanel.cxx.

◆ GetFitFunction()

std::unique_ptr< TF1 > RFitPanel::GetFitFunction ( const std::string & funcid)
private

Creates new instance to make fitting.

Definition at line 472 of file RFitPanel.cxx.

◆ GetFitObjectType()

RFitPanelModel::EFitObjectType RFitPanel::GetFitObjectType ( TObject * obj)
private

Returns kind of object.

Definition at line 249 of file RFitPanel.cxx.

◆ GetFunctionsFromSystem()

void RFitPanel::GetFunctionsFromSystem ( )
private

Looks for all the functions registered in the current ROOT session.

Definition at line 587 of file RFitPanel.cxx.

◆ GetSelectedObject()

TObject * RFitPanel::GetSelectedObject ( const std::string & objid)
private

Returns object based on it string id Searches either in gDirectory or in internal panel list.

Definition at line 230 of file RFitPanel.cxx.

◆ GetWindow()

std::shared_ptr< ROOT::RWebWindow > RFitPanel::GetWindow ( )

Returns RWebWindow instance, used to display FitPanel.

Definition at line 101 of file RFitPanel.cxx.

◆ Hide()

void RFitPanel::Hide ( )

hide FitPanel

Hide FitPanel.

Definition at line 350 of file RFitPanel.cxx.

◆ MakeConfidenceLevels()

TObject * RFitPanel::MakeConfidenceLevels ( TFitResult * result)
private

Create confidence levels drawing tab.

Then it call Virtual Fitter to perform it.

Definition at line 794 of file RFitPanel.cxx.

◆ model()

RFitPanelModel & RFitPanel::model ( )
private

Return reference on model object Model created if was not exists before.

Definition at line 361 of file RFitPanel.cxx.

◆ ProcessData()

void RFitPanel::ProcessData ( unsigned connid,
const std::string & arg )
private

Process data from FitPanel OpenUI5-based FitPanel sends commands or status changes.

Definition at line 386 of file RFitPanel.cxx.

◆ SelectFunction()

void RFitPanel::SelectFunction ( const std::string & funcid)
private

Select fit function.

Definition at line 302 of file RFitPanel.cxx.

◆ SelectObject()

void RFitPanel::SelectObject ( const std::string & objid)
private

Select object for fitting.

Definition at line 151 of file RFitPanel.cxx.

◆ SendModel()

void RFitPanel::SendModel ( )
private

Send model object to the client.

Definition at line 374 of file RFitPanel.cxx.

◆ Show()

void RFitPanel::Show ( const RWebDisplayArgs & args = "")

show FitPanel in specified place

Show FitPanel.

Definition at line 342 of file RFitPanel.cxx.

◆ UpdateDataSet()

void RFitPanel::UpdateDataSet ( )
private

Update list of available data.

Definition at line 129 of file RFitPanel.cxx.

◆ UpdateFunctionsList()

void RFitPanel::UpdateFunctionsList ( )
private

Update list of available functions.

Definition at line 275 of file RFitPanel.cxx.

◆ UpdateModel()

int RFitPanel::UpdateModel ( const std::string & json)
private

Update fit model returns -1 if JSON fails return 0 if nothing large changed return 1 if important selection are changed and client need to be updated.

Definition at line 509 of file RFitPanel.cxx.

Member Data Documentation

◆ fCanvas

std::shared_ptr<RCanvas> ROOT::Experimental::RFitPanel::fCanvas
private

! v7 canvas used to display results

Definition at line 43 of file RFitPanel.hxx.

◆ fCanvName

std::string ROOT::Experimental::RFitPanel::fCanvName
private

! v6 canvas name used to display fit, will be created if not exists

Definition at line 40 of file RFitPanel.hxx.

◆ fConnId

unsigned ROOT::Experimental::RFitPanel::fConnId {0}
private

! client connection id

Definition at line 46 of file RFitPanel.hxx.

◆ fModel

std::unique_ptr<RFitPanelModel> ROOT::Experimental::RFitPanel::fModel
private

Definition at line 37 of file RFitPanel.hxx.

◆ fObjects

std::vector<TObject*> ROOT::Experimental::RFitPanel::fObjects
private

! objects provided directly to panel for fitting

Definition at line 39 of file RFitPanel.hxx.

◆ fPadName

std::string ROOT::Experimental::RFitPanel::fPadName
private

! v6 pad name in the canvas, where object is (was) drawn

Definition at line 41 of file RFitPanel.hxx.

◆ fPrevRes

std::list<FitRes> ROOT::Experimental::RFitPanel::fPrevRes
private

! all previous functions used for fitting

Definition at line 59 of file RFitPanel.hxx.

◆ fSystemFuncs

std::vector<std::unique_ptr<TF1> > ROOT::Experimental::RFitPanel::fSystemFuncs
private

! local copy of all internal system funcs

Definition at line 48 of file RFitPanel.hxx.

◆ fWindow

std::shared_ptr<ROOT::RWebWindow> ROOT::Experimental::RFitPanel::fWindow
private

! configured display

Definition at line 45 of file RFitPanel.hxx.

Libraries for ROOT::Experimental::RFitPanel:

The documentation for this class was generated from the following files: