![]() |
Project
|
#include <ASoA.h>
Inherits o2::soa::Chunked.
Public Member Functions | |
ColumnIterator (arrow::ChunkedArray const *column) | |
ColumnIterator ()=default | |
ColumnIterator (ColumnIterator< T, ChunkingPolicy > const &)=default | |
ColumnIterator< T, ChunkingPolicy > & | operator= (ColumnIterator< T, ChunkingPolicy > const &)=default |
ColumnIterator (ColumnIterator< T, ChunkingPolicy > &&)=default | |
ColumnIterator< T, ChunkingPolicy > & | operator= (ColumnIterator< T, ChunkingPolicy > &&)=default |
void | nextChunk () const |
Move the iterator to the next chunk. | |
void | prevChunk () const |
void | moveToChunk (int chunk) |
void | moveToEnd () |
Move the iterator to the end of the column. | |
decltype(auto) | operator* () const |
decltype(auto) | operator* () const |
decltype(auto) | operator* () const |
ColumnIterator< T > & | moveToPos () |
Public Attributes | |
unwrap_t< T > const * | mCurrent |
int64_t const * | mCurrentPos |
unwrap_t< T > const * | mLast |
arrow::ChunkedArray const * | mColumn |
int | mFirstIndex |
int | mCurrentChunk |
int | mOffset |
Iterator on a single column. FIXME: the ChunkingPolicy for now is fixed to Flat and is a mere boolean which is used to switch off slow "chunking aware" parts. This is ok for now, but most likely we should move the whole chunk navigation logic there.
|
inline |
Constructor of the column iterator. Notice how it takes a pointer to the ChunkedArray (for the data store) and to the index inside it. This means that a ColumnIterator is actually only available as part of a RowView.
|
default |
|
default |
|
default |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
default |
|
default |
|
inline |
arrow::ChunkedArray const* o2::soa::ColumnIterator< T, ChunkingPolicy >::mColumn |
|
mutable |
|
mutable |
int64_t const* o2::soa::ColumnIterator< T, ChunkingPolicy >::mCurrentPos |
|
mutable |
|
mutable |
|
mutable |