Logo ROOT   6.18/05
Reference Guide
List of all members | Public Member Functions | Static Public Attributes | List of all members
ROOT::Experimental::Detail::RColumnElement< CppT, ColumnT > Class Template Reference

template<typename CppT, EColumnType ColumnT>
class ROOT::Experimental::Detail::RColumnElement< CppT, ColumnT >

Pairs of C++ type and column type, like float and EColumnType::kReal32.

A column element points either to the content of an RFieldValue or into a memory mapped page.

The content pointed to by fRawContent can be a single element or the first element of an array. Usually the on-disk element should map bitwise to the in-memory element. Sometimes that's not the case though, for instance on big endian platforms and for exotic physical columns like 8 bit float.

This class does not provide protection around the raw pointer, fRawContent has to be managed correctly by the user of this class.

Definition at line 103 of file RColumnElement.hxx.

Public Member Functions

 RColumnElement (CppT *value)
 
- Public Member Functions inherited from ROOT::Experimental::Detail::RColumnElementBase
 RColumnElementBase ()
 
 RColumnElementBase (const RColumnElementBase &elemArray, std::size_t at)
 
 RColumnElementBase (const RColumnElementBase &other)=default
 
 RColumnElementBase (RColumnElementBase &&other)=default
 
 RColumnElementBase (void *rawContent, unsigned int size, bool isMappable)
 
virtual ~RColumnElementBase ()=default
 
void Deserialize (void *source, std::size_t count)
 
voidGetRawContent () const
 
unsigned int GetSize () const
 
RColumnElementBaseoperator= (const RColumnElementBase &other)=delete
 
RColumnElementBaseoperator= (RColumnElementBase &&other)=default
 
void Serialize (void *destination, std::size_t count) const
 

Static Public Attributes

static constexpr bool kIsMappable = false
 

Additional Inherited Members

- Protected Member Functions inherited from ROOT::Experimental::Detail::RColumnElementBase
virtual void DoDeserialize (void *, std::size_t) const
 
virtual void DoSerialize (void *, std::size_t) const
 
- Protected Attributes inherited from ROOT::Experimental::Detail::RColumnElementBase
bool fIsMappable
 Indicates that *fRawContent is bitwise identical to the physical column element. More...
 
voidfRawContent
 Points to valid C++ data, either a single value or an array of values. More...
 
unsigned int fSize
 Size of the C++ value pointed to by fRawContent (not necessarily equal to the on-disk element size) More...
 

#include <ROOT/RColumnElement.hxx>

Inheritance diagram for ROOT::Experimental::Detail::RColumnElement< CppT, ColumnT >:
[legend]

Constructor & Destructor Documentation

◆ RColumnElement()

template<typename CppT , EColumnType ColumnT>
ROOT::Experimental::Detail::RColumnElement< CppT, ColumnT >::RColumnElement ( CppT *  value)
inlineexplicit

Definition at line 106 of file RColumnElement.hxx.

Member Data Documentation

◆ kIsMappable

template<typename CppT , EColumnType ColumnT>
constexpr bool ROOT::Experimental::Detail::RColumnElement< CppT, ColumnT >::kIsMappable = false
staticconstexpr

Definition at line 105 of file RColumnElement.hxx.


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