Class astutedds::cdr::XCDR2Decoder

ClassList > astutedds > cdr > XCDR2Decoder

XCDR2 decoding with DHEADER support.

  • #include <xcdr2_codec.hpp>

Public Functions

Type Name
XCDR2Decoder (const std::vector< uint8_t > & buffer)
bool at_delimited_end () const
bool at_end () const
uint32_t begin_delimited ()
Begin decoding a delimited type.
bool decode_bool ()
double decode_double ()
float decode_float ()
int16_t decode_int16 ()
int32_t decode_int32 ()
int64_t decode_int64 ()
int8_t decode_int8 ()
bool decode_member_header (uint32_t & member_id, bool & must_understand)
Decode member header for mutable types ( EMHEADER )
uint32_t decode_sequence_length ()
std::string decode_string ()
uint16_t decode_uint16 ()
uint32_t decode_uint32 ()
uint64_t decode_uint64 ()
uint8_t decode_uint8 ()
void end_delimited ()
End decoding a delimited type.
size_t position () const

Public Functions Documentation

function XCDR2Decoder

inline astutedds::cdr::XCDR2Decoder::XCDR2Decoder (
    const std::vector< uint8_t > & buffer
) 

function at_delimited_end

inline bool astutedds::cdr::XCDR2Decoder::at_delimited_end () const

Check if we've reached the end of the current delimited block. For APPENDABLE types, trailing members beyond the DHEADER boundary are absent.


function at_end

inline bool astutedds::cdr::XCDR2Decoder::at_end () const

function begin_delimited

Begin decoding a delimited type.

inline uint32_t astutedds::cdr::XCDR2Decoder::begin_delimited () 

Reads DHEADER and returns the size of delimited data. Must be paired with end_delimited().

Returns:

Size of delimited data in bytes


function decode_bool

inline bool astutedds::cdr::XCDR2Decoder::decode_bool () 

function decode_double

inline double astutedds::cdr::XCDR2Decoder::decode_double () 

function decode_float

inline float astutedds::cdr::XCDR2Decoder::decode_float () 

function decode_int16

inline int16_t astutedds::cdr::XCDR2Decoder::decode_int16 () 

function decode_int32

inline int32_t astutedds::cdr::XCDR2Decoder::decode_int32 () 

function decode_int64

inline int64_t astutedds::cdr::XCDR2Decoder::decode_int64 () 

function decode_int8

inline int8_t astutedds::cdr::XCDR2Decoder::decode_int8 () 

function decode_member_header

Decode member header for mutable types ( EMHEADER )

inline bool astutedds::cdr::XCDR2Decoder::decode_member_header (
    uint32_t & member_id,
    bool & must_understand
) 

Parameters:

  • member_id Output: member ID
  • must_understand Output: must-understand flag

Returns:

True if member header was read, false if at end of delimited block


function decode_sequence_length

inline uint32_t astutedds::cdr::XCDR2Decoder::decode_sequence_length () 

function decode_string

inline std::string astutedds::cdr::XCDR2Decoder::decode_string () 

function decode_uint16

inline uint16_t astutedds::cdr::XCDR2Decoder::decode_uint16 () 

function decode_uint32

inline uint32_t astutedds::cdr::XCDR2Decoder::decode_uint32 () 

function decode_uint64

inline uint64_t astutedds::cdr::XCDR2Decoder::decode_uint64 () 

function decode_uint8

inline uint8_t astutedds::cdr::XCDR2Decoder::decode_uint8 () 

function end_delimited

End decoding a delimited type.

inline void astutedds::cdr::XCDR2Decoder::end_delimited () 

Skips to the end of the delimited block if not all data was read.


function position

inline size_t astutedds::cdr::XCDR2Decoder::position () const


The documentation for this class was generated from the following file include/astutedds/cdr/xcdr2_codec.hpp