Project

General

Profile

// generated from rosidl_typesupport_introspection_cpp/resource/idl__type_support.cpp.em
// with input from turtle_interfaces:msg/TurtleMsg.idl
// generated code does not contain a copyright notice

#include "array"
#include "cstddef"
#include "string"
#include "vector"
#include "rosidl_runtime_c/message_type_support_struct.h"
#include "rosidl_typesupport_cpp/message_type_support.hpp"
#include "rosidl_typesupport_interface/macros.h"
#include "turtle_interfaces/msg/detail/turtle_msg__struct.hpp"
#include "rosidl_typesupport_introspection_cpp/field_types.hpp"
#include "rosidl_typesupport_introspection_cpp/identifier.hpp"
#include "rosidl_typesupport_introspection_cpp/message_introspection.hpp"
#include "rosidl_typesupport_introspection_cpp/message_type_support_decl.hpp"
#include "rosidl_typesupport_introspection_cpp/visibility_control.h"

namespace turtle_interfaces
{

namespace msg
{

namespace rosidl_typesupport_introspection_cpp
{

void TurtleMsg_init_function(
void * message_memory, rosidl_runtime_cpp::MessageInitialization _init)
{
new (message_memory) turtle_interfaces::msg::TurtleMsg(_init);
}

void TurtleMsg_fini_function(void * message_memory)
{
auto typed_message = static_cast<turtle_interfaces::msg::TurtleMsg *>(message_memory);
typed_message->~TurtleMsg();
}

static const ::rosidl_typesupport_introspection_cpp::MessageMember TurtleMsg_message_member_array[3] = {
{
"name", // name
::rosidl_typesupport_introspection_cpp::ROS_TYPE_STRING, // type
0, // upper bound of string
nullptr, // members of sub message
false, // is array
0, // array size
false, // is upper bound
offsetof(turtle_interfaces::msg::TurtleMsg, name), // bytes offset in struct
nullptr, // default value
nullptr, // size() function pointer
nullptr, // get_const(index) function pointer
nullptr, // get(index) function pointer
nullptr // resize(index) function pointer
},
{
"turtle_pose", // name
::rosidl_typesupport_introspection_cpp::ROS_TYPE_MESSAGE, // type
0, // upper bound of string
::rosidl_typesupport_introspection_cpp::get_message_type_support_handle<geometry_msgs::msg::Pose>(), // members of sub message
false, // is array
0, // array size
false, // is upper bound
offsetof(turtle_interfaces::msg::TurtleMsg, turtle_pose), // bytes offset in struct
nullptr, // default value
nullptr, // size() function pointer
nullptr, // get_const(index) function pointer
nullptr, // get(index) function pointer
nullptr // resize(index) function pointer
},
{
"color", // name
::rosidl_typesupport_introspection_cpp::ROS_TYPE_STRING, // type
0, // upper bound of string
nullptr, // members of sub message
false, // is array
0, // array size
false, // is upper bound
offsetof(turtle_interfaces::msg::TurtleMsg, color), // bytes offset in struct
nullptr, // default value
nullptr, // size() function pointer
nullptr, // get_const(index) function pointer
nullptr, // get(index) function pointer
nullptr // resize(index) function pointer
}
};

static const ::rosidl_typesupport_introspection_cpp::MessageMembers TurtleMsg_message_members = {
"turtle_interfaces::msg", // message namespace
"TurtleMsg", // message name
3, // number of fields
sizeof(turtle_interfaces::msg::TurtleMsg),
TurtleMsg_message_member_array, // message members
TurtleMsg_init_function, // function to initialize message memory (memory has to be allocated)
TurtleMsg_fini_function // function to terminate message instance (will not free memory)
};

static const rosidl_message_type_support_t TurtleMsg_message_type_support_handle = {
::rosidl_typesupport_introspection_cpp::typesupport_identifier,
&TurtleMsg_message_members,
get_message_typesupport_handle_function,
};

} // namespace rosidl_typesupport_introspection_cpp

} // namespace msg

} // namespace turtle_interfaces


namespace rosidl_typesupport_introspection_cpp
{

template<>
ROSIDL_TYPESUPPORT_INTROSPECTION_CPP_PUBLIC
const rosidl_message_type_support_t *
get_message_type_support_handle<turtle_interfaces::msg::TurtleMsg>()
{
return &::turtle_interfaces::msg::rosidl_typesupport_introspection_cpp::TurtleMsg_message_type_support_handle;
}

} // namespace rosidl_typesupport_introspection_cpp

#ifdef __cplusplus
extern "C"
{
#endif

ROSIDL_TYPESUPPORT_INTROSPECTION_CPP_PUBLIC
const rosidl_message_type_support_t *
ROSIDL_TYPESUPPORT_INTERFACE__MESSAGE_SYMBOL_NAME(rosidl_typesupport_introspection_cpp, turtle_interfaces, msg, TurtleMsg)() {
return &::turtle_interfaces::msg::rosidl_typesupport_introspection_cpp::TurtleMsg_message_type_support_handle;
}

#ifdef __cplusplus
}
#endif
(2-2/4)