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
6#include <sparrow/buffer/buffer.hpp>
7#include <sparrow/buffer/dynamic_bitset/dynamic_bitset_view.hpp>
8
9#include "Message_generated.h"
10
12{
28 [[nodiscard]] std::pair<std::uint8_t*, int64_t>
29 get_bitmap_pointer_and_null_count(std::span<const uint8_t> validity_buffer_span, const int64_t length);
30
44 [[nodiscard]] std::span<const uint8_t> get_buffer(
45 const org::apache::arrow::flatbuf::RecordBatch& record_batch,
46 std::span<const uint8_t> body,
47 size_t& buffer_index
48 );
49
65 [[nodiscard]] std::variant<sparrow::buffer<std::uint8_t>, std::span<const std::uint8_t>>
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::variant< sparrow::buffer< 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.
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.