Struct TypeSupportHandle

ClassList > TypeSupportHandle

More...

  • #include <type_support.hpp>

Public Attributes

Type Name
const MembersC * c
Valid when is_cpp == false .
const MembersCpp * cpp
Valid when is_cpp == true .
bool is_cpp = { false }
True selects members.cpp ; false selectsmembers.c .
union TypeSupportHandle members

Public Functions

Type Name
uint32_t member_count () const
const char * message_name () const
const char * message_namespace () const
bool valid () const

Detailed Description

Small tagged handle identifying which introspection backend describes a message's layout, plus a pointer to that backend's MessageMembers.

Only one arm of the union is valid; is_cpp is the discriminator. The accessors pick the right arm so callers avoid sprinkling if (is_cpp) throughout serialization logic.

Public Attributes Documentation

variable c

Valid when is_cpp == false .

const MembersC* TypeSupportHandle::c;


variable cpp

Valid when is_cpp == true .

const MembersCpp* TypeSupportHandle::cpp;


variable is_cpp

True selects members.cpp ; false selectsmembers.c .

bool TypeSupportHandle::is_cpp;


variable members

union TypeSupportHandle TypeSupportHandle::members;

Tagged pointer to the introspection description. The arm selected by is_cpp is the only one that may be dereferenced.


Public Functions Documentation

function member_count

inline uint32_t TypeSupportHandle::member_count () const

Returns:

Number of top-level fields on this message.


function message_name

inline const char * TypeSupportHandle::message_name () const

Returns:

The message's IDL type name (e.g. "String").


function message_namespace

inline const char * TypeSupportHandle::message_namespace () const

Returns:

The message's IDL namespace (e.g. "std_msgs__msg").


function valid

inline bool TypeSupportHandle::valid () const

Returns:

true iff a members pointer was resolved successfully.



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