data_descriptor.h
Go to the documentation of this file.
36 uint64_t (*pack_payload)(const void *object, uint64_t max_nbytes_to_write, uint64_t offset, void *buf);
44 uint64_t (*unpack_payload)(void *object, uint64_t max_nbytes_to_read, uint64_t offset, const void *buf);
81 static uint64_t pack_payload(const void *object, uint64_t max_nbytes_to_write, uint64_t begin, void *buf) {
94 static uint64_t unpack_payload(void *object, uint64_t max_nbytes_to_read, uint64_t begin, const void *buf) {
129 static uint64_t pack_payload(const void *object, uint64_t max_nbytes_to_write, uint64_t begin, void *buf) {
152 static uint64_t unpack_payload(void *object, uint64_t max_nbytes_to_read, uint64_t begin, const void *buf) {
181 T, std::enable_if_t<((!detail::is_memcpyable_v<T> && detail::is_madness_buffer_serializable_v<T>) ||
200 static uint64_t pack_payload(const void *object, uint64_t max_nbytes_to_write, uint64_t pos, void *_buf) {
213 static uint64_t unpack_payload(void *object, uint64_t max_nbytes_to_read, uint64_t pos, const void *_buf) {
234 T, std::enable_if_t<(!detail::is_memcpyable_v<T> && !detail::is_madness_buffer_serializable_v<T> &&
255 static uint64_t pack_payload(const void *object, uint64_t max_nbytes_to_write, uint64_t pos, void *buf) {
268 static uint64_t unpack_payload(void *object, uint64_t max_nbytes_to_read, uint64_t pos, const void *buf) {
287 typeid(T).name(), &default_data_descriptor<T>::payload_size, &default_data_descriptor<T>::pack_payload,
auto make_boost_buffer_iarchive(const void *const buf, std::size_t size, std::size_t buf_offset=0)
constructs a boost_buffer_iarchive object
Definition: archive.h:390
auto make_boost_buffer_oarchive(void *const buf, std::size_t size, std::size_t buf_offset=0)
constructs a boost_buffer_oarchive object
Definition: archive.h:230
const ttg_data_descriptor * get_data_descriptor()
Definition: data_descriptor.h:285
static uint64_t unpack_payload(void *object, uint64_t max_nbytes_to_read, uint64_t begin, const void *buf)
deserializes object from a buffer
Definition: data_descriptor.h:94
static uint64_t payload_size(const void *object)
measures the size of the binary representation of object
Definition: data_descriptor.h:73
static uint64_t pack_payload(const void *object, uint64_t max_nbytes_to_write, uint64_t begin, void *buf)
serializes object to a buffer
Definition: data_descriptor.h:81
static uint64_t unpack_payload(void *object, uint64_t max_nbytes_to_read, uint64_t begin, const void *buf)
deserializes object from a buffer
Definition: data_descriptor.h:152
static uint64_t pack_payload(const void *object, uint64_t max_nbytes_to_write, uint64_t begin, void *buf)
serializes object to a buffer
Definition: data_descriptor.h:129
static uint64_t payload_size(const void *object)
measures the size of the binary representation of object
Definition: data_descriptor.h:111
Provides (de)serialization of C++ data that can be invoked from C via ttg_data_descriptor.
Definition: data_descriptor.h:60
Definition: traits.h:159
Definition: iovec.h:11
std::size_t num_bytes
The number of bytes to read from / write to the memory location given by data.
Definition: iovec.h:13
Definition: data_descriptor.h:22
uint64_t(* pack_payload)(const void *object, uint64_t max_nbytes_to_write, uint64_t offset, void *buf)
serializes object to a buffer
Definition: data_descriptor.h:36
uint64_t(* payload_size)(const void *object)
measures the size of the binary representation of object
Definition: data_descriptor.h:28
uint64_t(* unpack_payload)(void *object, uint64_t max_nbytes_to_read, uint64_t offset, const void *buf)
deserializes object from a buffer
Definition: data_descriptor.h:44