![]() |
nalchi
|
Shared payload flat API. More...
#include "nalchi/shared_payload.hpp"
#include "nalchi/export.hpp"
Go to the source code of this file.
Functions | |
nalchi::shared_payload | nalchi_shared_payload_allocate (nalchi::shared_payload::alloc_size_t size) |
Allocates a shared payload that can be used to send some data. | |
void | nalchi_shared_payload_force_deallocate (nalchi::shared_payload payload) |
Force deallocates the shared payload without sending it. | |
auto | nalchi_shared_payload_size (const nalchi::shared_payload payload) -> nalchi::shared_payload::alloc_size_t |
Gets the requested allocation size of the payload. | |
auto | nalchi_shared_payload_word_ceiled_size (const nalchi::shared_payload payload) -> nalchi::shared_payload::alloc_size_t |
Gets the payload size that's ceiled to bit_stream_writer::word_size , which is guaranteed to be safe to access. | |
auto | nalchi_shared_payload_internal_alloc_size (const nalchi::shared_payload payload) -> nalchi::shared_payload::alloc_size_t |
Gets the actual allocated size, which includes hidden ref count & size fields. | |
bool | nalchi_shared_payload_used_bit_stream (const nalchi::shared_payload payload) |
Check if this payload used bit_stream_writer to fill its content. | |
Shared payload flat API.
nalchi::shared_payload nalchi_shared_payload_allocate | ( | nalchi::shared_payload::alloc_size_t | size | ) |
Allocates a shared payload that can be used to send some data.
ptr
is nullptr
or not to see if the allocation has been successful. size | Space in bytes to allocate. |
void nalchi_shared_payload_force_deallocate | ( | nalchi::shared_payload | payload | ) |
Force deallocates the shared payload without sending it.
payload | Shared payload to force deallocate. |
auto nalchi_shared_payload_internal_alloc_size | ( | const nalchi::shared_payload | payload | ) | -> nalchi::shared_payload::alloc_size_t |
Gets the actual allocated size, which includes hidden ref count & size fields.
This is meant to be only used by the internal API.
auto nalchi_shared_payload_size | ( | const nalchi::shared_payload | payload | ) | -> nalchi::shared_payload::alloc_size_t |
Gets the requested allocation size of the payload.
bool nalchi_shared_payload_used_bit_stream | ( | const nalchi::shared_payload | payload | ) |
Check if this payload used bit_stream_writer
to fill its content.
If this is true
, the send size will be automatically ceiled to multiple of bit_stream_reader::word_size
when you send it.
This is to maintain compatibility with bit_stream_reader
on the receiving side.
bit_stream_writer
or not. auto nalchi_shared_payload_word_ceiled_size | ( | const nalchi::shared_payload | payload | ) | -> nalchi::shared_payload::alloc_size_t |
Gets the payload size that's ceiled to bit_stream_writer::word_size
, which is guaranteed to be safe to access.
As this size is ceiled to multiple of bit_stream_writer::word_size
, it can be bigger than the requested allocation size.
This is to maintain compatibility with bit_stream_writer
.