00001
00002 #ifndef ACTIONLIB_MSGS_MESSAGE_GOALID_H
00003 #define ACTIONLIB_MSGS_MESSAGE_GOALID_H
00004 #include <string>
00005 #include <vector>
00006 #include <map>
00007 #include <ostream>
00008 #include "ros/serialization.h"
00009 #include "ros/builtin_message_traits.h"
00010 #include "ros/message_operations.h"
00011 #include "ros/time.h"
00012
00013 #include "ros/macros.h"
00014
00015 #include "ros/assert.h"
00016
00017
00018 namespace actionlib_msgs
00019 {
00020 template <class ContainerAllocator>
00021 struct GoalID_ {
00022 typedef GoalID_<ContainerAllocator> Type;
00023
00024 GoalID_()
00025 : stamp()
00026 , id()
00027 {
00028 }
00029
00030 GoalID_(const ContainerAllocator& _alloc)
00031 : stamp()
00032 , id(_alloc)
00033 {
00034 }
00035
00036 typedef ros::Time _stamp_type;
00037 ros::Time stamp;
00038
00039 typedef std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > _id_type;
00040 std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > id;
00041
00042
00043 private:
00044 static const char* __s_getDataType_() { return "actionlib_msgs/GoalID"; }
00045 public:
00046 ROS_DEPRECATED static const std::string __s_getDataType() { return __s_getDataType_(); }
00047
00048 ROS_DEPRECATED const std::string __getDataType() const { return __s_getDataType_(); }
00049
00050 private:
00051 static const char* __s_getMD5Sum_() { return "302881f31927c1df708a2dbab0e80ee8"; }
00052 public:
00053 ROS_DEPRECATED static const std::string __s_getMD5Sum() { return __s_getMD5Sum_(); }
00054
00055 ROS_DEPRECATED const std::string __getMD5Sum() const { return __s_getMD5Sum_(); }
00056
00057 private:
00058 static const char* __s_getMessageDefinition_() { return "# The stamp should store the time at which this goal was requested.\n\
00059 # It is used by an action server when it tries to preempt all\n\
00060 # goals that were requested before a certain time\n\
00061 time stamp\n\
00062 \n\
00063 # The id provides a way to associate feedback and\n\
00064 # result message with specific goal requests. The id\n\
00065 # specified must be unique.\n\
00066 string id\n\
00067 \n\
00068 \n\
00069 "; }
00070 public:
00071 ROS_DEPRECATED static const std::string __s_getMessageDefinition() { return __s_getMessageDefinition_(); }
00072
00073 ROS_DEPRECATED const std::string __getMessageDefinition() const { return __s_getMessageDefinition_(); }
00074
00075 ROS_DEPRECATED virtual uint8_t *serialize(uint8_t *write_ptr, uint32_t seq) const
00076 {
00077 ros::serialization::OStream stream(write_ptr, 1000000000);
00078 ros::serialization::serialize(stream, stamp);
00079 ros::serialization::serialize(stream, id);
00080 return stream.getData();
00081 }
00082
00083 ROS_DEPRECATED virtual uint8_t *deserialize(uint8_t *read_ptr)
00084 {
00085 ros::serialization::IStream stream(read_ptr, 1000000000);
00086 ros::serialization::deserialize(stream, stamp);
00087 ros::serialization::deserialize(stream, id);
00088 return stream.getData();
00089 }
00090
00091 ROS_DEPRECATED virtual uint32_t serializationLength() const
00092 {
00093 uint32_t size = 0;
00094 size += ros::serialization::serializationLength(stamp);
00095 size += ros::serialization::serializationLength(id);
00096 return size;
00097 }
00098
00099 typedef boost::shared_ptr< ::actionlib_msgs::GoalID_<ContainerAllocator> > Ptr;
00100 typedef boost::shared_ptr< ::actionlib_msgs::GoalID_<ContainerAllocator> const> ConstPtr;
00101 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00102 };
00103 typedef ::actionlib_msgs::GoalID_<std::allocator<void> > GoalID;
00104
00105 typedef boost::shared_ptr< ::actionlib_msgs::GoalID> GoalIDPtr;
00106 typedef boost::shared_ptr< ::actionlib_msgs::GoalID const> GoalIDConstPtr;
00107
00108
00109 template<typename ContainerAllocator>
00110 std::ostream& operator<<(std::ostream& s, const ::actionlib_msgs::GoalID_<ContainerAllocator> & v)
00111 {
00112 ros::message_operations::Printer< ::actionlib_msgs::GoalID_<ContainerAllocator> >::stream(s, "", v);
00113 return s;}
00114
00115 }
00116
00117 namespace ros
00118 {
00119 namespace message_traits
00120 {
00121 template<class ContainerAllocator> struct IsMessage< ::actionlib_msgs::GoalID_<ContainerAllocator> > : public TrueType {};
00122 template<class ContainerAllocator> struct IsMessage< ::actionlib_msgs::GoalID_<ContainerAllocator> const> : public TrueType {};
00123 template<class ContainerAllocator>
00124 struct MD5Sum< ::actionlib_msgs::GoalID_<ContainerAllocator> > {
00125 static const char* value()
00126 {
00127 return "302881f31927c1df708a2dbab0e80ee8";
00128 }
00129
00130 static const char* value(const ::actionlib_msgs::GoalID_<ContainerAllocator> &) { return value(); }
00131 static const uint64_t static_value1 = 0x302881f31927c1dfULL;
00132 static const uint64_t static_value2 = 0x708a2dbab0e80ee8ULL;
00133 };
00134
00135 template<class ContainerAllocator>
00136 struct DataType< ::actionlib_msgs::GoalID_<ContainerAllocator> > {
00137 static const char* value()
00138 {
00139 return "actionlib_msgs/GoalID";
00140 }
00141
00142 static const char* value(const ::actionlib_msgs::GoalID_<ContainerAllocator> &) { return value(); }
00143 };
00144
00145 template<class ContainerAllocator>
00146 struct Definition< ::actionlib_msgs::GoalID_<ContainerAllocator> > {
00147 static const char* value()
00148 {
00149 return "# The stamp should store the time at which this goal was requested.\n\
00150 # It is used by an action server when it tries to preempt all\n\
00151 # goals that were requested before a certain time\n\
00152 time stamp\n\
00153 \n\
00154 # The id provides a way to associate feedback and\n\
00155 # result message with specific goal requests. The id\n\
00156 # specified must be unique.\n\
00157 string id\n\
00158 \n\
00159 \n\
00160 ";
00161 }
00162
00163 static const char* value(const ::actionlib_msgs::GoalID_<ContainerAllocator> &) { return value(); }
00164 };
00165
00166 }
00167 }
00168
00169 namespace ros
00170 {
00171 namespace serialization
00172 {
00173
00174 template<class ContainerAllocator> struct Serializer< ::actionlib_msgs::GoalID_<ContainerAllocator> >
00175 {
00176 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00177 {
00178 stream.next(m.stamp);
00179 stream.next(m.id);
00180 }
00181
00182 ROS_DECLARE_ALLINONE_SERIALIZER;
00183 };
00184 }
00185 }
00186
00187 namespace ros
00188 {
00189 namespace message_operations
00190 {
00191
00192 template<class ContainerAllocator>
00193 struct Printer< ::actionlib_msgs::GoalID_<ContainerAllocator> >
00194 {
00195 template<typename Stream> static void stream(Stream& s, const std::string& indent, const ::actionlib_msgs::GoalID_<ContainerAllocator> & v)
00196 {
00197 s << indent << "stamp: ";
00198 Printer<ros::Time>::stream(s, indent + " ", v.stamp);
00199 s << indent << "id: ";
00200 Printer<std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > >::stream(s, indent + " ", v.id);
00201 }
00202 };
00203
00204
00205 }
00206 }
00207
00208 #endif // ACTIONLIB_MSGS_MESSAGE_GOALID_H
00209