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

Definition at line 37 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 (std::shared_ptr< RH1D > &hist)
 assign histogram for fitting
 
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::shared_ptr< RH1DfFitHist
 ! v7 histogram for fitting
 
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 109 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/3]

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/3]

void RFitPanel::AssignHistogram ( std::shared_ptr< RH1D > &  hist)

assign histogram for fitting

Definition at line 342 of file RFitPanel.cxx.

◆ AssignHistogram() [3/3]

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 990 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 554 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 872 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 693 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 978 of file RFitPanel.cxx.

◆ FindFitResult()

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

Creates new instance to make fitting.

Definition at line 464 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 440 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 791 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 632 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 480 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 595 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 358 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 802 of file RFitPanel.cxx.

◆ model()

RFitPanelModel & RFitPanel::model ( )
private

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

Definition at line 369 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 394 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 382 of file RFitPanel.cxx.

◆ Show()

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

show FitPanel in specified place

Show FitPanel.

Definition at line 350 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 517 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 45 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 42 of file RFitPanel.hxx.

◆ fConnId

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

! client connection id

Definition at line 49 of file RFitPanel.hxx.

◆ fFitHist

std::shared_ptr<RH1D> ROOT::Experimental::RFitPanel::fFitHist
private

! v7 histogram for fitting

Definition at line 46 of file RFitPanel.hxx.

◆ fModel

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

Definition at line 39 of file RFitPanel.hxx.

◆ fObjects

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

! objects provided directly to panel for fitting

Definition at line 41 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 43 of file RFitPanel.hxx.

◆ fPrevRes

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

! all previous functions used for fitting

Definition at line 62 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 51 of file RFitPanel.hxx.

◆ fWindow

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

! configured display

Definition at line 48 of file RFitPanel.hxx.

Libraries for ROOT::Experimental::RFitPanel:

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