A sealed page contains the bytes of a page as written to storage (packed & compressed).
It is used as an input to UnsealPages() as well as to transfer pages between different storage media. RSealedPage does not own the buffer it is pointing to in order to not interfere with the memory management of concrete page sink and page source implementations.
Definition at line 92 of file RPageStorage.hxx.
Public Member Functions | |
RSealedPage ()=default | |
RSealedPage (const RSealedPage &other)=default | |
RSealedPage (const void *buffer, std::size_t bufferSize, std::uint32_t nElements, bool hasChecksum=false) | |
RSealedPage (RSealedPage &&other)=default | |
void | ChecksumIfEnabled () |
const void * | GetBuffer () const |
std::size_t | GetBufferSize () const |
RResult< std::uint64_t > | GetChecksum () const |
Returns a failure if the sealed page has no checksum. | |
std::size_t | GetDataSize () const |
bool | GetHasChecksum () const |
std::uint32_t | GetNElements () const |
RSealedPage & | operator= (const RSealedPage &other)=default |
RSealedPage & | operator= (RSealedPage &&other)=default |
void | SetBuffer (const void *buffer) |
void | SetBufferSize (std::size_t bufferSize) |
void | SetHasChecksum (bool hasChecksum) |
void | SetNElements (std::uint32_t nElements) |
RResult< void > | VerifyChecksumIfEnabled () const |
Private Attributes | |
const void * | fBuffer = nullptr |
std::size_t | fBufferSize = 0 |
Size of the page payload and the trailing checksum (if available) | |
bool | fHasChecksum = false |
If set, the last 8 bytes of the buffer are the xxhash of the rest of the buffer. | |
std::uint32_t | fNElements = 0 |
#include <ROOT/RPageStorage.hxx>
|
default |
|
inline |
Definition at line 101 of file RPageStorage.hxx.
|
default |
|
default |
void ROOT::Experimental::Internal::RPageStorage::RSealedPage::ChecksumIfEnabled | ( | ) |
Definition at line 51 of file RPageStorage.cxx.
|
inline |
Definition at line 110 of file RPageStorage.hxx.
|
inline |
Definition at line 118 of file RPageStorage.hxx.
ROOT::Experimental::RResult< std::uint64_t > ROOT::Experimental::Internal::RPageStorage::RSealedPage::GetChecksum | ( | ) | const |
Returns a failure if the sealed page has no checksum.
Definition at line 74 of file RPageStorage.cxx.
|
inline |
Definition at line 113 of file RPageStorage.hxx.
|
inline |
Definition at line 124 of file RPageStorage.hxx.
|
inline |
Definition at line 121 of file RPageStorage.hxx.
|
default |
|
default |
|
inline |
Definition at line 111 of file RPageStorage.hxx.
|
inline |
Definition at line 119 of file RPageStorage.hxx.
|
inline |
Definition at line 125 of file RPageStorage.hxx.
|
inline |
Definition at line 122 of file RPageStorage.hxx.
ROOT::Experimental::RResult< void > ROOT::Experimental::Internal::RPageStorage::RSealedPage::VerifyChecksumIfEnabled | ( | ) | const |
Definition at line 63 of file RPageStorage.cxx.
|
private |
Definition at line 94 of file RPageStorage.hxx.
|
private |
Size of the page payload and the trailing checksum (if available)
Definition at line 95 of file RPageStorage.hxx.
|
private |
If set, the last 8 bytes of the buffer are the xxhash of the rest of the buffer.
Definition at line 97 of file RPageStorage.hxx.
|
private |
Definition at line 96 of file RPageStorage.hxx.