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

Group of browsable elements - combines several different elements together.

Author
Sergey Linev S.Lin.nosp@m.ev@g.nosp@m.si.de
Date
2019-11-22
Warning
This is part of the ROOT 7 prototype! It will change without notice. It might trigger earthquakes. Feedback is welcome!

Definition at line 26 of file RGroup.hxx.

Public Member Functions

 RGroup (const std::string &name, const std::string &title="")
 
virtual ~RGroup ()=default
 
void Add (std::shared_ptr< RElement > elem)
 
auto & GetChilds () const
 
std::unique_ptr< RLevelIterGetChildsIter () override
 Create iterator for childs elements if any.
 
std::string GetName () const override
 Name of browsable, must be provided in derived classes.
 
std::string GetTitle () const override
 Title of browsable (optional)
 
- Public Member Functions inherited from ROOT::Experimental::Browsable::RElement
virtual ~RElement ()=default
 
virtual bool cd ()
 Select element as active.
 
virtual std::string GetContent (const std::string &="text")
 Returns element content, depends from kind.
 
virtual EActionKind GetDefaultAction () const
 Get default action.
 
virtual int GetNumChilds ()
 Returns number of childs By default creates iterator and iterates over all items.
 
virtual std::unique_ptr< RHolderGetObject ()
 Access object.
 
virtual bool IsCapable (EActionKind action) const
 Check if want to perform action.
 
virtual bool IsExpandByDefault () const
 Should item representing element be expand by default.
 
virtual bool MatchName (const std::string &name) const
 Checks if element name match to provided value.
 

Private Attributes

std::vector< std::shared_ptr< RElement > > fChilds
 
std::string fName
 
std::string fTitle
 

Additional Inherited Members

- Public Types inherited from ROOT::Experimental::Browsable::RElement
enum  EActionKind {
  kActNone , kActBrowse , kActEdit , kActImage ,
  kActDraw6 , kActDraw7 , kActCanvas , kActGeom
}
 Possible actions on double-click. More...
 
enum  EContentKind {
  kNone , kText , kImage , kPng ,
  kJpeg , kJson , kFileName
}
 
- Static Public Member Functions inherited from ROOT::Experimental::Browsable::RElement
static int ComparePaths (const RElementPath_t &path1, const RElementPath_t &path2)
 Compare two paths, Returns number of elements matches in both paths.
 
static int ExtractItemIndex (std::string &name)
 Extract index from name Index coded by client with ###<indx>$$$ suffix Such coding used by browser to identify element by index.
 
static EContentKind GetContentKind (const std::string &kind)
 Find item with specified name Default implementation, should work for all.
 
static std::string GetPathAsString (const RElementPath_t &path)
 Converts element path back to string.
 
static std::shared_ptr< RElementGetSubElement (std::shared_ptr< RElement > &elem, const RElementPath_t &path)
 Returns sub element.
 
static RElementPath_t ParsePath (const std::string &str)
 Parse string path to produce RElementPath_t One should avoid to use string pathes as much as possible.
 

#include <ROOT/Browsable/RGroup.hxx>

Inheritance diagram for ROOT::Experimental::Browsable::RGroup:
[legend]

Constructor & Destructor Documentation

◆ RGroup()

ROOT::Experimental::Browsable::RGroup::RGroup ( const std::string &  name,
const std::string &  title = "" 
)
inline

Definition at line 34 of file RGroup.hxx.

◆ ~RGroup()

virtual ROOT::Experimental::Browsable::RGroup::~RGroup ( )
virtualdefault

Member Function Documentation

◆ Add()

void ROOT::Experimental::Browsable::RGroup::Add ( std::shared_ptr< RElement elem)
inline

Definition at line 47 of file RGroup.hxx.

◆ GetChilds()

auto & ROOT::Experimental::Browsable::RGroup::GetChilds ( ) const
inline

Definition at line 49 of file RGroup.hxx.

◆ GetChildsIter()

std::unique_ptr< RLevelIter > RGroup::GetChildsIter ( )
overridevirtual

Create iterator for childs elements if any.

Create iterator for childs of composite.

Reimplemented from ROOT::Experimental::Browsable::RElement.

Definition at line 78 of file RGroup.cxx.

◆ GetName()

std::string ROOT::Experimental::Browsable::RGroup::GetName ( ) const
inlineoverridevirtual

Name of browsable, must be provided in derived classes.

Implements ROOT::Experimental::Browsable::RElement.

Definition at line 39 of file RGroup.hxx.

◆ GetTitle()

std::string ROOT::Experimental::Browsable::RGroup::GetTitle ( ) const
inlineoverridevirtual

Title of browsable (optional)

Reimplemented from ROOT::Experimental::Browsable::RElement.

Definition at line 42 of file RGroup.hxx.

Member Data Documentation

◆ fChilds

std::vector<std::shared_ptr<RElement> > ROOT::Experimental::Browsable::RGroup::fChilds
private

Definition at line 30 of file RGroup.hxx.

◆ fName

std::string ROOT::Experimental::Browsable::RGroup::fName
private

Definition at line 28 of file RGroup.hxx.

◆ fTitle

std::string ROOT::Experimental::Browsable::RGroup::fTitle
private

Definition at line 29 of file RGroup.hxx.

Libraries for ROOT::Experimental::Browsable::RGroup:

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