Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
ROOT::Experimental::Internal Namespace Reference

Namespaces

namespace  BitPacking
 

Classes

struct  AxisConfigToType
 Converts a RAxisConfig of whatever kind to the corresponding RAxisBase-derived object. More...
 
struct  AxisConfigToType< RAxisConfig::kEquidistant >
 
struct  AxisConfigToType< RAxisConfig::kGrow >
 
struct  AxisConfigToType< RAxisConfig::kIrregular >
 
struct  AxisConfigToType< RAxisConfig::kLabels >
 
class  RArraySizeField
 An artificial field that provides the size of a fixed-size array. More...
 
class  RCluster
 An in-memory subset of the packed and compressed pages of a cluster. More...
 
class  RClusterDescriptorBuilder
 A helper class for piece-wise construction of an RClusterDescriptor. More...
 
class  RClusterGroupDescriptorBuilder
 A helper class for piece-wise construction of an RClusterGroupDescriptor. More...
 
class  RClusterPool
 Managed a set of clusters containing compressed and packed pages. More...
 
class  RColumn
 A column is a storage-backed array of a simple, fixed-size type, from which pages can be mapped into memory. More...
 
class  RColumnDescriptorBuilder
 A helper class for piece-wise construction of an RColumnDescriptor. More...
 
class  RColumnElementBase
 A column element encapsulates the translation between basic C++ types and their column representation. More...
 
struct  RColumnInfo
 
struct  RComputeGlobalBin
 Recursively gets the total number of regular bins before the current dimension, when computing a global bin that is in under- or overflow in at least one dimension. More...
 
struct  RComputeGlobalBin<-1, NDIMS, BINS, AXES >
 
struct  RComputeGlobalBinRaw
 Recursively computes a zero-based global bin index, given... More...
 
struct  RComputeGlobalBinRaw<-1, NDIMS, BINS, AXES, BINTYPE >
 
struct  RComputeLocalBins
 Recursively computes the number of regular bins before the current dimension, as well as the number of under- and overflow bins left to account for, after the current dimension. More...
 
struct  RComputeLocalBins< 0, NDIMS, AXES >
 
struct  RComputeLocalBinsInitialisation
 Recursively compute some quantities needed for ComputeLocalBins, namely the total number of bins per hyperplane (overflow and regular) and the number of regular bins per hyperplane on the hyperplanes that have them. More...
 
struct  RComputeLocalBinsInitialisation< 0, NDIMS, AXES >
 
struct  RComputeLocalBinsRaw
 Recursively computes zero-based local bin indices, given... More...
 
struct  RComputeLocalBinsRaw<-1, NDIMS, BINS, AXES, BINTYPE >
 
class  RDaosContainer
 A RDaosContainer provides read/write access to objects in a given container. More...
 
struct  RDaosEventQueue
 
class  RDaosNTupleAnchor
 Entry point for an RNTuple in a DAOS container. More...
 
class  RDaosObject
 Provides low-level access to DAOS objects in a container. More...
 
class  RDaosPool
 A RDaosPool provides access to containers in a specific DAOS pool. More...
 
class  RDirectoryEntry
 
class  RExtraTypeInfoDescriptorBuilder
 A helper class for piece-wise construction of an RExtraTypeInfoDescriptor. More...
 
class  RFieldDescriptorBuilder
 A helper class for piece-wise construction of an RFieldDescriptor. More...
 
struct  RFieldRepresentationModifier
 
class  RFileSharedPtrCtor
 
class  RFileStorageInterface
 Base class for RFile storage backends. More...
 
struct  RFillIterRange
 Recursively fills the ranges of all axes, excluding under- and overflow. More...
 
struct  RFillIterRange<-1, AXES >
 
struct  RFindLocalBins
 Find the per-axis local bin indices associated with a certain set of coordinates. More...
 
struct  RFindLocalBins<-1, NDIMS, BINS, COORD, AXES >
 
struct  RGetNBinsCount
 Recursively gets the total number of bins in whole hist, including under- and overflow. More...
 
struct  RGetNBinsCount< 0, AXES >
 
struct  RGetNBinsNoOverCount
 Recursively gets the total number of bins in whole hist, excluding under- and overflow. More...
 
struct  RGetNBinsNoOverCount< 0, AXES >
 
struct  RGetNRegularBinsBefore
 Recursively gets the number of regular bins just before the current dimension. More...
 
struct  RGetNRegularBinsBefore<-1, NDIMS, BINS, AXES >
 
class  RHistBufferedFillBase
 
struct  RHistImplGen
 Generate RHist::fImpl from RHist constructor arguments. More...
 
struct  RHistImplGen< NDIM, NDIM, DATA, PROCESSEDAXISCONFIG... >
 Generate RHist::fImpl from constructor arguments; recursion end. More...
 
class  RIndexIter
 Iterates over an index; the REFERENCE is defined by the REFERENCE template parameter. More...
 
struct  RIntegralTypeMap
 
struct  RIntegralTypeMap< int >
 
struct  RIntegralTypeMap< long >
 
struct  RIntegralTypeMap< long long >
 
struct  RIntegralTypeMap< short >
 
struct  RIntegralTypeMap< signed char >
 
struct  RIntegralTypeMap< unsigned char >
 
struct  RIntegralTypeMap< unsigned int >
 
struct  RIntegralTypeMap< unsigned long >
 
struct  RIntegralTypeMap< unsigned long long >
 
struct  RIntegralTypeMap< unsigned short >
 
class  RIOShared
 
class  RIOSharedBase
 
class  RKeyBlob
 The RKeyBlob writes an invisible key into a TFile. More...
 
struct  RLocalBinsToCoords
 Recursively converts local axis bins from the standard kUnderflowBin/kOverflowBin for under/overflow bin indexing convention, to the corresponding bin coordinates. More...
 
struct  RLocalBinsToCoords<-1, NDIMS, BINS, COORD, AXES >
 
struct  RLocalBinsToVirtualBins
 Recursively converts local axis bins from the standard kUnderflowBin/kOverflowBin for under/overflow bin indexing convention, to a "virtual bin" convention where the underflow bin has index 0 and the overflow bin has index N+1 where N is the axis' number of regular bins. More...
 
struct  RLocalBinsToVirtualBins<-1, NDIMS, BINS, AXES >
 
class  RMiniFileReader
 Read RNTuple data blocks from a TFile container, provided by a RRawFile. More...
 
class  RNTupleColumnReader
 Every RDF column is represented by exactly one RNTuple field. More...
 
class  RNTupleCompressor
 Helper class to compress data blocks in the ROOT compression frame format. More...
 
class  RNTupleDecompressor
 Helper class to uncompress data blocks in the ROOT compression frame format. More...
 
class  RNTupleDescriptorBuilder
 A helper class for piece-wise construction of an RNTupleDescriptor. More...
 
class  RNTupleFileWriter
 Write RNTuple data blocks in a TFile or a bare file container. More...
 
class  RNTupleImtTaskScheduler
 
class  RNTupleIndex
 Builds an index on one or several fields of an RNTuple so it can be joined onto other RNTuples. More...
 
struct  RNTupleMergeData
 
struct  RNTupleMergeOptions
 
class  RNTupleMerger
 Given a set of RPageSources merge them into an RPageSink, optionally changing their compression. More...
 
class  RNTupleModelChangeset
 The incremental changes to a RNTupleModel More...
 
class  RNTupleProcessor
 
class  RNTupleSerializer
 A helper class for serializing and deserialization of the RNTuple binary format. More...
 
struct  RNTupleSourceSpec
 Helper type representing the name and storage location of an RNTuple. More...
 
class  RNTupleWriteOptionsManip
 
class  ROnDiskPage
 A page as being stored on disk, that is packed and compressed. More...
 
class  ROnDiskPageMap
 A memory region that contains packed and compressed pages. More...
 
class  ROnDiskPageMapHeap
 An ROnDiskPageMap that is used for an fMemory allocated as an array of unsigned char. More...
 
class  RPage
 A page is a slice of a column that is mapped into memory. More...
 
class  RPageAllocator
 Abstract interface to allocate and release pages. More...
 
class  RPageAllocatorHeap
 Uses standard C++ memory allocation for the column data pages. More...
 
class  RPageNullSink
 Dummy sink that discards all pages. More...
 
class  RPagePersistentSink
 Base class for a sink with a physical storage backend. More...
 
class  RPagePool
 A thread-safe cache of pages loaded from the page source. More...
 
class  RPageRef
 Reference to a page stored in the page pool. More...
 
class  RPageSink
 Abstract interface to write data into an ntuple. More...
 
class  RPageSinkBuf
 Wrapper sink that coalesces cluster column page writes. More...
 
class  RPageSinkDaos
 Storage provider that writes ntuple pages to into a DAOS container. More...
 
class  RPageSinkFile
 Storage provider that write ntuple pages into a file. More...
 
class  RPageSource
 Abstract interface to read data from an ntuple. More...
 
class  RPageSourceDaos
 Storage provider that reads ntuple pages from a DAOS container. More...
 
class  RPageSourceFile
 Storage provider that reads ntuple pages from a file. More...
 
class  RPageSourceFriends
 Virtual storage that combines several other sources horizontally. More...
 
class  RPageStorage
 Common functionality of an ntuple storage for both reading and writing. More...
 
class  RRDFCardinalityField
 An artificial field that transforms an RNTuple column that contains the offset of collections into collection sizes. More...
 
struct  RSealedPageMergeData
 
struct  RTestFutureColumn
 
struct  RTFileControlBlock
 If a TFile container is written by a C stream (simple file), on dataset commit, the file header and the TFile record need to be updated. More...
 
struct  RVirtualBinsToLocalBins
 Recursively converts zero-based virtual bins where the underflow bin has index 0 and the overflow bin has index N+1 where N is the axis' number of regular bins, to the standard kUnderflowBin/kOverflowBin for under/overflow bin indexing convention. More...
 
struct  RVirtualBinsToLocalBins<-1, NDIMS, BINS, AXES >
 
class  RVirtualCanvasPainter
 Abstract interface for painting a canvas. More...
 
class  RWritePageMemoryManager
 Helper to maintain a memory budget for the write pages of a set of columns. More...
 
class  TBulkBranchRead
 Helper class for reading many branch entries at once to optimize throughput. More...
 
class  TTreeReaderValueFastBase
 

Typedefs

using ntuple_index_t = std::uint32_t
 
using RIOSharedVector_t = std::vector< RIOSharedBase * >
 

Enumerations

enum class  EColumnCppType {
  kChar , kBool , kByte , kUint8 ,
  kUint16 , kUint32 , kUint64 , kInt8 ,
  kInt16 , kInt32 , kInt64 , kFloat ,
  kDouble , kClusterSize , kColumnSwitch , kMax
}
 
enum  EDaosLocatorFlags { kCagedPage = 0x01 }
 
enum class  ENTupleMergeErrBehavior { kAbort , kSkip }
 
enum class  ENTupleMergingMode { kFilter , kStrict , kUnion }
 
enum class  EPageStorageType { kSink , kSource }
 
Histogram traits

Helper traits for histogram operations.

enum class  EBinCoord { kBinFrom , kBinCenter , kBinTo }
 Specifies if the wanted result is the bin's lower edge, center or higher edge. More...
 
enum class  EFindStatus { kCanGrow , kValid }
 Status of FindBin(x) and FindAdjustedBin(x) More...
 

Functions

void CallCommitClusterOnField (RFieldBase &)
 
void CallConnectPageSinkOnField (RFieldBase &, RPageSink &, NTupleSize_t firstEntry=0)
 
void CallConnectPageSourceOnField (RFieldBase &, RPageSource &)
 
void CallFlushColumnsOnField (RFieldBase &)
 
std::unique_ptr< RNTupleWriterCreateRNTupleWriter (std::unique_ptr< RNTupleModel > model, std::unique_ptr< Internal::RPageSink > sink)
 
std::uint16_t FloatToHalf (float value)
 Convert an IEEE single-precision float to half-precision.
 
std::unique_ptr< RColumnElementBaseGenerateColumnElement (EColumnCppType cppType, EColumnType colType)
 
RLogChannelGetChannelOrManager ()
 
RLogChannelGetChannelOrManager (RLogChannel &channel)
 
constexpr std::uint16_t GetOverflowedValue (std::uint16_t value=0)
 Get the half-precision overflow.
 
constexpr std::uint16_t GetRoundedValue (std::uint16_t value, int guardBit, int stickyBit)
 Round the given half-precision number to the nearest representable value.
 
float HalfToFloat (std::uint16_t value)
 Convert an IEEE half-precision float to single-precision.
 
template<typename T >
auto MakeAliasedSharedPtr (T *rawPtr)
 
void swap (RDirectoryEntry &e1, RDirectoryEntry &e2) noexcept
 
Relational operators.
template<class REFERENCE , class POINTER >
bool operator< (RIndexIter< REFERENCE, POINTER > lhs, RIndexIter< REFERENCE, POINTER > rhs) noexcept
 
template<class REFERENCE , class POINTER >
bool operator> (RIndexIter< REFERENCE, POINTER > lhs, RIndexIter< REFERENCE, POINTER > rhs) noexcept
 
template<class REFERENCE , class POINTER >
bool operator<= (RIndexIter< REFERENCE, POINTER > lhs, RIndexIter< REFERENCE, POINTER > rhs) noexcept
 
template<class REFERENCE , class POINTER >
bool operator>= (RIndexIter< REFERENCE, POINTER > lhs, RIndexIter< REFERENCE, POINTER > rhs) noexcept
 
template<class REFERENCE , class POINTER >
bool operator== (RIndexIter< REFERENCE, POINTER > lhs, RIndexIter< REFERENCE, POINTER > rhs) noexcept
 
template<class REFERENCE , class POINTER >
bool operator!= (RIndexIter< REFERENCE, POINTER > lhs, RIndexIter< REFERENCE, POINTER > rhs) noexcept
 
Axis tuple operations

Template operations on axis tuple.

template<class... AXISCONFIG>
int GetNBinsNoOverFromAxes (AXISCONFIG... axisArgs)
 Get the number of bins in whole hist, excluding under- and overflow.
 
template<class... AXISCONFIG>
int GetNBinsFromAxes (AXISCONFIG... axisArgs)
 Get the number of bins in whole hist, including under- and overflow.
 
template<class... AXISCONFIG>
int GetNOverflowBinsFromAxes (AXISCONFIG... axisArgs)
 Get the number of under- and overflow bins in whole hist, excluding regular bins.
 
template<class... AXISCONFIG>
static std::array< const RAxisBase *, sizeof...(AXISCONFIG)> GetAxisView (const AXISCONFIG &... axes) noexcept
 

Variables

constexpr EColumnCppType kTestFutureColumn
 

Typedef Documentation

◆ ntuple_index_t

using ROOT::Experimental::Internal::ntuple_index_t = typedef std::uint32_t

Definition at line 37 of file RPageStorageDaos.hxx.

◆ RIOSharedVector_t

Definition at line 52 of file RDrawable.hxx.

Enumeration Type Documentation

◆ EBinCoord

Specifies if the wanted result is the bin's lower edge, center or higher edge.

Enumerator
kBinFrom 

Get the lower bin edge.

kBinCenter 

Get the bin center.

kBinTo 

Get the bin high edge.

Definition at line 252 of file RHistImpl.hxx.

◆ EColumnCppType

Enumerator
kChar 
kBool 
kByte 
kUint8 
kUint16 
kUint32 
kUint64 
kInt8 
kInt16 
kInt32 
kInt64 
kFloat 
kDouble 
kClusterSize 
kColumnSwitch 
kMax 

Definition at line 119 of file RColumnElementBase.hxx.

◆ EDaosLocatorFlags

Enumerator
kCagedPage 

Definition at line 43 of file RPageStorageDaos.hxx.

◆ EFindStatus

Status of FindBin(x) and FindAdjustedBin(x)

Enumerator
kCanGrow 

The coordinate could fit after growing the axis.

kValid 

The returned bin index is valid.

Definition at line 259 of file RHistImpl.hxx.

◆ ENTupleMergeErrBehavior

Enumerator
kAbort 

The merger will abort merging as soon as an error is encountered.

kSkip 

Upon errors, the merger will skip the current source and continue.

Definition at line 45 of file RNTupleMerger.hxx.

◆ ENTupleMergingMode

Enumerator
kFilter 

The merger will discard all columns that aren't present in the prototype model (i.e.

the model of the first source)

kStrict 

The merger will refuse to merge any 2 RNTuples whose schema doesn't match exactly.

kUnion 

The merger will update the output model to include all columns from all sources.

Entries corresponding to columns that are not present in a source will be set to the default value of the type.

Definition at line 34 of file RNTupleMerger.hxx.

◆ EPageStorageType

Enumerator
kSink 
kSource 

Definition at line 56 of file RPageStorage.hxx.

Function Documentation

◆ CallCommitClusterOnField()

void ROOT::Experimental::Internal::CallCommitClusterOnField ( RFieldBase field)

Definition at line 415 of file RField.cxx.

◆ CallConnectPageSinkOnField()

void ROOT::Experimental::Internal::CallConnectPageSinkOnField ( RFieldBase field,
Internal::RPageSink sink,
NTupleSize_t  firstEntry = 0 
)

Definition at line 419 of file RField.cxx.

◆ CallConnectPageSourceOnField()

void ROOT::Experimental::Internal::CallConnectPageSourceOnField ( RFieldBase field,
Internal::RPageSource source 
)

Definition at line 424 of file RField.cxx.

◆ CallFlushColumnsOnField()

void ROOT::Experimental::Internal::CallFlushColumnsOnField ( RFieldBase field)

Definition at line 411 of file RField.cxx.

◆ CreateRNTupleWriter()

std::unique_ptr< ROOT::Experimental::RNTupleWriter > ROOT::Experimental::Internal::CreateRNTupleWriter ( std::unique_ptr< RNTupleModel model,
std::unique_ptr< Internal::RPageSink sink 
)

Definition at line 108 of file RNTupleWriter.cxx.

◆ FloatToHalf()

std::uint16_t ROOT::Experimental::Internal::FloatToHalf ( float  value)
inline

Convert an IEEE single-precision float to half-precision.

Credit for this goes to Jeroen van der Zijp.

Parameters
[in]valueThe single-precision value to convert
Returns
The converted half-precision value

Definition at line 96 of file RFloat16.hxx.

◆ GenerateColumnElement()

std::unique_ptr< ROOT::Experimental::Internal::RColumnElementBase > ROOT::Experimental::Internal::GenerateColumnElement ( EColumnCppType  cppType,
EColumnType  colType 
)

Definition at line 156 of file RColumnElement.cxx.

◆ GetAxisView()

template<class... AXISCONFIG>
static std::array< const RAxisBase *, sizeof...(AXISCONFIG)> ROOT::Experimental::Internal::GetAxisView ( const AXISCONFIG &...  axes)
staticnoexcept

Definition at line 710 of file RHistImpl.hxx.

◆ GetChannelOrManager() [1/2]

RLogChannel & ROOT::Experimental::Internal::GetChannelOrManager ( )
inline

Definition at line 302 of file RLogger.hxx.

◆ GetChannelOrManager() [2/2]

RLogChannel & ROOT::Experimental::Internal::GetChannelOrManager ( RLogChannel channel)
inline

Definition at line 306 of file RLogger.hxx.

◆ GetNBinsFromAxes()

template<class... AXISCONFIG>
int ROOT::Experimental::Internal::GetNBinsFromAxes ( AXISCONFIG...  axisArgs)

Get the number of bins in whole hist, including under- and overflow.

Definition at line 310 of file RHistImpl.hxx.

◆ GetNBinsNoOverFromAxes()

template<class... AXISCONFIG>
int ROOT::Experimental::Internal::GetNBinsNoOverFromAxes ( AXISCONFIG...  axisArgs)

Get the number of bins in whole hist, excluding under- and overflow.

Definition at line 286 of file RHistImpl.hxx.

◆ GetNOverflowBinsFromAxes()

template<class... AXISCONFIG>
int ROOT::Experimental::Internal::GetNOverflowBinsFromAxes ( AXISCONFIG...  axisArgs)

Get the number of under- and overflow bins in whole hist, excluding regular bins.

Definition at line 318 of file RHistImpl.hxx.

◆ GetOverflowedValue()

constexpr std::uint16_t ROOT::Experimental::Internal::GetOverflowedValue ( std::uint16_t  value = 0)
constexpr

Get the half-precision overflow.

Parameters
[in]valueHalf-precision value with sign bit only
Returns
Rounded overflowing half-precision value

Definition at line 70 of file RFloat16.hxx.

◆ GetRoundedValue()

constexpr std::uint16_t ROOT::Experimental::Internal::GetRoundedValue ( std::uint16_t  value,
int  guardBit,
int  stickyBit 
)
constexpr

Round the given half-precision number to the nearest representable value.

Parameters
[in]valueThe finite half-precision number to round
[in]guardBitThe most significant discarded bit
[in]stickyBitLogical OR of all but the most significant discarded bits
Returns
The nearest-rounded half-precision value

Definition at line 83 of file RFloat16.hxx.

◆ HalfToFloat()

float ROOT::Experimental::Internal::HalfToFloat ( std::uint16_t  value)
inline

Convert an IEEE half-precision float to single-precision.

Credit for this goes to Jeroen van der Zijp.

Parameters
[in]valueThe half-precision value to convert
Returns
The converted single-precision value

Definition at line 132 of file RFloat16.hxx.

◆ MakeAliasedSharedPtr()

template<typename T >
auto ROOT::Experimental::Internal::MakeAliasedSharedPtr ( T *  rawPtr)

Definition at line 233 of file RNTupleUtil.hxx.

◆ operator!=()

template<class REFERENCE , class POINTER >
bool ROOT::Experimental::Internal::operator!= ( RIndexIter< REFERENCE, POINTER >  lhs,
RIndexIter< REFERENCE, POINTER >  rhs 
)
inlinenoexcept

Definition at line 151 of file RIndexIter.hxx.

◆ operator<()

template<class REFERENCE , class POINTER >
bool ROOT::Experimental::Internal::operator< ( RIndexIter< REFERENCE, POINTER >  lhs,
RIndexIter< REFERENCE, POINTER >  rhs 
)
noexcept

Definition at line 121 of file RIndexIter.hxx.

◆ operator<=()

template<class REFERENCE , class POINTER >
bool ROOT::Experimental::Internal::operator<= ( RIndexIter< REFERENCE, POINTER >  lhs,
RIndexIter< REFERENCE, POINTER >  rhs 
)
noexcept

Definition at line 133 of file RIndexIter.hxx.

◆ operator==()

template<class REFERENCE , class POINTER >
bool ROOT::Experimental::Internal::operator== ( RIndexIter< REFERENCE, POINTER >  lhs,
RIndexIter< REFERENCE, POINTER >  rhs 
)
inlinenoexcept

Definition at line 145 of file RIndexIter.hxx.

◆ operator>()

template<class REFERENCE , class POINTER >
bool ROOT::Experimental::Internal::operator> ( RIndexIter< REFERENCE, POINTER >  lhs,
RIndexIter< REFERENCE, POINTER >  rhs 
)
noexcept

Definition at line 127 of file RIndexIter.hxx.

◆ operator>=()

template<class REFERENCE , class POINTER >
bool ROOT::Experimental::Internal::operator>= ( RIndexIter< REFERENCE, POINTER >  lhs,
RIndexIter< REFERENCE, POINTER >  rhs 
)
inlinenoexcept

Definition at line 139 of file RIndexIter.hxx.

◆ swap()

void ROOT::Experimental::Internal::swap ( RDirectoryEntry e1,
RDirectoryEntry e2 
)
inlinenoexcept

Definition at line 94 of file RDirectoryEntry.hxx.

Variable Documentation

◆ kTestFutureColumn

constexpr EColumnCppType ROOT::Experimental::Internal::kTestFutureColumn
inlineconstexpr
Initial value:
=
static_cast<EColumnCppType>(std::numeric_limits<std::underlying_type_t<EColumnCppType>>::max() - 1)

Definition at line 138 of file RColumnElementBase.hxx.