sparrow-ipc 0.2.0
Loading...
Searching...
No Matches
deserialize_utils.hpp
Go to the documentation of this file.
1#pragma once
2
3#include <span>
4#include <utility>
5#include <vector>
6
7#include <sparrow/buffer/dynamic_bitset/dynamic_bitset_view.hpp>
8#include <sparrow/u8_buffer.hpp>
9
10#include "Message_generated.h"
11
13{
29 [[nodiscard]] std::pair<std::uint8_t*, int64_t> get_bitmap_pointer_and_null_count(
30 std::span<const uint8_t> validity_buffer_span,
31 const int64_t length
32 );
33
47 [[nodiscard]] std::span<const uint8_t> get_buffer(
48 const org::apache::arrow::flatbuf::RecordBatch& record_batch,
49 std::span<const uint8_t> body,
50 size_t& buffer_index
51 );
52
66 [[nodiscard]] std::variant<std::vector<std::uint8_t>, std::span<const std::uint8_t>> get_decompressed_buffer(
67 std::span<const uint8_t> buffer_span,
68 const org::apache::arrow::flatbuf::BodyCompression* compression
69 );
70}
std::span< const uint8_t > get_buffer(const org::apache::arrow::flatbuf::RecordBatch &record_batch, std::span< const uint8_t > body, size_t &buffer_index)
Extracts a buffer from a RecordBatch's body.
std::pair< std::uint8_t *, int64_t > get_bitmap_pointer_and_null_count(std::span< const uint8_t > validity_buffer_span, const int64_t length)
Extracts bitmap pointer and null count from a validity buffer span.
std::variant< std::vector< std::uint8_t >, std::span< const std::uint8_t > > get_decompressed_buffer(std::span< const uint8_t > buffer_span, const org::apache::arrow::flatbuf::BodyCompression *compression)
Retrieves a decompressed buffer or a view of the original buffer.