19 #include <parquet/types.h>
22 namespace foreign_storage {
27 std::shared_ptr<ParquetScalarEncoder> scalar_encoder,
33 const int16_t* rep_levels,
34 const int64_t values_read,
35 const int64_t levels_read,
36 const bool is_last_batch,
37 int8_t* values)
override {
38 CHECK(levels_read > 0);
41 def_levels, rep_levels, values_read, levels_read, is_last_batch, values);
64 std::vector<int8_t> zero_bytes(8, 0);
std::vector< int8_t > data_buffer_bytes_
Data_Namespace::AbstractBuffer * index_buffer_
virtual void appendArraysToBuffer()
bool isLastArrayNull() const
void appendArraysToBuffer() override
ParquetVariableLengthArrayEncoder(Data_Namespace::AbstractBuffer *data_buffer, Data_Namespace::AbstractBuffer *index_buffer, std::shared_ptr< ParquetScalarEncoder > scalar_encoder, const ColumnDescriptor *column_desciptor)
An AbstractBuffer is a unit of data management for a data manager.
specifies the content in-memory of a row in the column metadata table
void appendData(const int16_t *def_levels, const int16_t *rep_levels, const int64_t values_read, const int64_t levels_read, const bool is_last_batch, int8_t *values) override
void appendLastArrayOffset()
std::vector< ArrayOffsetT > offsets_
void processLastArray() override
virtual void append(int8_t *src, const size_t num_bytes, const MemoryLevel src_buffer_type=CPU_LEVEL, const int device_id=-1)=0
static const int16_t list_null_def_level
void setFirstOffsetForBuffer(const int16_t def_level)
Data_Namespace::AbstractBuffer * buffer_
void appendData(const int16_t *def_levels, const int16_t *rep_levels, const int64_t values_read, const int64_t levels_read, const bool is_last_batch, int8_t *values) override