-
Notifications
You must be signed in to change notification settings - Fork 26
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Adding interfaces to support @key
annotation
#116
Conversation
Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>
Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>
Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com>
7dffcb9
to
61072ed
Compare
@[ if key[0] != package_name]@ | ||
ROSIDL_TYPESUPPORT_FASTRTPS_C_IMPORT_@(package_name) | ||
@[ end if]@ | ||
size_t get_serialized_size_key_@('__'.join(key))( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
add include cstddef
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
* \param [in,out] is_unbounded Whether the key has any unbounded member. | ||
* \return The maximum key serialized size, in bytes. | ||
*/ | ||
size_t (* max_serialized_size_key)( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
include cstddef
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
/// Callback function for key serialization | ||
/** | ||
* \param[in] untyped_ros_message Type erased pointer to message instance. | ||
* \param [in,out] Fast CDR serializer. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
* \param [in,out] Fast CDR serializer. | |
* \param [in,out] cdr Fast CDR serializer. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ROSIDL_TYPESUPPORT_FASTRTPS_CPP_PUBLIC_@(package_name) | ||
get_serialized_size_key( | ||
const @('::'.join([package_name] + list(interface_path.parents[0].parts) + [message.structure.namespaced_type.name])) & ros_message, | ||
size_t current_alignment); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
include <cstddef>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
bool cdr_serialize_key( | ||
const @('::'.join(type_.namespaced_name())) &, | ||
eprosima::fastcdr::Cdr &); | ||
size_t get_serialized_size_key( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
include <cstddef>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
Bug introduced in #116 Signed-off-by: Michael Carroll <mjcarroll@intrinsic.ai>
This PR adds the necessary interfaces to support
@key
annotation in RMW implementations using Fast CDRPart of ros2/ros2#1538
Depends on ros2/rosidl#796