A buffered column.
The column is not responsible for RPage memory management (i.e. ReservePage), which is handled by the enclosing RPageSinkBuf.
Definition at line 45 of file RPageSinkBuf.hxx.
Classes | |
struct | RPageZipItem |
Public Member Functions | |
RColumnBuf ()=default | |
RColumnBuf (const RColumnBuf &)=delete | |
RColumnBuf (RColumnBuf &&)=default | |
~RColumnBuf () | |
RPageZipItem & | BufferPage (RPageStorage::ColumnHandle_t columnHandle) |
Returns a reference to the newly buffered page. | |
void | DropBufferedPages () |
const RPageStorage::ColumnHandle_t & | GetHandle () const |
const RPageStorage::SealedPageSequence_t & | GetSealedPages () const |
bool | HasSealedPagesOnly () const |
bool | IsEmpty () const |
RColumnBuf & | operator= (const RColumnBuf &)=delete |
RColumnBuf & | operator= (RColumnBuf &&)=default |
RSealedPage & | RegisterSealedPage () |
Private Attributes | |
std::deque< RPageZipItem > | fBufferedPages |
Using a deque guarantees that element iterators are never invalidated by appends to the end of the iterator by BufferPage. | |
RPageStorage::ColumnHandle_t | fCol |
RPageStorage::SealedPageSequence_t | fSealedPages |
Pages that have been already sealed by a concurrent task. | |
|
default |
|
delete |
|
default |
|
inline |
Definition at line 60 of file RPageSinkBuf.hxx.
|
inline |
Returns a reference to the newly buffered page.
The reference remains valid until DropBufferedPages().
Definition at line 64 of file RPageSinkBuf.hxx.
void ROOT::Experimental::Internal::RPageSinkBuf::RColumnBuf::DropBufferedPages | ( | ) |
Definition at line 26 of file RPageSinkBuf.cxx.
|
inline |
Definition at line 73 of file RPageSinkBuf.hxx.
|
inline |
Definition at line 76 of file RPageSinkBuf.hxx.
|
inline |
Definition at line 75 of file RPageSinkBuf.hxx.
|
inline |
Definition at line 74 of file RPageSinkBuf.hxx.
|
delete |
|
default |
|
inline |
Definition at line 82 of file RPageSinkBuf.hxx.
|
private |
Using a deque guarantees that element iterators are never invalidated by appends to the end of the iterator by BufferPage.
Definition at line 91 of file RPageSinkBuf.hxx.
|
private |
Definition at line 88 of file RPageSinkBuf.hxx.
|
private |
Pages that have been already sealed by a concurrent task.
A vector commit can be issued if all buffered pages have been sealed. Note that each RSealedPage refers to the same buffer as fBufferedPages[i].fBuf
for some value of i
, and thus owned by RPageZipItem
Definition at line 96 of file RPageSinkBuf.hxx.