Logo ROOT  
Reference Guide
Loading...
Searching...
No Matches
RTreeMapElement Class Reference

Browsing element representing TreeMap visualization for RNTuple.

Author
Patryk Pilichowski
Date
2025
Warning
This is part of the ROOT 7 prototype! It will change without notice. It might trigger earthquakes. Feedback is welcome!

Definition at line 40 of file RNTupleBrowseProvider.cxx.

Public Types

enum  EActionKind {
  kActNone , kActBrowse , kActEdit , kActImage ,
  kActDraw6 , kActDraw7 , kActCanvas , kActTree ,
  kActGeom
}
 Possible actions on double-click. More...
enum  EContentKind {
  kNone , kText , kImage , kPng ,
  kJpeg , kJson , kFileName
}

Public Member Functions

 RTreeMapElement (std::shared_ptr< ROOT::RNTupleReader > ntplReader, const std::string &fileName="")
 ~RTreeMapElement () override=default
virtual bool cd ()
 Select element as active.
virtual bool CheckValid ()
 Check if element still contains valid content.
std::unique_ptr< RItemCreateItem () const override
 Create item with TreeMap icon.
std::unique_ptr< RLevelIterGetChildsIter () override
 No children for TreeMap visualization.
const TClassGetClass () const
 Return class of RNTuple for consistency.
virtual std::string GetContent (const std::string &="text")
 Returns element content, depends from kind.
EActionKind GetDefaultAction () const override
 Default action is to draw the treemap.
std::string GetName () const override
 Name of TreeMap visualization.
virtual int GetNumChilds ()
 Returns number of childs By default creates iterator and iterates over all items.
std::unique_ptr< RHolderGetObject () override
 Return holder with visualization data.
std::string GetTitle () const override
 Title of TreeMap visualization.
bool IsCapable (EActionKind kind) const override
 Check if visualization is capable of being drawn.
virtual bool IsExpandByDefault () const
 Should item representing element be expand by default.
bool IsFolder () const override
 Not expandable by default.
virtual bool IsObject (void *)
 Check if element contains provided pointer.
virtual bool MatchName (const std::string &name) const
 Checks if element name match to provided value.
void SetFileName (const std::string &fileName)
 Set filename for treemap creation.

Static Public Member Functions

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 bool IsLastKeyCycle ()
 Is only last cycle from the list of keys is shown.
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.
static void SetLastKeyCycle (bool on=true)
 Set flag to show only last cycle from the list of keys.

Protected Attributes

std::string fFileName
std::shared_ptr< ROOT::RNTupleReaderfNtplReader
Inheritance diagram for RTreeMapElement:
ROOT::Browsable::RElement

Member Enumeration Documentation

◆ EActionKind

Possible actions on double-click.

Enumerator
kActNone 

do nothing

kActBrowse 

just browse (expand) item

kActEdit 

can provide data for text editor

kActImage 

can be shown in image viewer, can provide image

kActDraw6 

can be drawn inside ROOT6 canvas

kActDraw7 

can be drawn inside ROOT7 canvas

kActCanvas 

indicate that it is canvas and should be drawn directly

kActTree 

can be shown in tree viewer

kActGeom 

can be shown in geometry viewer

Definition at line 50 of file RElement.hxx.

◆ EContentKind

Enumerator
kNone 

not recognized

kText 

"text" - plain text for code editor

kImage 

"image64" - base64 for supported image formats (png/gif/gpeg)

kPng 

"png" - plain png binary code, returned inside std::string

kJpeg 

"jpg" or "jpeg" - plain jpg binary code, returned inside std::string

kJson 

"json" representation of object, can be used in code editor

kFileName 

"filename" - file name if applicable

Definition at line 37 of file RElement.hxx.

Constructor & Destructor Documentation

◆ RTreeMapElement()

RTreeMapElement::RTreeMapElement ( std::shared_ptr< ROOT::RNTupleReader > ntplReader,
const std::string & fileName = "" )
inline

Definition at line 46 of file RNTupleBrowseProvider.cxx.

◆ ~RTreeMapElement()

RTreeMapElement::~RTreeMapElement ( )
overridedefault

Member Function Documentation

◆ cd()

virtual bool ROOT::Browsable::RElement::cd ( )
inlinevirtualinherited

Select element as active.

Reimplemented in TDirectoryElement.

Definition at line 103 of file RElement.hxx.

◆ CheckValid()

virtual bool ROOT::Browsable::RElement::CheckValid ( )
inlinevirtualinherited

Check if element still contains valid content.

Reimplemented in ROOT::Browsable::TObjectElement.

Definition at line 91 of file RElement.hxx.

◆ ComparePaths()

int RElement::ComparePaths ( const RElementPath_t & path1,
const RElementPath_t & path2 )
staticinherited

Compare two paths, Returns number of elements matches in both paths.

Definition at line 147 of file RElement.cxx.

◆ CreateItem()

std::unique_ptr< RItem > RTreeMapElement::CreateItem ( ) const
inlineoverridevirtual

Create item with TreeMap icon.

Reimplemented from ROOT::Browsable::RElement.

Definition at line 78 of file RNTupleBrowseProvider.cxx.

◆ ExtractItemIndex()

int RElement::ExtractItemIndex ( std::string & name)
staticinherited

Extract index from name Index coded by client with ###<indx>$$$ suffix Such coding used by browser to identify element by index.

Definition at line 180 of file RElement.cxx.

◆ GetChildsIter()

std::unique_ptr< RLevelIter > RTreeMapElement::GetChildsIter ( )
inlineoverridevirtual

No children for TreeMap visualization.

Reimplemented from ROOT::Browsable::RElement.

Definition at line 60 of file RNTupleBrowseProvider.cxx.

◆ GetClass()

const TClass * RTreeMapElement::GetClass ( ) const
inline

Return class of RNTuple for consistency.

Definition at line 63 of file RNTupleBrowseProvider.cxx.

◆ GetContent()

std::string RElement::GetContent ( const std::string & kind = "text")
virtualinherited

Returns element content, depends from kind.

Returns string content like text file content or json representation.

Can be "text" or "image64" or "json"

Reimplemented in ROOT::Browsable::RSysFile, ROOT::Browsable::RWrapper, TDirectoryElement, and TTreeBrowsingElement.

Definition at line 92 of file RElement.cxx.

◆ GetContentKind()

RElement::EContentKind RElement::GetContentKind ( const std::string & kind)
staticinherited

Find item with specified name Default implementation, should work for all.

Definition at line 54 of file RElement.cxx.

◆ GetDefaultAction()

EActionKind RTreeMapElement::GetDefaultAction ( ) const
inlineoverridevirtual

Default action is to draw the treemap.

Reimplemented from ROOT::Browsable::RElement.

Definition at line 72 of file RNTupleBrowseProvider.cxx.

◆ GetName()

std::string RTreeMapElement::GetName ( ) const
inlineoverridevirtual

Name of TreeMap visualization.

Implements ROOT::Browsable::RElement.

Definition at line 54 of file RNTupleBrowseProvider.cxx.

◆ GetNumChilds()

int RElement::GetNumChilds ( )
virtualinherited

Returns number of childs By default creates iterator and iterates over all items.

Reimplemented in TBrBrowsableElement, TCollectionElement, and TFolderElement.

Definition at line 41 of file RElement.cxx.

◆ GetObject()

std::unique_ptr< RHolder > RTreeMapElement::GetObject ( )
inlineoverridevirtual

Return holder with visualization data.

Reimplemented from ROOT::Browsable::RElement.

Definition at line 66 of file RNTupleBrowseProvider.cxx.

◆ GetPathAsString()

std::string RElement::GetPathAsString ( const RElementPath_t & path)
staticinherited

Converts element path back to string.

Definition at line 162 of file RElement.cxx.

◆ GetSubElement()

std::shared_ptr< RElement > RElement::GetSubElement ( std::shared_ptr< RElement > & elem,
const RElementPath_t & path )
staticinherited

Returns sub element.

Definition at line 71 of file RElement.cxx.

◆ GetTitle()

std::string RTreeMapElement::GetTitle ( ) const
inlineoverridevirtual

Title of TreeMap visualization.

Reimplemented from ROOT::Browsable::RElement.

Definition at line 57 of file RNTupleBrowseProvider.cxx.

◆ IsCapable()

bool RTreeMapElement::IsCapable ( EActionKind kind) const
inlineoverridevirtual

Check if visualization is capable of being drawn.

Reimplemented from ROOT::Browsable::RElement.

Definition at line 75 of file RNTupleBrowseProvider.cxx.

◆ IsExpandByDefault()

virtual bool ROOT::Browsable::RElement::IsExpandByDefault ( ) const
inlinevirtualinherited

Should item representing element be expand by default.

Reimplemented in ROOT::Browsable::RWrapper.

Definition at line 100 of file RElement.hxx.

◆ IsFolder()

bool RTreeMapElement::IsFolder ( ) const
inlineoverridevirtual

Not expandable by default.

Reimplemented from ROOT::Browsable::RElement.

Definition at line 86 of file RNTupleBrowseProvider.cxx.

◆ IsLastKeyCycle()

bool RElement::IsLastKeyCycle ( )
staticinherited

Is only last cycle from the list of keys is shown.

Definition at line 195 of file RElement.cxx.

◆ IsObject()

virtual bool ROOT::Browsable::RElement::IsObject ( void * )
inlinevirtualinherited

Check if element contains provided pointer.

Reimplemented in ROOT::Browsable::TObjectElement.

Definition at line 83 of file RElement.hxx.

◆ MatchName()

virtual bool ROOT::Browsable::RElement::MatchName ( const std::string & name) const
inlinevirtualinherited

Checks if element name match to provided value.

Reimplemented in ROOT::Browsable::RSysFile.

Definition at line 68 of file RElement.hxx.

◆ ParsePath()

RElementPath_t RElement::ParsePath ( const std::string & str)
staticinherited

Parse string path to produce RElementPath_t One should avoid to use string pathes as much as possible.

Definition at line 118 of file RElement.cxx.

◆ SetFileName()

void RTreeMapElement::SetFileName ( const std::string & fileName)
inline

Set filename for treemap creation.

Definition at line 89 of file RNTupleBrowseProvider.cxx.

◆ SetLastKeyCycle()

void RElement::SetLastKeyCycle ( bool on = true)
staticinherited

Set flag to show only last cycle from the list of keys.

Definition at line 203 of file RElement.cxx.

Member Data Documentation

◆ fFileName

std::string RTreeMapElement::fFileName
protected

Definition at line 43 of file RNTupleBrowseProvider.cxx.

◆ fNtplReader

std::shared_ptr<ROOT::RNTupleReader> RTreeMapElement::fNtplReader
protected

Definition at line 42 of file RNTupleBrowseProvider.cxx.


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