00001
00002 #ifndef PR2_MSGS_SERVICE_SETLASERTRAJCMD_H
00003 #define PR2_MSGS_SERVICE_SETLASERTRAJCMD_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 #include "ros/service_traits.h"
00018
00019 #include "pr2_msgs/LaserTrajCmd.h"
00020
00021
00022
00023 namespace pr2_msgs
00024 {
00025 template <class ContainerAllocator>
00026 struct SetLaserTrajCmdRequest_ {
00027 typedef SetLaserTrajCmdRequest_<ContainerAllocator> Type;
00028
00029 SetLaserTrajCmdRequest_()
00030 : command()
00031 {
00032 }
00033
00034 SetLaserTrajCmdRequest_(const ContainerAllocator& _alloc)
00035 : command(_alloc)
00036 {
00037 }
00038
00039 typedef ::pr2_msgs::LaserTrajCmd_<ContainerAllocator> _command_type;
00040 ::pr2_msgs::LaserTrajCmd_<ContainerAllocator> command;
00041
00042
00043 private:
00044 static const char* __s_getDataType_() { return "pr2_msgs/SetLaserTrajCmdRequest"; }
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 "83f915c37d36f61442c752779261e7d4"; }
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_getServerMD5Sum_() { return "28fe2ce397611c999952c74a1ea882aa"; }
00059 public:
00060 ROS_DEPRECATED static const std::string __s_getServerMD5Sum() { return __s_getServerMD5Sum_(); }
00061
00062 ROS_DEPRECATED const std::string __getServerMD5Sum() const { return __s_getServerMD5Sum_(); }
00063
00064 private:
00065 static const char* __s_getMessageDefinition_() { return "pr2_msgs/LaserTrajCmd command\n\
00066 \n\
00067 ================================================================================\n\
00068 MSG: pr2_msgs/LaserTrajCmd\n\
00069 # This message is used to set the profile that the tilt laser controller\n\
00070 # executes.\n\
00071 Header header\n\
00072 string profile # options are currently \"linear\" or \"linear_blended\"\n\
00073 float64[] position # Laser positions\n\
00074 duration[] time_from_start # Times to reach laser positions in seconds\n\
00075 float64 max_velocity # Set <= 0 to use default\n\
00076 float64 max_acceleration # Set <= 0 to use default\n\
00077 \n\
00078 ================================================================================\n\
00079 MSG: std_msgs/Header\n\
00080 # Standard metadata for higher-level stamped data types.\n\
00081 # This is generally used to communicate timestamped data \n\
00082 # in a particular coordinate frame.\n\
00083 # \n\
00084 # sequence ID: consecutively increasing ID \n\
00085 uint32 seq\n\
00086 #Two-integer timestamp that is expressed as:\n\
00087 # * stamp.secs: seconds (stamp_secs) since epoch\n\
00088 # * stamp.nsecs: nanoseconds since stamp_secs\n\
00089 # time-handling sugar is provided by the client library\n\
00090 time stamp\n\
00091 #Frame this data is associated with\n\
00092 # 0: no frame\n\
00093 # 1: global frame\n\
00094 string frame_id\n\
00095 \n\
00096 "; }
00097 public:
00098 ROS_DEPRECATED static const std::string __s_getMessageDefinition() { return __s_getMessageDefinition_(); }
00099
00100 ROS_DEPRECATED const std::string __getMessageDefinition() const { return __s_getMessageDefinition_(); }
00101
00102 ROS_DEPRECATED virtual uint8_t *serialize(uint8_t *write_ptr, uint32_t seq) const
00103 {
00104 ros::serialization::OStream stream(write_ptr, 1000000000);
00105 ros::serialization::serialize(stream, command);
00106 return stream.getData();
00107 }
00108
00109 ROS_DEPRECATED virtual uint8_t *deserialize(uint8_t *read_ptr)
00110 {
00111 ros::serialization::IStream stream(read_ptr, 1000000000);
00112 ros::serialization::deserialize(stream, command);
00113 return stream.getData();
00114 }
00115
00116 ROS_DEPRECATED virtual uint32_t serializationLength() const
00117 {
00118 uint32_t size = 0;
00119 size += ros::serialization::serializationLength(command);
00120 return size;
00121 }
00122
00123 typedef boost::shared_ptr< ::pr2_msgs::SetLaserTrajCmdRequest_<ContainerAllocator> > Ptr;
00124 typedef boost::shared_ptr< ::pr2_msgs::SetLaserTrajCmdRequest_<ContainerAllocator> const> ConstPtr;
00125 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00126 };
00127 typedef ::pr2_msgs::SetLaserTrajCmdRequest_<std::allocator<void> > SetLaserTrajCmdRequest;
00128
00129 typedef boost::shared_ptr< ::pr2_msgs::SetLaserTrajCmdRequest> SetLaserTrajCmdRequestPtr;
00130 typedef boost::shared_ptr< ::pr2_msgs::SetLaserTrajCmdRequest const> SetLaserTrajCmdRequestConstPtr;
00131
00132
00133 template <class ContainerAllocator>
00134 struct SetLaserTrajCmdResponse_ {
00135 typedef SetLaserTrajCmdResponse_<ContainerAllocator> Type;
00136
00137 SetLaserTrajCmdResponse_()
00138 : start_time()
00139 {
00140 }
00141
00142 SetLaserTrajCmdResponse_(const ContainerAllocator& _alloc)
00143 : start_time()
00144 {
00145 }
00146
00147 typedef ros::Time _start_time_type;
00148 ros::Time start_time;
00149
00150
00151 private:
00152 static const char* __s_getDataType_() { return "pr2_msgs/SetLaserTrajCmdResponse"; }
00153 public:
00154 ROS_DEPRECATED static const std::string __s_getDataType() { return __s_getDataType_(); }
00155
00156 ROS_DEPRECATED const std::string __getDataType() const { return __s_getDataType_(); }
00157
00158 private:
00159 static const char* __s_getMD5Sum_() { return "3888666920054f1ef39d2df7a5d94b02"; }
00160 public:
00161 ROS_DEPRECATED static const std::string __s_getMD5Sum() { return __s_getMD5Sum_(); }
00162
00163 ROS_DEPRECATED const std::string __getMD5Sum() const { return __s_getMD5Sum_(); }
00164
00165 private:
00166 static const char* __s_getServerMD5Sum_() { return "28fe2ce397611c999952c74a1ea882aa"; }
00167 public:
00168 ROS_DEPRECATED static const std::string __s_getServerMD5Sum() { return __s_getServerMD5Sum_(); }
00169
00170 ROS_DEPRECATED const std::string __getServerMD5Sum() const { return __s_getServerMD5Sum_(); }
00171
00172 private:
00173 static const char* __s_getMessageDefinition_() { return "time start_time\n\
00174 \n\
00175 "; }
00176 public:
00177 ROS_DEPRECATED static const std::string __s_getMessageDefinition() { return __s_getMessageDefinition_(); }
00178
00179 ROS_DEPRECATED const std::string __getMessageDefinition() const { return __s_getMessageDefinition_(); }
00180
00181 ROS_DEPRECATED virtual uint8_t *serialize(uint8_t *write_ptr, uint32_t seq) const
00182 {
00183 ros::serialization::OStream stream(write_ptr, 1000000000);
00184 ros::serialization::serialize(stream, start_time);
00185 return stream.getData();
00186 }
00187
00188 ROS_DEPRECATED virtual uint8_t *deserialize(uint8_t *read_ptr)
00189 {
00190 ros::serialization::IStream stream(read_ptr, 1000000000);
00191 ros::serialization::deserialize(stream, start_time);
00192 return stream.getData();
00193 }
00194
00195 ROS_DEPRECATED virtual uint32_t serializationLength() const
00196 {
00197 uint32_t size = 0;
00198 size += ros::serialization::serializationLength(start_time);
00199 return size;
00200 }
00201
00202 typedef boost::shared_ptr< ::pr2_msgs::SetLaserTrajCmdResponse_<ContainerAllocator> > Ptr;
00203 typedef boost::shared_ptr< ::pr2_msgs::SetLaserTrajCmdResponse_<ContainerAllocator> const> ConstPtr;
00204 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00205 };
00206 typedef ::pr2_msgs::SetLaserTrajCmdResponse_<std::allocator<void> > SetLaserTrajCmdResponse;
00207
00208 typedef boost::shared_ptr< ::pr2_msgs::SetLaserTrajCmdResponse> SetLaserTrajCmdResponsePtr;
00209 typedef boost::shared_ptr< ::pr2_msgs::SetLaserTrajCmdResponse const> SetLaserTrajCmdResponseConstPtr;
00210
00211 struct SetLaserTrajCmd
00212 {
00213
00214 typedef SetLaserTrajCmdRequest Request;
00215 typedef SetLaserTrajCmdResponse Response;
00216 Request request;
00217 Response response;
00218
00219 typedef Request RequestType;
00220 typedef Response ResponseType;
00221 };
00222 }
00223
00224 namespace ros
00225 {
00226 namespace message_traits
00227 {
00228 template<class ContainerAllocator> struct IsMessage< ::pr2_msgs::SetLaserTrajCmdRequest_<ContainerAllocator> > : public TrueType {};
00229 template<class ContainerAllocator> struct IsMessage< ::pr2_msgs::SetLaserTrajCmdRequest_<ContainerAllocator> const> : public TrueType {};
00230 template<class ContainerAllocator>
00231 struct MD5Sum< ::pr2_msgs::SetLaserTrajCmdRequest_<ContainerAllocator> > {
00232 static const char* value()
00233 {
00234 return "83f915c37d36f61442c752779261e7d4";
00235 }
00236
00237 static const char* value(const ::pr2_msgs::SetLaserTrajCmdRequest_<ContainerAllocator> &) { return value(); }
00238 static const uint64_t static_value1 = 0x83f915c37d36f614ULL;
00239 static const uint64_t static_value2 = 0x42c752779261e7d4ULL;
00240 };
00241
00242 template<class ContainerAllocator>
00243 struct DataType< ::pr2_msgs::SetLaserTrajCmdRequest_<ContainerAllocator> > {
00244 static const char* value()
00245 {
00246 return "pr2_msgs/SetLaserTrajCmdRequest";
00247 }
00248
00249 static const char* value(const ::pr2_msgs::SetLaserTrajCmdRequest_<ContainerAllocator> &) { return value(); }
00250 };
00251
00252 template<class ContainerAllocator>
00253 struct Definition< ::pr2_msgs::SetLaserTrajCmdRequest_<ContainerAllocator> > {
00254 static const char* value()
00255 {
00256 return "pr2_msgs/LaserTrajCmd command\n\
00257 \n\
00258 ================================================================================\n\
00259 MSG: pr2_msgs/LaserTrajCmd\n\
00260 # This message is used to set the profile that the tilt laser controller\n\
00261 # executes.\n\
00262 Header header\n\
00263 string profile # options are currently \"linear\" or \"linear_blended\"\n\
00264 float64[] position # Laser positions\n\
00265 duration[] time_from_start # Times to reach laser positions in seconds\n\
00266 float64 max_velocity # Set <= 0 to use default\n\
00267 float64 max_acceleration # Set <= 0 to use default\n\
00268 \n\
00269 ================================================================================\n\
00270 MSG: std_msgs/Header\n\
00271 # Standard metadata for higher-level stamped data types.\n\
00272 # This is generally used to communicate timestamped data \n\
00273 # in a particular coordinate frame.\n\
00274 # \n\
00275 # sequence ID: consecutively increasing ID \n\
00276 uint32 seq\n\
00277 #Two-integer timestamp that is expressed as:\n\
00278 # * stamp.secs: seconds (stamp_secs) since epoch\n\
00279 # * stamp.nsecs: nanoseconds since stamp_secs\n\
00280 # time-handling sugar is provided by the client library\n\
00281 time stamp\n\
00282 #Frame this data is associated with\n\
00283 # 0: no frame\n\
00284 # 1: global frame\n\
00285 string frame_id\n\
00286 \n\
00287 ";
00288 }
00289
00290 static const char* value(const ::pr2_msgs::SetLaserTrajCmdRequest_<ContainerAllocator> &) { return value(); }
00291 };
00292
00293 }
00294 }
00295
00296
00297 namespace ros
00298 {
00299 namespace message_traits
00300 {
00301 template<class ContainerAllocator> struct IsMessage< ::pr2_msgs::SetLaserTrajCmdResponse_<ContainerAllocator> > : public TrueType {};
00302 template<class ContainerAllocator> struct IsMessage< ::pr2_msgs::SetLaserTrajCmdResponse_<ContainerAllocator> const> : public TrueType {};
00303 template<class ContainerAllocator>
00304 struct MD5Sum< ::pr2_msgs::SetLaserTrajCmdResponse_<ContainerAllocator> > {
00305 static const char* value()
00306 {
00307 return "3888666920054f1ef39d2df7a5d94b02";
00308 }
00309
00310 static const char* value(const ::pr2_msgs::SetLaserTrajCmdResponse_<ContainerAllocator> &) { return value(); }
00311 static const uint64_t static_value1 = 0x3888666920054f1eULL;
00312 static const uint64_t static_value2 = 0xf39d2df7a5d94b02ULL;
00313 };
00314
00315 template<class ContainerAllocator>
00316 struct DataType< ::pr2_msgs::SetLaserTrajCmdResponse_<ContainerAllocator> > {
00317 static const char* value()
00318 {
00319 return "pr2_msgs/SetLaserTrajCmdResponse";
00320 }
00321
00322 static const char* value(const ::pr2_msgs::SetLaserTrajCmdResponse_<ContainerAllocator> &) { return value(); }
00323 };
00324
00325 template<class ContainerAllocator>
00326 struct Definition< ::pr2_msgs::SetLaserTrajCmdResponse_<ContainerAllocator> > {
00327 static const char* value()
00328 {
00329 return "time start_time\n\
00330 \n\
00331 ";
00332 }
00333
00334 static const char* value(const ::pr2_msgs::SetLaserTrajCmdResponse_<ContainerAllocator> &) { return value(); }
00335 };
00336
00337 template<class ContainerAllocator> struct IsFixedSize< ::pr2_msgs::SetLaserTrajCmdResponse_<ContainerAllocator> > : public TrueType {};
00338 }
00339 }
00340
00341 namespace ros
00342 {
00343 namespace serialization
00344 {
00345
00346 template<class ContainerAllocator> struct Serializer< ::pr2_msgs::SetLaserTrajCmdRequest_<ContainerAllocator> >
00347 {
00348 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00349 {
00350 stream.next(m.command);
00351 }
00352
00353 ROS_DECLARE_ALLINONE_SERIALIZER;
00354 };
00355 }
00356 }
00357
00358
00359 namespace ros
00360 {
00361 namespace serialization
00362 {
00363
00364 template<class ContainerAllocator> struct Serializer< ::pr2_msgs::SetLaserTrajCmdResponse_<ContainerAllocator> >
00365 {
00366 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00367 {
00368 stream.next(m.start_time);
00369 }
00370
00371 ROS_DECLARE_ALLINONE_SERIALIZER;
00372 };
00373 }
00374 }
00375
00376 namespace ros
00377 {
00378 namespace service_traits
00379 {
00380 template<>
00381 struct MD5Sum<pr2_msgs::SetLaserTrajCmd> {
00382 static const char* value()
00383 {
00384 return "28fe2ce397611c999952c74a1ea882aa";
00385 }
00386
00387 static const char* value(const pr2_msgs::SetLaserTrajCmd&) { return value(); }
00388 };
00389
00390 template<>
00391 struct DataType<pr2_msgs::SetLaserTrajCmd> {
00392 static const char* value()
00393 {
00394 return "pr2_msgs/SetLaserTrajCmd";
00395 }
00396
00397 static const char* value(const pr2_msgs::SetLaserTrajCmd&) { return value(); }
00398 };
00399
00400 template<class ContainerAllocator>
00401 struct MD5Sum<pr2_msgs::SetLaserTrajCmdRequest_<ContainerAllocator> > {
00402 static const char* value()
00403 {
00404 return "28fe2ce397611c999952c74a1ea882aa";
00405 }
00406
00407 static const char* value(const pr2_msgs::SetLaserTrajCmdRequest_<ContainerAllocator> &) { return value(); }
00408 };
00409
00410 template<class ContainerAllocator>
00411 struct DataType<pr2_msgs::SetLaserTrajCmdRequest_<ContainerAllocator> > {
00412 static const char* value()
00413 {
00414 return "pr2_msgs/SetLaserTrajCmd";
00415 }
00416
00417 static const char* value(const pr2_msgs::SetLaserTrajCmdRequest_<ContainerAllocator> &) { return value(); }
00418 };
00419
00420 template<class ContainerAllocator>
00421 struct MD5Sum<pr2_msgs::SetLaserTrajCmdResponse_<ContainerAllocator> > {
00422 static const char* value()
00423 {
00424 return "28fe2ce397611c999952c74a1ea882aa";
00425 }
00426
00427 static const char* value(const pr2_msgs::SetLaserTrajCmdResponse_<ContainerAllocator> &) { return value(); }
00428 };
00429
00430 template<class ContainerAllocator>
00431 struct DataType<pr2_msgs::SetLaserTrajCmdResponse_<ContainerAllocator> > {
00432 static const char* value()
00433 {
00434 return "pr2_msgs/SetLaserTrajCmd";
00435 }
00436
00437 static const char* value(const pr2_msgs::SetLaserTrajCmdResponse_<ContainerAllocator> &) { return value(); }
00438 };
00439
00440 }
00441 }
00442
00443 #endif // PR2_MSGS_SERVICE_SETLASERTRAJCMD_H
00444