Logo ROOT  
Reference Guide
RFieldsIterator Class Reference

Iterator over RNTuple fields.

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

Definition at line 158 of file RNTupleBrowseProvider.cxx.

Public Member Functions

 RFieldsIterator (std::shared_ptr< ROOT::Experimental::Detail::RPageSource > ntplSource, std::vector< ROOT::Experimental::DescriptorId_t > &&ids, const std::string &parent_name=""s)
 
virtual ~RFieldsIterator ()=default
 
bool CanItemHaveChilds () const override
 Returns true if current item can have childs. More...
 
std::unique_ptr< RItemCreateItem () override
 Create element for the browser. More...
 
std::shared_ptr< RElementGetElement () override
 Create RElement for current entry - may take much time to load object or open file. More...
 
std::string GetItemName () const override
 Returns current entry name
More...
 
bool Next () override
 Shift to next entry. More...
 
- Public Member Functions inherited from ROOT::Experimental::Browsable::RLevelIter
virtual ~RLevelIter ()=default
 
virtual bool CanItemHaveChilds () const
 Returns true if current item can have childs. More...
 
virtual std::unique_ptr< RItemCreateItem ()
 Create generic description item for RBrowser. More...
 
virtual bool Find (const std::string &name, int indx=-1)
 Find item with specified name Default implementation, should work for all If index specified, not only name but also index should match. More...
 
virtual std::shared_ptr< RElementGetElement ()=0
 Create RElement for current entry - may take much time to load object or open file. More...
 
virtual std::string GetItemName () const =0
 Returns current entry name
More...
 
virtual bool Next ()=0
 Shift to next entry. More...
 

Private Attributes

int fCounter {-1}
 
std::vector< ROOT::Experimental::DescriptorId_tfFieldIds
 
std::shared_ptr< ROOT::Experimental::Detail::RPageSourcefNtplSource
 
std::string fParentName
 
Inheritance diagram for RFieldsIterator:
[legend]

Constructor & Destructor Documentation

◆ RFieldsIterator()

RFieldsIterator::RFieldsIterator ( std::shared_ptr< ROOT::Experimental::Detail::RPageSource ntplSource,
std::vector< ROOT::Experimental::DescriptorId_t > &&  ids,
const std::string &  parent_name = ""s 
)
inline

Definition at line 166 of file RNTupleBrowseProvider.cxx.

◆ ~RFieldsIterator()

virtual RFieldsIterator::~RFieldsIterator ( )
virtualdefault

Member Function Documentation

◆ CanItemHaveChilds()

bool RFieldsIterator::CanItemHaveChilds ( ) const
inlineoverridevirtual

Returns true if current item can have childs.

Reimplemented from ROOT::Experimental::Browsable::RLevelIter.

Definition at line 185 of file RNTupleBrowseProvider.cxx.

◆ CreateItem()

std::unique_ptr< RItem > RFieldsIterator::CreateItem ( )
inlineoverridevirtual

Create element for the browser.

Reimplemented from ROOT::Experimental::Browsable::RLevelIter.

Definition at line 193 of file RNTupleBrowseProvider.cxx.

◆ GetElement()

std::shared_ptr< RElement > RFieldsIterator::GetElement ( )
inlineoverridevirtual

Create RElement for current entry - may take much time to load object or open file.

Implements ROOT::Experimental::Browsable::RLevelIter.

Definition at line 219 of file RNTupleBrowseProvider.cxx.

◆ GetItemName()

std::string RFieldsIterator::GetItemName ( ) const
inlineoverridevirtual

Returns current entry name

Implements ROOT::Experimental::Browsable::RLevelIter.

Definition at line 180 of file RNTupleBrowseProvider.cxx.

◆ Next()

bool RFieldsIterator::Next ( )
inlineoverridevirtual

Shift to next entry.

Implements ROOT::Experimental::Browsable::RLevelIter.

Definition at line 175 of file RNTupleBrowseProvider.cxx.

Member Data Documentation

◆ fCounter

int RFieldsIterator::fCounter {-1}
private

Definition at line 163 of file RNTupleBrowseProvider.cxx.

◆ fFieldIds

std::vector<ROOT::Experimental::DescriptorId_t> RFieldsIterator::fFieldIds
private

Definition at line 161 of file RNTupleBrowseProvider.cxx.

◆ fNtplSource

std::shared_ptr<ROOT::Experimental::Detail::RPageSource> RFieldsIterator::fNtplSource
private

Definition at line 160 of file RNTupleBrowseProvider.cxx.

◆ fParentName

std::string RFieldsIterator::fParentName
private

Definition at line 162 of file RNTupleBrowseProvider.cxx.


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