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

Read RNTuple data blocks from a TFile container, provided by a RRawFile.

A RRawFile is used for the byte access. The class implements a minimal subset of TFile, enough to extract RNTuple data keys.

Definition at line 54 of file RMiniFile.hxx.

Public Member Functions

 RMiniFileReader ()=default
 
 RMiniFileReader (ROOT::Internal::RRawFile *rawFile)
 Uses the given raw file to read byte ranges.
 
RResult< RNTupleGetNTuple (std::string_view ntupleName)
 Extracts header and footer location for the RNTuple identified by ntupleName.
 
void ReadBuffer (void *buffer, size_t nbytes, std::uint64_t offset)
 Reads a given byte range from the file into the provided memory buffer.
 

Private Member Functions

RNTuple CreateAnchor (std::uint16_t versionEpoch, std::uint16_t versionMajor, std::uint16_t versionMinor, std::uint16_t versionPatch, std::uint64_t seekHeader, std::uint64_t nbytesHeader, std::uint64_t lenHeader, std::uint64_t seekFooter, std::uint64_t nbytesFooter, std::uint64_t lenFooter, std::uint64_t checksum)
 
RResult< RNTupleGetNTupleBare (std::string_view ntupleName)
 Used when the file container turns out to be a bare file.
 
RResult< RNTupleGetNTupleProper (std::string_view ntupleName)
 Used when the file turns out to be a TFile container.
 

Private Attributes

bool fIsBare = false
 Indicates whether the file is a TFile container or an RNTuple bare file.
 
ROOT::Internal::RRawFilefRawFile = nullptr
 The raw file used to read byte ranges.
 

#include <ROOT/RMiniFile.hxx>

Constructor & Destructor Documentation

◆ RMiniFileReader() [1/2]

ROOT::Experimental::Internal::RMiniFileReader::RMiniFileReader ( )
default

◆ RMiniFileReader() [2/2]

ROOT::Experimental::Internal::RMiniFileReader::RMiniFileReader ( ROOT::Internal::RRawFile rawFile)
explicit

Uses the given raw file to read byte ranges.

Definition at line 1017 of file RMiniFile.cxx.

Member Function Documentation

◆ CreateAnchor()

ROOT::Experimental::RNTuple ROOT::Experimental::Internal::RMiniFileReader::CreateAnchor ( std::uint16_t  versionEpoch,
std::uint16_t  versionMajor,
std::uint16_t  versionMinor,
std::uint16_t  versionPatch,
std::uint64_t  seekHeader,
std::uint64_t  nbytesHeader,
std::uint64_t  lenHeader,
std::uint64_t  seekFooter,
std::uint64_t  nbytesFooter,
std::uint64_t  lenFooter,
std::uint64_t  checksum 
)
private

Definition at line 1022 of file RMiniFile.cxx.

◆ GetNTuple()

ROOT::Experimental::RResult< ROOT::Experimental::RNTuple > ROOT::Experimental::Internal::RMiniFileReader::GetNTuple ( std::string_view  ntupleName)

Extracts header and footer location for the RNTuple identified by ntupleName.

Definition at line 1043 of file RMiniFile.cxx.

◆ GetNTupleBare()

ROOT::Experimental::RResult< ROOT::Experimental::RNTuple > ROOT::Experimental::Internal::RMiniFileReader::GetNTupleBare ( std::string_view  ntupleName)
private

Used when the file container turns out to be a bare file.

Definition at line 1140 of file RMiniFile.cxx.

◆ GetNTupleProper()

ROOT::Experimental::RResult< ROOT::Experimental::RNTuple > ROOT::Experimental::Internal::RMiniFileReader::GetNTupleProper ( std::string_view  ntupleName)
private

Used when the file turns out to be a TFile container.

Definition at line 1054 of file RMiniFile.cxx.

◆ ReadBuffer()

void ROOT::Experimental::Internal::RMiniFileReader::ReadBuffer ( void *  buffer,
size_t  nbytes,
std::uint64_t  offset 
)

Reads a given byte range from the file into the provided memory buffer.

Definition at line 1167 of file RMiniFile.cxx.

Member Data Documentation

◆ fIsBare

bool ROOT::Experimental::Internal::RMiniFileReader::fIsBare = false
private

Indicates whether the file is a TFile container or an RNTuple bare file.

Definition at line 59 of file RMiniFile.hxx.

◆ fRawFile

ROOT::Internal::RRawFile* ROOT::Experimental::Internal::RMiniFileReader::fRawFile = nullptr
private

The raw file used to read byte ranges.

Definition at line 57 of file RMiniFile.hxx.

Libraries for ROOT::Experimental::Internal::RMiniFileReader:

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