20.2.3.20.2. SerializedPayload_t¶
-
struct SerializedPayload_t¶
Structure SerializedPayload_t.
Public Functions
-
inline SerializedPayload_t()¶
Default constructor.
-
inline explicit SerializedPayload_t(uint32_t len)¶
- Parameters:
len – Maximum size of the payload
-
SerializedPayload_t(const SerializedPayload_t &other) = delete¶
Copy constructor.
-
SerializedPayload_t &operator=(const SerializedPayload_t &other) = delete¶
Copy operator.
-
inline SerializedPayload_t(SerializedPayload_t &&other) noexcept¶
Move constructor Directly moves the fields from
otherinstead of calling the move assignment operator, since the latter assumes the destination is already constructed (it may release the currently owned payload). Using the move assignment operator here would read uninitialized members of the newly constructed object.
-
SerializedPayload_t &operator=(SerializedPayload_t &&other) noexcept¶
Move operator.
-
~SerializedPayload_t()¶
Destructor It is expected to release the payload if the payload owner is not nullptr before destruction.
-
bool copy(const SerializedPayload_t *serData, bool with_limit = true)¶
Copy another structure (including allocating new space for the data).
- Parameters:
serData – [in] Pointer to the structure to copy
with_limit – if true, the function will fail when providing a payload too big
- Returns:
True if correct
-
bool reserve_fragmented(SerializedPayload_t *serData)¶
Allocate new space for fragmented data.
- Parameters:
serData – [in] Pointer to the structure to copy
- Returns:
True if correct
-
void empty()¶
Empty the payload.
- Pre:
payload_owner must be nullptr
Public Members
-
uint16_t encapsulation¶
Encapsulation of the data as suggested in the RTPS 2.1 specification chapter 10.
-
uint32_t length¶
Actual length of the data.
-
uint32_t max_size¶
Maximum size of the payload.
-
uint32_t pos¶
Position when reading.
-
IPayloadPool *payload_owner = nullptr¶
Pool that created the payload.
-
bool is_serialized_key = false¶
Whether the payload contains a serialized key, or the whole data.
Public Static Attributes
-
static constexpr size_t representation_header_size = 4u¶
Size in bytes of the representation header as specified in the RTPS 2.3 specification chapter 10.
-
inline SerializedPayload_t()¶