Go to the documentation of this file.
6 #ifndef SENSOR_MSGS_MESSAGE_MULTIDOFJOINTSTATE_H
7 #define SENSOR_MSGS_MESSAGE_MULTIDOFJOINTSTATE_H
14 #include <ros/types.h>
15 #include <ros/serialization.h>
16 #include <ros/builtin_message_traits.h>
17 #include <ros/message_operations.h>
26 template <
class ContainerAllocator>
52 typedef std::vector<std::basic_string<char, std::char_traits<char>,
typename ContainerAllocator::template rebind<char>::other > ,
typename ContainerAllocator::template rebind<std::basic_string<char, std::char_traits<char>,
typename ContainerAllocator::template rebind<char>::other > >::other >
_joint_names_type;
55 typedef std::vector< ::geometry_msgs::Transform_<ContainerAllocator> ,
typename ContainerAllocator::template rebind< ::geometry_msgs::Transform_<ContainerAllocator> >::other >
_transforms_type;
58 typedef std::vector< ::geometry_msgs::Twist_<ContainerAllocator> ,
typename ContainerAllocator::template rebind< ::geometry_msgs::Twist_<ContainerAllocator> >::other >
_twist_type;
61 typedef std::vector< ::geometry_msgs::Wrench_<ContainerAllocator> ,
typename ContainerAllocator::template rebind< ::geometry_msgs::Wrench_<ContainerAllocator> >::other >
_wrench_type;
67 typedef std::shared_ptr< ::sensor_msgs::MultiDOFJointState_<ContainerAllocator> >
Ptr;
68 typedef std::shared_ptr< ::sensor_msgs::MultiDOFJointState_<ContainerAllocator>
const>
ConstPtr;
81 template<
typename ContainerAllocator>
82 std::ostream&
operator<<(std::ostream& s, const ::sensor_msgs::MultiDOFJointState_<ContainerAllocator> & v)
92 namespace message_traits
105 template <
class ContainerAllocator>
110 template <
class ContainerAllocator>
115 template <
class ContainerAllocator>
120 template <
class ContainerAllocator>
125 template <
class ContainerAllocator>
130 template <
class ContainerAllocator>
136 template<
class ContainerAllocator>
141 return "690f272f0640d2631c305eeb8301e59d";
144 static const char*
value(const ::sensor_msgs::MultiDOFJointState_<ContainerAllocator>&) {
return value(); }
145 static const uint64_t static_value1 = 0x690f272f0640d263ULL;
146 static const uint64_t static_value2 = 0x1c305eeb8301e59dULL;
149 template<
class ContainerAllocator>
154 return "sensor_msgs/MultiDOFJointState";
157 static const char*
value(const ::sensor_msgs::MultiDOFJointState_<ContainerAllocator>&) {
return value(); }
160 template<
class ContainerAllocator>
165 return "# Representation of state for joints with multiple degrees of freedom, \n\
166 # following the structure of JointState.\n\
168 # It is assumed that a joint in a system corresponds to a transform that gets applied \n\
169 # along the kinematic chain. For example, a planar joint (as in URDF) is 3DOF (x, y, yaw)\n\
170 # and those 3DOF can be expressed as a transformation matrix, and that transformation\n\
171 # matrix can be converted back to (x, y, yaw)\n\
173 # Each joint is uniquely identified by its name\n\
174 # The header specifies the time at which the joint states were recorded. All the joint states\n\
175 # in one message have to be recorded at the same time.\n\
177 # This message consists of a multiple arrays, one for each part of the joint state. \n\
178 # The goal is to make each of the fields optional. When e.g. your joints have no\n\
179 # wrench associated with them, you can leave the wrench array empty. \n\
181 # All arrays in this message should have the same size, or be empty.\n\
182 # This is the only way to uniquely associate the joint name with the correct\n\
187 string[] joint_names\n\
188 geometry_msgs/Transform[] transforms\n\
189 geometry_msgs/Twist[] twist\n\
190 geometry_msgs/Wrench[] wrench\n\
192 ================================================================================\n\
193 MSG: std_msgs/Header\n\
194 # Standard metadata for higher-level stamped data types.\n\
195 # This is generally used to communicate timestamped data \n\
196 # in a particular coordinate frame.\n\
198 # sequence ID: consecutively increasing ID \n\
200 #Two-integer timestamp that is expressed as:\n\
201 # * stamp.sec: seconds (stamp_secs) since epoch (in Python the variable is called 'secs')\n\
202 # * stamp.nsec: nanoseconds since stamp_secs (in Python the variable is called 'nsecs')\n\
203 # time-handling sugar is provided by the client library\n\
205 #Frame this data is associated with\n\
210 ================================================================================\n\
211 MSG: geometry_msgs/Transform\n\
212 # This represents the transform between two coordinate frames in free space.\n\
214 Vector3 translation\n\
215 Quaternion rotation\n\
217 ================================================================================\n\
218 MSG: geometry_msgs/Vector3\n\
219 # This represents a vector in free space. \n\
220 # It is only meant to represent a direction. Therefore, it does not\n\
221 # make sense to apply a translation to it (e.g., when applying a \n\
222 # generic rigid transformation to a Vector3, tf2 will only apply the\n\
223 # rotation). If you want your data to be translatable too, use the\n\
224 # geometry_msgs/Point message instead.\n\
229 ================================================================================\n\
230 MSG: geometry_msgs/Quaternion\n\
231 # This represents an orientation in free space in quaternion form.\n\
238 ================================================================================\n\
239 MSG: geometry_msgs/Twist\n\
240 # This expresses velocity in free space broken into its linear and angular parts.\n\
244 ================================================================================\n\
245 MSG: geometry_msgs/Wrench\n\
246 # This represents force in free space, separated into\n\
247 # its linear and angular parts.\n\
253 static const char*
value(const ::sensor_msgs::MultiDOFJointState_<ContainerAllocator>&) {
return value(); }
261 namespace serialization
266 template<
typename Stream,
typename T>
inline static void allInOne(
Stream& stream, T m)
268 stream.next(m.header);
269 stream.next(m.joint_names);
270 stream.next(m.transforms);
271 stream.next(m.twist);
272 stream.next(m.wrench);
283 namespace message_operations
286 template<
class ContainerAllocator>
289 template<
typename Stream>
static void stream(Stream& s,
const std::string&
indent, const ::sensor_msgs::MultiDOFJointState_<ContainerAllocator>& v)
294 s <<
indent <<
"joint_names[]" << std::endl;
295 for (
size_t i = 0; i < v.joint_names.size(); ++i)
297 s <<
indent <<
" joint_names[" << i <<
"]: ";
300 s <<
indent <<
"transforms[]" << std::endl;
301 for (
size_t i = 0; i < v.transforms.size(); ++i)
303 s <<
indent <<
" transforms[" << i <<
"]: ";
308 s <<
indent <<
"twist[]" << std::endl;
309 for (
size_t i = 0; i < v.twist.size(); ++i)
311 s <<
indent <<
" twist[" << i <<
"]: ";
316 s <<
indent <<
"wrench[]" << std::endl;
317 for (
size_t i = 0; i < v.wrench.size(); ++i)
319 s <<
indent <<
" wrench[" << i <<
"]: ";
330 #endif // SENSOR_MSGS_MESSAGE_MULTIDOFJOINTSTATE_H
Base type for compile-type true/false tests. Compatible with Boost.MPL. classes inheriting from this ...
static void allInOne(Stream &stream, T m)
::std_msgs::Header_< ContainerAllocator > _header_type
static const char * value()
std::shared_ptr< ::sensor_msgs::MultiDOFJointState > MultiDOFJointStatePtr
Templated serialization class. Default implementation provides backwards compatibility with old messa...
std::shared_ptr< ::sensor_msgs::MultiDOFJointState const > MultiDOFJointStateConstPtr
std::shared_ptr< ::sensor_msgs::MultiDOFJointState_< ContainerAllocator > const > ConstPtr
std::vector< std::basic_string< char, std::char_traits< char >, typename ContainerAllocator::template rebind< char >::other >, typename ContainerAllocator::template rebind< std::basic_string< char, std::char_traits< char >, typename ContainerAllocator::template rebind< char >::other > >::other > _joint_names_type
static const char * value(const ::sensor_msgs::MultiDOFJointState_< ContainerAllocator > &)
static void stream(Stream &s, const std::string &indent, const M &value)
A fixed-size datatype is one whose size is constant, i.e. it has no variable-length arrays or strings...
#define ROS_DECLARE_ALLINONE_SERIALIZER
Declare your serializer to use an allInOne member instead of requiring 3 different serialization func...
std::vector< ::geometry_msgs::Transform_< ContainerAllocator >, typename ContainerAllocator::template rebind< ::geometry_msgs::Transform_< ContainerAllocator > >::other > _transforms_type
Specialize to provide the datatype for a message.
Specialize to provide the definition for a message.
std::vector< ::geometry_msgs::Wrench_< ContainerAllocator >, typename ContainerAllocator::template rebind< ::geometry_msgs::Wrench_< ContainerAllocator > >::other > _wrench_type
std::ostream & operator<<(std::ostream &s, const ::sensor_msgs::BatteryState_< ContainerAllocator > &v)
static void stream(Stream &s, const std::string &indent, const ::sensor_msgs::MultiDOFJointState_< ContainerAllocator > &v)
static const char * value(const ::sensor_msgs::MultiDOFJointState_< ContainerAllocator > &)
Base type for compile-type true/false tests. Compatible with Boost.MPL. classes inheriting from this ...
Specialize to provide the md5sum for a message.
std::shared_ptr< ::sensor_msgs::MultiDOFJointState_< ContainerAllocator > > Ptr
_joint_names_type joint_names
Stream base-class, provides common functionality for IStream and OStream.
std::vector< ::geometry_msgs::Twist_< ContainerAllocator >, typename ContainerAllocator::template rebind< ::geometry_msgs::Twist_< ContainerAllocator > >::other > _twist_type
MultiDOFJointState_(const ContainerAllocator &_alloc)
::sensor_msgs::MultiDOFJointState_< std::allocator< void > > MultiDOFJointState
static const char * value()
Tools for manipulating sensor_msgs.
static const char * value(const ::sensor_msgs::MultiDOFJointState_< ContainerAllocator > &)
_transforms_type transforms
static const char * value()
MultiDOFJointState_< ContainerAllocator > Type
sick_scan_xd
Author(s): Michael Lehning
, Jochen Sprickerhof , Martin Günther
autogenerated on Fri Oct 25 2024 02:47:09