|
6 | 6 | #include <string_view> |
7 | 7 | #include <vector> |
8 | 8 |
|
| 9 | +#include "../include/config/config.hpp" |
| 10 | + |
9 | 11 | #include "Message_generated.h" |
10 | 12 | #include "Schema_generated.h" |
11 | 13 |
|
@@ -47,7 +49,7 @@ namespace |
47 | 49 | } |
48 | 50 |
|
49 | 51 | template <typename T> |
50 | | -std::vector<uint8_t> serialize_primitive_array(const sparrow::primitive_array<T>& arr) |
| 52 | +SPARROW_IPC_API std::vector<uint8_t> serialize_primitive_array(const sparrow::primitive_array<T>& arr) |
51 | 53 | { |
52 | 54 | // This function serializes a sparrow::primitive_array into a byte vector that is compliant |
53 | 55 | // with the Apache Arrow IPC Streaming Format. It constructs a stream containing two messages: |
@@ -224,7 +226,7 @@ std::vector<uint8_t> serialize_primitive_array(const sparrow::primitive_array<T> |
224 | 226 | } |
225 | 227 |
|
226 | 228 | template <typename T> |
227 | | -sparrow::primitive_array<T> deserialize_primitive_array(const std::vector<uint8_t>& buffer) { |
| 229 | +SPARROW_IPC_API sparrow::primitive_array<T> deserialize_primitive_array(const std::vector<uint8_t>& buffer) { |
228 | 230 | const uint8_t* buf_ptr = buffer.data(); |
229 | 231 | size_t current_offset = 0; |
230 | 232 |
|
@@ -301,9 +303,9 @@ sparrow::primitive_array<T> deserialize_primitive_array(const std::vector<uint8_ |
301 | 303 | } |
302 | 304 |
|
303 | 305 | // Explicit template instantiation |
304 | | -template std::vector<uint8_t> serialize_primitive_array<int>(const sparrow::primitive_array<int>& arr); |
305 | | -template sparrow::primitive_array<int> deserialize_primitive_array<int>(const std::vector<uint8_t>& buffer); |
306 | | -template std::vector<uint8_t> serialize_primitive_array<float>(const sparrow::primitive_array<float>& arr); |
307 | | -template sparrow::primitive_array<float> deserialize_primitive_array<float>(const std::vector<uint8_t>& buffer); |
308 | | -template std::vector<uint8_t> serialize_primitive_array<double>(const sparrow::primitive_array<double>& arr); |
309 | | -template sparrow::primitive_array<double> deserialize_primitive_array<double>(const std::vector<uint8_t>& buffer); |
| 306 | +template SPARROW_IPC_API std::vector<uint8_t> serialize_primitive_array<int>(const sparrow::primitive_array<int>& arr); |
| 307 | +template SPARROW_IPC_API sparrow::primitive_array<int> deserialize_primitive_array<int>(const std::vector<uint8_t>& buffer); |
| 308 | +template SPARROW_IPC_API std::vector<uint8_t> serialize_primitive_array<float>(const sparrow::primitive_array<float>& arr); |
| 309 | +template SPARROW_IPC_API sparrow::primitive_array<float> deserialize_primitive_array<float>(const std::vector<uint8_t>& buffer); |
| 310 | +template SPARROW_IPC_API std::vector<uint8_t> serialize_primitive_array<double>(const sparrow::primitive_array<double>& arr); |
| 311 | +template SPARROW_IPC_API sparrow::primitive_array<double> deserialize_primitive_array<double>(const std::vector<uint8_t>& buffer); |
0 commit comments