#include "message_forward.h"#include <ros/time.h>#include <string>#include <boost/utility/enable_if.hpp>#include <boost/type_traits/remove_const.hpp>#include <boost/type_traits/remove_reference.hpp>
Go to the source code of this file.
Classes | |
| struct | ros::message_traits::DataType< M > |
| Specialize to provide the datatype for a message. More... | |
| struct | ros::message_traits::Definition< M > |
| Specialize to provide the definition for a message. More... | |
| struct | ros::message_traits::FalseType |
| Base type for compile-type true/false tests. Compatible with Boost.MPL. classes inheriting from this type are false values. More... | |
| struct | ros::message_traits::FrameId< M, Enable > |
| FrameId trait. In the default implementation pointer() returns &m.header.frame_id if HasHeader<M>::value is true, otherwise returns NULL. value() does not exist, and causes a compile error. More... | |
| struct | ros::message_traits::FrameId< M, typename boost::enable_if< HasHeader< M > >::type > |
| struct | ros::message_traits::HasHeader< M > |
| HasHeader informs whether or not there is a header that gets serialized as the first thing in the message. More... | |
| struct | ros::message_traits::Header< M, Enable > |
| Header trait. In the default implementation pointer() returns &m.header if HasHeader<M>::value is true, otherwise returns NULL. More... | |
| struct | ros::message_traits::Header< M, typename boost::enable_if< HasHeader< M > >::type > |
| struct | ros::message_traits::IsFixedSize< M > |
| A fixed-size datatype is one whose size is constant, i.e. it has no variable-length arrays or strings. More... | |
| struct | ros::message_traits::IsSimple< M > |
| A simple datatype is one that can be memcpy'd directly in array form, i.e. it's a POD, fixed-size type and sizeof(M) == sum(serializationLength(M:a...)). More... | |
| struct | ros::message_traits::MD5Sum< M > |
| Specialize to provide the md5sum for a message. More... | |
| struct | ros::message_traits::TimeStamp< M, Enable > |
| TimeStamp trait. In the default implementation pointer() returns &m.header.stamp if HasHeader<M>::value is true, otherwise returns NULL. value() does not exist, and causes a compile error. More... | |
| struct | ros::message_traits::TimeStamp< M, typename boost::enable_if< HasHeader< M > >::type > |
| struct | ros::message_traits::TrueType |
| Base type for compile-type true/false tests. Compatible with Boost.MPL. classes inheriting from this type are true values. More... | |
Namespaces | |
| namespace | ros |
| namespace | ros::message_traits |
| namespace | std_msgs |
Defines | |
| #define | ROS_IMPLEMENT_SIMPLE_TOPIC_TRAITS(msg, md5sum, datatype, definition) |
Functions | |
| template<typename M > | |
| const char * | ros::message_traits::datatype (const M &m) |
| returns DataType<M>::value(m); | |
| template<typename M > | |
| const char * | ros::message_traits::datatype () |
| returns DataType<M>::value(); | |
| template<typename M > | |
| const char * | ros::message_traits::definition (const M &m) |
| returns Definition<M>::value(m); | |
| template<typename M > | |
| const char * | ros::message_traits::definition () |
| returns Definition<M>::value(); | |
| template<typename M > | |
| std::string const * | ros::message_traits::frameId (const M &m) |
| returns FrameId<M>::pointer(m); | |
| template<typename M > | |
| std::string * | ros::message_traits::frameId (M &m) |
| returns FrameId<M>::pointer(m); | |
| template<typename M > | |
| bool | ros::message_traits::hasHeader () |
| returns HasHeader<M>::value; | |
| template<typename M > | |
| std_msgs::Header const * | ros::message_traits::header (const M &m) |
| returns Header<M>::pointer(m); | |
| template<typename M > | |
| std_msgs::Header * | ros::message_traits::header (M &m) |
| returns Header<M>::pointer(m); | |
| template<typename M > | |
| bool | ros::message_traits::isFixedSize () |
| returns IsFixedSize<M>::value; | |
| template<typename M > | |
| bool | ros::message_traits::isSimple () |
| returns IsSimple<M>::value; | |
| template<typename M > | |
| const char * | ros::message_traits::md5sum (const M &m) |
| returns MD5Sum<M>::value(m); | |
| template<typename M > | |
| const char * | ros::message_traits::md5sum () |
| returns MD5Sum<M>::value(); | |
| std_msgs::ROS_DECLARE_MESSAGE (Header) | |
| template<typename M > | |
| ros::Time const * | ros::message_traits::timeStamp (const M &m) |
| returns TimeStamp<M>::pointer(m); | |
| template<typename M > | |
| ros::Time * | ros::message_traits::timeStamp (M &m) |
| returns TimeStamp<M>::pointer(m); | |
| #define ROS_IMPLEMENT_SIMPLE_TOPIC_TRAITS | ( | msg, | |||
| md5sum, | |||||
| datatype, | |||||
| definition | ) |
namespace ros \ { \ namespace message_traits \ { \ template<> struct MD5Sum<msg> \ { \ static const char* value() { return md5sum; } \ static const char* value(const msg&) { return value(); } \ }; \ template<> struct DataType<msg> \ { \ static const char* value() { return datatype; } \ static const char* value(const msg&) { return value(); } \ }; \ template<> struct Definition<msg> \ { \ static const char* value() { return definition; } \ static const char* value(const msg&) { return value(); } \ }; \ } \ }
Definition at line 45 of file message_traits.h.