26 #ifndef APPLICATIONS_STORAGE_STORAGE_COMMON_IO_MESSAGE_HPP_
27 #define APPLICATIONS_STORAGE_STORAGE_COMMON_IO_MESSAGE_HPP_
233 struct alignas(storage::cache_line_size) layout {
235 uint32_t correlation_id;
240 uint32_t remote_offset;
244 "io_message_buffer size is supposed to be a single cache line");
static uint32_t get_correlation_id(char const *buf)
static uint32_t get_io_size(char const *buf)
static void set_user_data(doca_data user_data, char *buf)
static doca_data get_user_data(char const *buf)
static void set_correlation_id(uint32_t correlation_id, char *buf)
static void set_type(io_message_type type, char *buf)
static uint32_t get_remote_offset(char const *buf)
static void set_io_address(uint64_t io_address, char *buf)
static io_message_type get_type(char const *buf)
static uint64_t get_io_address(char const *buf)
static void set_io_size(uint32_t io_size, char *buf)
static void set_result(doca_error_t result, char *buf)
static doca_error_t get_result(char const *buf)
static void set_remote_offset(uint32_t remote_offset, char *buf)
enum doca_error doca_error_t
DOCA API return codes.
constexpr size_t size_of_io_message
char const * from_buffer(char const *buffer, T &value)
std::string io_message_to_string(char const *buf)
char * to_buffer(char *buffer, uint8_t value)
Convenience type for representing opaque data.