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

Points to an object with RNTuple I/O support and keeps a pointer to the corresponding field.

Only fields can create RValue objects through generation, binding or splitting.

Definition at line 187 of file RField.hxx.

Public Member Functions

 RValue (const RValue &)=default
 
 RValue (RValue &&other)=default
 
 ~RValue ()=default
 
std::size_t Append ()
 
void Bind (std::shared_ptr< void > objPtr)
 
void BindRawPtr (void *rawPtr)
 
void EmplaceNew ()
 Replace the current object pointer by a pointer to a new object constructed by the field.
 
const RFieldBaseGetField () const
 
template<typename T >
std::shared_ptr< T > GetPtr () const
 
template<typename T >
const T & GetRef () const
 
RValueoperator= (const RValue &)=default
 
RValueoperator= (RValue &&other)=default
 
void Read (NTupleSize_t globalIndex)
 
void Read (RClusterIndex clusterIndex)
 

Private Member Functions

 RValue (RFieldBase *field, std::shared_ptr< void > objPtr)
 

Private Attributes

RFieldBasefField = nullptr
 The field that created the RValue.
 
std::shared_ptr< void > fObjPtr
 Set by Bind() or by RFieldBase::CreateValue(), SplitValue() or BindValue()
 

Friends

class RFieldBase
 

#include <ROOT/RField.hxx>

Constructor & Destructor Documentation

◆ RValue() [1/3]

ROOT::Experimental::RFieldBase::RValue::RValue ( RFieldBase field,
std::shared_ptr< void >  objPtr 
)
inlineprivate

Definition at line 194 of file RField.hxx.

◆ RValue() [2/3]

ROOT::Experimental::RFieldBase::RValue::RValue ( const RValue )
default

◆ RValue() [3/3]

ROOT::Experimental::RFieldBase::RValue::RValue ( RValue &&  other)
default

◆ ~RValue()

ROOT::Experimental::RFieldBase::RValue::~RValue ( )
default

Member Function Documentation

◆ Append()

std::size_t ROOT::Experimental::RFieldBase::RValue::Append ( )
inline

Definition at line 203 of file RField.hxx.

◆ Bind()

void ROOT::Experimental::RFieldBase::RValue::Bind ( std::shared_ptr< void >  objPtr)
inline

Definition at line 206 of file RField.hxx.

◆ BindRawPtr()

void ROOT::Experimental::RFieldBase::RValue::BindRawPtr ( void *  rawPtr)

Definition at line 388 of file RField.cxx.

◆ EmplaceNew()

void ROOT::Experimental::RFieldBase::RValue::EmplaceNew ( )
inline

Replace the current object pointer by a pointer to a new object constructed by the field.

Definition at line 209 of file RField.hxx.

◆ GetField()

const RFieldBase & ROOT::Experimental::RFieldBase::RValue::GetField ( ) const
inline

Definition at line 223 of file RField.hxx.

◆ GetPtr()

template<typename T >
std::shared_ptr< T > ROOT::Experimental::RFieldBase::RValue::GetPtr ( ) const
inline

Definition at line 212 of file RField.hxx.

◆ GetRef()

template<typename T >
const T & ROOT::Experimental::RFieldBase::RValue::GetRef ( ) const
inline

Definition at line 218 of file RField.hxx.

◆ operator=() [1/2]

RValue & ROOT::Experimental::RFieldBase::RValue::operator= ( const RValue )
default

◆ operator=() [2/2]

RValue & ROOT::Experimental::RFieldBase::RValue::operator= ( RValue &&  other)
default

◆ Read() [1/2]

void ROOT::Experimental::RFieldBase::RValue::Read ( NTupleSize_t  globalIndex)
inline

Definition at line 204 of file RField.hxx.

◆ Read() [2/2]

void ROOT::Experimental::RFieldBase::RValue::Read ( RClusterIndex  clusterIndex)
inline

Definition at line 205 of file RField.hxx.

Friends And Related Symbol Documentation

◆ RFieldBase

friend class RFieldBase
friend

Definition at line 188 of file RField.hxx.

Member Data Documentation

◆ fField

RFieldBase* ROOT::Experimental::RFieldBase::RValue::fField = nullptr
private

The field that created the RValue.

Definition at line 191 of file RField.hxx.

◆ fObjPtr

std::shared_ptr<void> ROOT::Experimental::RFieldBase::RValue::fObjPtr
private

Set by Bind() or by RFieldBase::CreateValue(), SplitValue() or BindValue()

Definition at line 192 of file RField.hxx.

Libraries for ROOT::Experimental::RFieldBase::RValue:

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