00001
00002 #ifndef ARTICULATION_MSGS_SERVICE_SETMODELPRIORSRV_H
00003 #define ARTICULATION_MSGS_SERVICE_SETMODELPRIORSRV_H
00004 #include <string>
00005 #include <vector>
00006 #include <ostream>
00007 #include "ros/serialization.h"
00008 #include "ros/builtin_message_traits.h"
00009 #include "ros/message_operations.h"
00010 #include "ros/message.h"
00011 #include "ros/time.h"
00012
00013 #include "ros/service_traits.h"
00014
00015 #include "articulation_msgs/ModelMsg.h"
00016
00017
00018
00019 namespace articulation_msgs
00020 {
00021 template <class ContainerAllocator>
00022 struct SetModelPriorSrvRequest_ : public ros::Message
00023 {
00024 typedef SetModelPriorSrvRequest_<ContainerAllocator> Type;
00025
00026 SetModelPriorSrvRequest_()
00027 : model()
00028 {
00029 }
00030
00031 SetModelPriorSrvRequest_(const ContainerAllocator& _alloc)
00032 : model(_alloc)
00033 {
00034 }
00035
00036 typedef std::vector< ::articulation_msgs::ModelMsg_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::articulation_msgs::ModelMsg_<ContainerAllocator> >::other > _model_type;
00037 std::vector< ::articulation_msgs::ModelMsg_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::articulation_msgs::ModelMsg_<ContainerAllocator> >::other > model;
00038
00039
00040 ROS_DEPRECATED uint32_t get_model_size() const { return (uint32_t)model.size(); }
00041 ROS_DEPRECATED void set_model_size(uint32_t size) { model.resize((size_t)size); }
00042 ROS_DEPRECATED void get_model_vec(std::vector< ::articulation_msgs::ModelMsg_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::articulation_msgs::ModelMsg_<ContainerAllocator> >::other > & vec) const { vec = this->model; }
00043 ROS_DEPRECATED void set_model_vec(const std::vector< ::articulation_msgs::ModelMsg_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::articulation_msgs::ModelMsg_<ContainerAllocator> >::other > & vec) { this->model = vec; }
00044 private:
00045 static const char* __s_getDataType_() { return "articulation_msgs/SetModelPriorSrvRequest"; }
00046 public:
00047 ROS_DEPRECATED static const std::string __s_getDataType() { return __s_getDataType_(); }
00048
00049 ROS_DEPRECATED const std::string __getDataType() const { return __s_getDataType_(); }
00050
00051 private:
00052 static const char* __s_getMD5Sum_() { return "056375d531bc6dcbc8a3fedb4b45371f"; }
00053 public:
00054 ROS_DEPRECATED static const std::string __s_getMD5Sum() { return __s_getMD5Sum_(); }
00055
00056 ROS_DEPRECATED const std::string __getMD5Sum() const { return __s_getMD5Sum_(); }
00057
00058 private:
00059 static const char* __s_getServerMD5Sum_() { return "056375d531bc6dcbc8a3fedb4b45371f"; }
00060 public:
00061 ROS_DEPRECATED static const std::string __s_getServerMD5Sum() { return __s_getServerMD5Sum_(); }
00062
00063 ROS_DEPRECATED const std::string __getServerMD5Sum() const { return __s_getServerMD5Sum_(); }
00064
00065 private:
00066 static const char* __s_getMessageDefinition_() { return "\n\
00067 \n\
00068 \n\
00069 \n\
00070 \n\
00071 \n\
00072 articulation_msgs/ModelMsg[] model\n\
00073 \n\
00074 ================================================================================\n\
00075 MSG: articulation_msgs/ModelMsg\n\
00076 # Single kinematic model\n\
00077 #\n\
00078 # A kinematic model is defined by its model class name, and a set of parameters. \n\
00079 # The client may additionally specify a model id, that can be used to colorize the\n\
00080 # model when visualized using the RVIZ model display.\n\
00081 # \n\
00082 # For a list of currently implemented models, see the documetation at\n\
00083 # http://www.ros.org/wiki/articulation_models\n\
00084 #\n\
00085 #\n\
00086 \n\
00087 Header header # frame and timestamp\n\
00088 \n\
00089 int32 id # user specified model id\n\
00090 string name # name of the model family (e.g. \"rotational\",\n\
00091 # \"prismatic\", \"pca-gp\", \"rigid\")\n\
00092 articulation_msgs/ParamMsg[] params # model parameters\n\
00093 articulation_msgs/TrackMsg track # trajectory from which the model is estimated, or\n\
00094 # that is evaluated using the model\n\
00095 \n\
00096 ================================================================================\n\
00097 MSG: std_msgs/Header\n\
00098 # Standard metadata for higher-level stamped data types.\n\
00099 # This is generally used to communicate timestamped data \n\
00100 # in a particular coordinate frame.\n\
00101 # \n\
00102 # sequence ID: consecutively increasing ID \n\
00103 uint32 seq\n\
00104 #Two-integer timestamp that is expressed as:\n\
00105 # * stamp.secs: seconds (stamp_secs) since epoch\n\
00106 # * stamp.nsecs: nanoseconds since stamp_secs\n\
00107 # time-handling sugar is provided by the client library\n\
00108 time stamp\n\
00109 #Frame this data is associated with\n\
00110 # 0: no frame\n\
00111 # 1: global frame\n\
00112 string frame_id\n\
00113 \n\
00114 ================================================================================\n\
00115 MSG: articulation_msgs/ParamMsg\n\
00116 # Single parameter passed to or from model fitting\n\
00117 #\n\
00118 # This mechanism allows to flexibly pass parameters to \n\
00119 # model fitting (and vice versa). Note that these parameters \n\
00120 # are model-specific: A client may supply additional\n\
00121 # parameters to the model estimator, and, similarly, a estimator\n\
00122 # may add the estimated model parameters to the model message.\n\
00123 # When the model is then evaluated, for example to make predictions\n\
00124 # or to compute the likelihood, the model class can then use\n\
00125 # these parameters.\n\
00126 #\n\
00127 # A parameter has a name, a value, and a type. The type globally\n\
00128 # indicates whether it is a prior parameter (prior to model fitting),\n\
00129 # or a model parameter (found during model fitting, using a maximum-\n\
00130 # likelihood estimator), or a cached evaluation (e.g., the likelihood\n\
00131 # or the BIC are a typical \"side\"-product of model estimation, and\n\
00132 # can therefore already be cached).\n\
00133 #\n\
00134 # For a list of currently used parameters, see the documentation at\n\
00135 # http://www.ros.org/wiki/articulation_models\n\
00136 #\n\
00137 \n\
00138 uint8 PRIOR=0 # indicates a prior model parameter \n\
00139 # (e.g., \"sigma_position\")\n\
00140 uint8 PARAM=1 # indicates a estimated model parameter \n\
00141 # (e.g., \"rot_radius\", the estimated radius)\n\
00142 uint8 EVAL=2 # indicates a cached evaluation of the model, given \n\
00143 # the current trajectory\n\
00144 # (e.g., \"loglikelihood\", the log likelihood of the\n\
00145 # data, given the model and its parameters)\n\
00146 \n\
00147 string name # name of the parameter\n\
00148 float64 value # value of the parameter\n\
00149 uint8 type # type of the parameter (PRIOR, PARAM, EVAL)\n\
00150 \n\
00151 \n\
00152 ================================================================================\n\
00153 MSG: articulation_msgs/TrackMsg\n\
00154 # Single kinematic trajectory\n\
00155 #\n\
00156 # This message contains a kinematic trajectory. The trajectory is specified\n\
00157 # as a vector of 6D poses. An additional flag, track_type, indicates whether\n\
00158 # the track is valid, and whether it includes orientation. The track id\n\
00159 # can be used for automatic coloring in the RVIZ track plugin, and can be \n\
00160 # freely chosen by the client. \n\
00161 #\n\
00162 # A model is fitting only from the trajectory stored in the pose[]-vector. \n\
00163 # Additional information may be associated to each pose using the channels\n\
00164 # vector, with arbitrary # fields (e.g., to include applied/measured forces). \n\
00165 #\n\
00166 # After model evaluation,\n\
00167 # also the associated configurations of the object are stored in the channels,\n\
00168 # named \"q[0]\"..\"q[DOF-1]\", where DOF is the number of degrees of freedom.\n\
00169 # Model evaluation also projects the poses in the pose vector onto the model,\n\
00170 # and stores these ideal poses in the vector pose_projected. Further, during model\n\
00171 # evaluation, a new set of (uniform) configurations over the valid configuration\n\
00172 # range is sampled, and the result is stored in pose_resampled.\n\
00173 # The vector pose_flags contains additional display flags for the poses in the\n\
00174 # pose vector, for example, whether a pose is visible and/or\n\
00175 # the end of a trajectory segment. At the moment, this is only used by the\n\
00176 # prior_model_learner.\n\
00177 #\n\
00178 \n\
00179 Header header # Timestamp and frame\n\
00180 int32 id # used-specified track id\n\
00181 \n\
00182 geometry_msgs/Pose[] pose # sequence of poses, defining the observed trajectory\n\
00183 geometry_msgs/Pose[] pose_projected # sequence of poses, projected to the model \n\
00184 # (after model evaluation)\n\
00185 geometry_msgs/Pose[] pose_resampled # sequence of poses, re-sampled from the model in\n\
00186 # the valid configuration range\n\
00187 uint32[] pose_flags # bit-wise combination of POSE_VISIBLE and POSE_END_OF_SEGMENT\n\
00188 \n\
00189 uint32 POSE_VISIBLE=1\n\
00190 uint32 POSE_END_OF_SEGMENT=2\n\
00191 \n\
00192 # Each channel should have the same number of elements as pose array, \n\
00193 # and the data in each channel should correspond 1:1 with each pose\n\
00194 # possible channels: \"width\", \"height\", \"rgb\", ...\n\
00195 sensor_msgs/ChannelFloat32[] channels \n\
00196 \n\
00197 \n\
00198 \n\
00199 ================================================================================\n\
00200 MSG: geometry_msgs/Pose\n\
00201 # A representation of pose in free space, composed of postion and orientation. \n\
00202 Point position\n\
00203 Quaternion orientation\n\
00204 \n\
00205 ================================================================================\n\
00206 MSG: geometry_msgs/Point\n\
00207 # This contains the position of a point in free space\n\
00208 float64 x\n\
00209 float64 y\n\
00210 float64 z\n\
00211 \n\
00212 ================================================================================\n\
00213 MSG: geometry_msgs/Quaternion\n\
00214 # This represents an orientation in free space in quaternion form.\n\
00215 \n\
00216 float64 x\n\
00217 float64 y\n\
00218 float64 z\n\
00219 float64 w\n\
00220 \n\
00221 ================================================================================\n\
00222 MSG: sensor_msgs/ChannelFloat32\n\
00223 # This message is used by the PointCloud message to hold optional data\n\
00224 # associated with each point in the cloud. The length of the values\n\
00225 # array should be the same as the length of the points array in the\n\
00226 # PointCloud, and each value should be associated with the corresponding\n\
00227 # point.\n\
00228 \n\
00229 # Channel names in existing practice include:\n\
00230 # \"u\", \"v\" - row and column (respectively) in the left stereo image.\n\
00231 # This is opposite to usual conventions but remains for\n\
00232 # historical reasons. The newer PointCloud2 message has no\n\
00233 # such problem.\n\
00234 # \"rgb\" - For point clouds produced by color stereo cameras. uint8\n\
00235 # (R,G,B) values packed into the least significant 24 bits,\n\
00236 # in order.\n\
00237 # \"intensity\" - laser or pixel intensity.\n\
00238 # \"distance\"\n\
00239 \n\
00240 # The channel name should give semantics of the channel (e.g.\n\
00241 # \"intensity\" instead of \"value\").\n\
00242 string name\n\
00243 \n\
00244 # The values array should be 1-1 with the elements of the associated\n\
00245 # PointCloud.\n\
00246 float32[] values\n\
00247 \n\
00248 "; }
00249 public:
00250 ROS_DEPRECATED static const std::string __s_getMessageDefinition() { return __s_getMessageDefinition_(); }
00251
00252 ROS_DEPRECATED const std::string __getMessageDefinition() const { return __s_getMessageDefinition_(); }
00253
00254 ROS_DEPRECATED virtual uint8_t *serialize(uint8_t *write_ptr, uint32_t seq) const
00255 {
00256 ros::serialization::OStream stream(write_ptr, 1000000000);
00257 ros::serialization::serialize(stream, model);
00258 return stream.getData();
00259 }
00260
00261 ROS_DEPRECATED virtual uint8_t *deserialize(uint8_t *read_ptr)
00262 {
00263 ros::serialization::IStream stream(read_ptr, 1000000000);
00264 ros::serialization::deserialize(stream, model);
00265 return stream.getData();
00266 }
00267
00268 ROS_DEPRECATED virtual uint32_t serializationLength() const
00269 {
00270 uint32_t size = 0;
00271 size += ros::serialization::serializationLength(model);
00272 return size;
00273 }
00274
00275 typedef boost::shared_ptr< ::articulation_msgs::SetModelPriorSrvRequest_<ContainerAllocator> > Ptr;
00276 typedef boost::shared_ptr< ::articulation_msgs::SetModelPriorSrvRequest_<ContainerAllocator> const> ConstPtr;
00277 };
00278 typedef ::articulation_msgs::SetModelPriorSrvRequest_<std::allocator<void> > SetModelPriorSrvRequest;
00279
00280 typedef boost::shared_ptr< ::articulation_msgs::SetModelPriorSrvRequest> SetModelPriorSrvRequestPtr;
00281 typedef boost::shared_ptr< ::articulation_msgs::SetModelPriorSrvRequest const> SetModelPriorSrvRequestConstPtr;
00282
00283
00284 template <class ContainerAllocator>
00285 struct SetModelPriorSrvResponse_ : public ros::Message
00286 {
00287 typedef SetModelPriorSrvResponse_<ContainerAllocator> Type;
00288
00289 SetModelPriorSrvResponse_()
00290 {
00291 }
00292
00293 SetModelPriorSrvResponse_(const ContainerAllocator& _alloc)
00294 {
00295 }
00296
00297
00298 private:
00299 static const char* __s_getDataType_() { return "articulation_msgs/SetModelPriorSrvResponse"; }
00300 public:
00301 ROS_DEPRECATED static const std::string __s_getDataType() { return __s_getDataType_(); }
00302
00303 ROS_DEPRECATED const std::string __getDataType() const { return __s_getDataType_(); }
00304
00305 private:
00306 static const char* __s_getMD5Sum_() { return "d41d8cd98f00b204e9800998ecf8427e"; }
00307 public:
00308 ROS_DEPRECATED static const std::string __s_getMD5Sum() { return __s_getMD5Sum_(); }
00309
00310 ROS_DEPRECATED const std::string __getMD5Sum() const { return __s_getMD5Sum_(); }
00311
00312 private:
00313 static const char* __s_getServerMD5Sum_() { return "056375d531bc6dcbc8a3fedb4b45371f"; }
00314 public:
00315 ROS_DEPRECATED static const std::string __s_getServerMD5Sum() { return __s_getServerMD5Sum_(); }
00316
00317 ROS_DEPRECATED const std::string __getServerMD5Sum() const { return __s_getServerMD5Sum_(); }
00318
00319 private:
00320 static const char* __s_getMessageDefinition_() { return "\n\
00321 \n\
00322 \n\
00323 "; }
00324 public:
00325 ROS_DEPRECATED static const std::string __s_getMessageDefinition() { return __s_getMessageDefinition_(); }
00326
00327 ROS_DEPRECATED const std::string __getMessageDefinition() const { return __s_getMessageDefinition_(); }
00328
00329 ROS_DEPRECATED virtual uint8_t *serialize(uint8_t *write_ptr, uint32_t seq) const
00330 {
00331 ros::serialization::OStream stream(write_ptr, 1000000000);
00332 return stream.getData();
00333 }
00334
00335 ROS_DEPRECATED virtual uint8_t *deserialize(uint8_t *read_ptr)
00336 {
00337 ros::serialization::IStream stream(read_ptr, 1000000000);
00338 return stream.getData();
00339 }
00340
00341 ROS_DEPRECATED virtual uint32_t serializationLength() const
00342 {
00343 uint32_t size = 0;
00344 return size;
00345 }
00346
00347 typedef boost::shared_ptr< ::articulation_msgs::SetModelPriorSrvResponse_<ContainerAllocator> > Ptr;
00348 typedef boost::shared_ptr< ::articulation_msgs::SetModelPriorSrvResponse_<ContainerAllocator> const> ConstPtr;
00349 };
00350 typedef ::articulation_msgs::SetModelPriorSrvResponse_<std::allocator<void> > SetModelPriorSrvResponse;
00351
00352 typedef boost::shared_ptr< ::articulation_msgs::SetModelPriorSrvResponse> SetModelPriorSrvResponsePtr;
00353 typedef boost::shared_ptr< ::articulation_msgs::SetModelPriorSrvResponse const> SetModelPriorSrvResponseConstPtr;
00354
00355 struct SetModelPriorSrv
00356 {
00357
00358 typedef SetModelPriorSrvRequest Request;
00359 typedef SetModelPriorSrvResponse Response;
00360 Request request;
00361 Response response;
00362
00363 typedef Request RequestType;
00364 typedef Response ResponseType;
00365 };
00366 }
00367
00368 namespace ros
00369 {
00370 namespace message_traits
00371 {
00372 template<class ContainerAllocator>
00373 struct MD5Sum< ::articulation_msgs::SetModelPriorSrvRequest_<ContainerAllocator> > {
00374 static const char* value()
00375 {
00376 return "056375d531bc6dcbc8a3fedb4b45371f";
00377 }
00378
00379 static const char* value(const ::articulation_msgs::SetModelPriorSrvRequest_<ContainerAllocator> &) { return value(); }
00380 static const uint64_t static_value1 = 0x056375d531bc6dcbULL;
00381 static const uint64_t static_value2 = 0xc8a3fedb4b45371fULL;
00382 };
00383
00384 template<class ContainerAllocator>
00385 struct DataType< ::articulation_msgs::SetModelPriorSrvRequest_<ContainerAllocator> > {
00386 static const char* value()
00387 {
00388 return "articulation_msgs/SetModelPriorSrvRequest";
00389 }
00390
00391 static const char* value(const ::articulation_msgs::SetModelPriorSrvRequest_<ContainerAllocator> &) { return value(); }
00392 };
00393
00394 template<class ContainerAllocator>
00395 struct Definition< ::articulation_msgs::SetModelPriorSrvRequest_<ContainerAllocator> > {
00396 static const char* value()
00397 {
00398 return "\n\
00399 \n\
00400 \n\
00401 \n\
00402 \n\
00403 \n\
00404 articulation_msgs/ModelMsg[] model\n\
00405 \n\
00406 ================================================================================\n\
00407 MSG: articulation_msgs/ModelMsg\n\
00408 # Single kinematic model\n\
00409 #\n\
00410 # A kinematic model is defined by its model class name, and a set of parameters. \n\
00411 # The client may additionally specify a model id, that can be used to colorize the\n\
00412 # model when visualized using the RVIZ model display.\n\
00413 # \n\
00414 # For a list of currently implemented models, see the documetation at\n\
00415 # http://www.ros.org/wiki/articulation_models\n\
00416 #\n\
00417 #\n\
00418 \n\
00419 Header header # frame and timestamp\n\
00420 \n\
00421 int32 id # user specified model id\n\
00422 string name # name of the model family (e.g. \"rotational\",\n\
00423 # \"prismatic\", \"pca-gp\", \"rigid\")\n\
00424 articulation_msgs/ParamMsg[] params # model parameters\n\
00425 articulation_msgs/TrackMsg track # trajectory from which the model is estimated, or\n\
00426 # that is evaluated using the model\n\
00427 \n\
00428 ================================================================================\n\
00429 MSG: std_msgs/Header\n\
00430 # Standard metadata for higher-level stamped data types.\n\
00431 # This is generally used to communicate timestamped data \n\
00432 # in a particular coordinate frame.\n\
00433 # \n\
00434 # sequence ID: consecutively increasing ID \n\
00435 uint32 seq\n\
00436 #Two-integer timestamp that is expressed as:\n\
00437 # * stamp.secs: seconds (stamp_secs) since epoch\n\
00438 # * stamp.nsecs: nanoseconds since stamp_secs\n\
00439 # time-handling sugar is provided by the client library\n\
00440 time stamp\n\
00441 #Frame this data is associated with\n\
00442 # 0: no frame\n\
00443 # 1: global frame\n\
00444 string frame_id\n\
00445 \n\
00446 ================================================================================\n\
00447 MSG: articulation_msgs/ParamMsg\n\
00448 # Single parameter passed to or from model fitting\n\
00449 #\n\
00450 # This mechanism allows to flexibly pass parameters to \n\
00451 # model fitting (and vice versa). Note that these parameters \n\
00452 # are model-specific: A client may supply additional\n\
00453 # parameters to the model estimator, and, similarly, a estimator\n\
00454 # may add the estimated model parameters to the model message.\n\
00455 # When the model is then evaluated, for example to make predictions\n\
00456 # or to compute the likelihood, the model class can then use\n\
00457 # these parameters.\n\
00458 #\n\
00459 # A parameter has a name, a value, and a type. The type globally\n\
00460 # indicates whether it is a prior parameter (prior to model fitting),\n\
00461 # or a model parameter (found during model fitting, using a maximum-\n\
00462 # likelihood estimator), or a cached evaluation (e.g., the likelihood\n\
00463 # or the BIC are a typical \"side\"-product of model estimation, and\n\
00464 # can therefore already be cached).\n\
00465 #\n\
00466 # For a list of currently used parameters, see the documentation at\n\
00467 # http://www.ros.org/wiki/articulation_models\n\
00468 #\n\
00469 \n\
00470 uint8 PRIOR=0 # indicates a prior model parameter \n\
00471 # (e.g., \"sigma_position\")\n\
00472 uint8 PARAM=1 # indicates a estimated model parameter \n\
00473 # (e.g., \"rot_radius\", the estimated radius)\n\
00474 uint8 EVAL=2 # indicates a cached evaluation of the model, given \n\
00475 # the current trajectory\n\
00476 # (e.g., \"loglikelihood\", the log likelihood of the\n\
00477 # data, given the model and its parameters)\n\
00478 \n\
00479 string name # name of the parameter\n\
00480 float64 value # value of the parameter\n\
00481 uint8 type # type of the parameter (PRIOR, PARAM, EVAL)\n\
00482 \n\
00483 \n\
00484 ================================================================================\n\
00485 MSG: articulation_msgs/TrackMsg\n\
00486 # Single kinematic trajectory\n\
00487 #\n\
00488 # This message contains a kinematic trajectory. The trajectory is specified\n\
00489 # as a vector of 6D poses. An additional flag, track_type, indicates whether\n\
00490 # the track is valid, and whether it includes orientation. The track id\n\
00491 # can be used for automatic coloring in the RVIZ track plugin, and can be \n\
00492 # freely chosen by the client. \n\
00493 #\n\
00494 # A model is fitting only from the trajectory stored in the pose[]-vector. \n\
00495 # Additional information may be associated to each pose using the channels\n\
00496 # vector, with arbitrary # fields (e.g., to include applied/measured forces). \n\
00497 #\n\
00498 # After model evaluation,\n\
00499 # also the associated configurations of the object are stored in the channels,\n\
00500 # named \"q[0]\"..\"q[DOF-1]\", where DOF is the number of degrees of freedom.\n\
00501 # Model evaluation also projects the poses in the pose vector onto the model,\n\
00502 # and stores these ideal poses in the vector pose_projected. Further, during model\n\
00503 # evaluation, a new set of (uniform) configurations over the valid configuration\n\
00504 # range is sampled, and the result is stored in pose_resampled.\n\
00505 # The vector pose_flags contains additional display flags for the poses in the\n\
00506 # pose vector, for example, whether a pose is visible and/or\n\
00507 # the end of a trajectory segment. At the moment, this is only used by the\n\
00508 # prior_model_learner.\n\
00509 #\n\
00510 \n\
00511 Header header # Timestamp and frame\n\
00512 int32 id # used-specified track id\n\
00513 \n\
00514 geometry_msgs/Pose[] pose # sequence of poses, defining the observed trajectory\n\
00515 geometry_msgs/Pose[] pose_projected # sequence of poses, projected to the model \n\
00516 # (after model evaluation)\n\
00517 geometry_msgs/Pose[] pose_resampled # sequence of poses, re-sampled from the model in\n\
00518 # the valid configuration range\n\
00519 uint32[] pose_flags # bit-wise combination of POSE_VISIBLE and POSE_END_OF_SEGMENT\n\
00520 \n\
00521 uint32 POSE_VISIBLE=1\n\
00522 uint32 POSE_END_OF_SEGMENT=2\n\
00523 \n\
00524 # Each channel should have the same number of elements as pose array, \n\
00525 # and the data in each channel should correspond 1:1 with each pose\n\
00526 # possible channels: \"width\", \"height\", \"rgb\", ...\n\
00527 sensor_msgs/ChannelFloat32[] channels \n\
00528 \n\
00529 \n\
00530 \n\
00531 ================================================================================\n\
00532 MSG: geometry_msgs/Pose\n\
00533 # A representation of pose in free space, composed of postion and orientation. \n\
00534 Point position\n\
00535 Quaternion orientation\n\
00536 \n\
00537 ================================================================================\n\
00538 MSG: geometry_msgs/Point\n\
00539 # This contains the position of a point in free space\n\
00540 float64 x\n\
00541 float64 y\n\
00542 float64 z\n\
00543 \n\
00544 ================================================================================\n\
00545 MSG: geometry_msgs/Quaternion\n\
00546 # This represents an orientation in free space in quaternion form.\n\
00547 \n\
00548 float64 x\n\
00549 float64 y\n\
00550 float64 z\n\
00551 float64 w\n\
00552 \n\
00553 ================================================================================\n\
00554 MSG: sensor_msgs/ChannelFloat32\n\
00555 # This message is used by the PointCloud message to hold optional data\n\
00556 # associated with each point in the cloud. The length of the values\n\
00557 # array should be the same as the length of the points array in the\n\
00558 # PointCloud, and each value should be associated with the corresponding\n\
00559 # point.\n\
00560 \n\
00561 # Channel names in existing practice include:\n\
00562 # \"u\", \"v\" - row and column (respectively) in the left stereo image.\n\
00563 # This is opposite to usual conventions but remains for\n\
00564 # historical reasons. The newer PointCloud2 message has no\n\
00565 # such problem.\n\
00566 # \"rgb\" - For point clouds produced by color stereo cameras. uint8\n\
00567 # (R,G,B) values packed into the least significant 24 bits,\n\
00568 # in order.\n\
00569 # \"intensity\" - laser or pixel intensity.\n\
00570 # \"distance\"\n\
00571 \n\
00572 # The channel name should give semantics of the channel (e.g.\n\
00573 # \"intensity\" instead of \"value\").\n\
00574 string name\n\
00575 \n\
00576 # The values array should be 1-1 with the elements of the associated\n\
00577 # PointCloud.\n\
00578 float32[] values\n\
00579 \n\
00580 ";
00581 }
00582
00583 static const char* value(const ::articulation_msgs::SetModelPriorSrvRequest_<ContainerAllocator> &) { return value(); }
00584 };
00585
00586 }
00587 }
00588
00589
00590 namespace ros
00591 {
00592 namespace message_traits
00593 {
00594 template<class ContainerAllocator>
00595 struct MD5Sum< ::articulation_msgs::SetModelPriorSrvResponse_<ContainerAllocator> > {
00596 static const char* value()
00597 {
00598 return "d41d8cd98f00b204e9800998ecf8427e";
00599 }
00600
00601 static const char* value(const ::articulation_msgs::SetModelPriorSrvResponse_<ContainerAllocator> &) { return value(); }
00602 static const uint64_t static_value1 = 0xd41d8cd98f00b204ULL;
00603 static const uint64_t static_value2 = 0xe9800998ecf8427eULL;
00604 };
00605
00606 template<class ContainerAllocator>
00607 struct DataType< ::articulation_msgs::SetModelPriorSrvResponse_<ContainerAllocator> > {
00608 static const char* value()
00609 {
00610 return "articulation_msgs/SetModelPriorSrvResponse";
00611 }
00612
00613 static const char* value(const ::articulation_msgs::SetModelPriorSrvResponse_<ContainerAllocator> &) { return value(); }
00614 };
00615
00616 template<class ContainerAllocator>
00617 struct Definition< ::articulation_msgs::SetModelPriorSrvResponse_<ContainerAllocator> > {
00618 static const char* value()
00619 {
00620 return "\n\
00621 \n\
00622 \n\
00623 ";
00624 }
00625
00626 static const char* value(const ::articulation_msgs::SetModelPriorSrvResponse_<ContainerAllocator> &) { return value(); }
00627 };
00628
00629 template<class ContainerAllocator> struct IsFixedSize< ::articulation_msgs::SetModelPriorSrvResponse_<ContainerAllocator> > : public TrueType {};
00630 }
00631 }
00632
00633 namespace ros
00634 {
00635 namespace serialization
00636 {
00637
00638 template<class ContainerAllocator> struct Serializer< ::articulation_msgs::SetModelPriorSrvRequest_<ContainerAllocator> >
00639 {
00640 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00641 {
00642 stream.next(m.model);
00643 }
00644
00645 ROS_DECLARE_ALLINONE_SERIALIZER;
00646 };
00647 }
00648 }
00649
00650
00651 namespace ros
00652 {
00653 namespace serialization
00654 {
00655
00656 template<class ContainerAllocator> struct Serializer< ::articulation_msgs::SetModelPriorSrvResponse_<ContainerAllocator> >
00657 {
00658 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00659 {
00660 }
00661
00662 ROS_DECLARE_ALLINONE_SERIALIZER;
00663 };
00664 }
00665 }
00666
00667 namespace ros
00668 {
00669 namespace service_traits
00670 {
00671 template<>
00672 struct MD5Sum<articulation_msgs::SetModelPriorSrv> {
00673 static const char* value()
00674 {
00675 return "056375d531bc6dcbc8a3fedb4b45371f";
00676 }
00677
00678 static const char* value(const articulation_msgs::SetModelPriorSrv&) { return value(); }
00679 };
00680
00681 template<>
00682 struct DataType<articulation_msgs::SetModelPriorSrv> {
00683 static const char* value()
00684 {
00685 return "articulation_msgs/SetModelPriorSrv";
00686 }
00687
00688 static const char* value(const articulation_msgs::SetModelPriorSrv&) { return value(); }
00689 };
00690
00691 template<class ContainerAllocator>
00692 struct MD5Sum<articulation_msgs::SetModelPriorSrvRequest_<ContainerAllocator> > {
00693 static const char* value()
00694 {
00695 return "056375d531bc6dcbc8a3fedb4b45371f";
00696 }
00697
00698 static const char* value(const articulation_msgs::SetModelPriorSrvRequest_<ContainerAllocator> &) { return value(); }
00699 };
00700
00701 template<class ContainerAllocator>
00702 struct DataType<articulation_msgs::SetModelPriorSrvRequest_<ContainerAllocator> > {
00703 static const char* value()
00704 {
00705 return "articulation_msgs/SetModelPriorSrv";
00706 }
00707
00708 static const char* value(const articulation_msgs::SetModelPriorSrvRequest_<ContainerAllocator> &) { return value(); }
00709 };
00710
00711 template<class ContainerAllocator>
00712 struct MD5Sum<articulation_msgs::SetModelPriorSrvResponse_<ContainerAllocator> > {
00713 static const char* value()
00714 {
00715 return "056375d531bc6dcbc8a3fedb4b45371f";
00716 }
00717
00718 static const char* value(const articulation_msgs::SetModelPriorSrvResponse_<ContainerAllocator> &) { return value(); }
00719 };
00720
00721 template<class ContainerAllocator>
00722 struct DataType<articulation_msgs::SetModelPriorSrvResponse_<ContainerAllocator> > {
00723 static const char* value()
00724 {
00725 return "articulation_msgs/SetModelPriorSrv";
00726 }
00727
00728 static const char* value(const articulation_msgs::SetModelPriorSrvResponse_<ContainerAllocator> &) { return value(); }
00729 };
00730
00731 }
00732 }
00733
00734 #endif // ARTICULATION_MSGS_SERVICE_SETMODELPRIORSRV_H
00735