Go to the documentation of this file.00001
00002 #ifndef HRL_CLICKABLE_WORLD_SERVICE_DISPLAYBUTTONS_H
00003 #define HRL_CLICKABLE_WORLD_SERVICE_DISPLAYBUTTONS_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 "visualization_msgs/Marker.h"
00020
00021
00022
00023 namespace hrl_clickable_world
00024 {
00025 template <class ContainerAllocator>
00026 struct DisplayButtonsRequest_ {
00027 typedef DisplayButtonsRequest_<ContainerAllocator> Type;
00028
00029 DisplayButtonsRequest_()
00030 : buttons()
00031 {
00032 }
00033
00034 DisplayButtonsRequest_(const ContainerAllocator& _alloc)
00035 : buttons(_alloc)
00036 {
00037 }
00038
00039 typedef std::vector< ::visualization_msgs::Marker_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::visualization_msgs::Marker_<ContainerAllocator> >::other > _buttons_type;
00040 std::vector< ::visualization_msgs::Marker_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::visualization_msgs::Marker_<ContainerAllocator> >::other > buttons;
00041
00042
00043 typedef boost::shared_ptr< ::hrl_clickable_world::DisplayButtonsRequest_<ContainerAllocator> > Ptr;
00044 typedef boost::shared_ptr< ::hrl_clickable_world::DisplayButtonsRequest_<ContainerAllocator> const> ConstPtr;
00045 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00046 };
00047 typedef ::hrl_clickable_world::DisplayButtonsRequest_<std::allocator<void> > DisplayButtonsRequest;
00048
00049 typedef boost::shared_ptr< ::hrl_clickable_world::DisplayButtonsRequest> DisplayButtonsRequestPtr;
00050 typedef boost::shared_ptr< ::hrl_clickable_world::DisplayButtonsRequest const> DisplayButtonsRequestConstPtr;
00051
00052
00053 template <class ContainerAllocator>
00054 struct DisplayButtonsResponse_ {
00055 typedef DisplayButtonsResponse_<ContainerAllocator> Type;
00056
00057 DisplayButtonsResponse_()
00058 {
00059 }
00060
00061 DisplayButtonsResponse_(const ContainerAllocator& _alloc)
00062 {
00063 }
00064
00065
00066 typedef boost::shared_ptr< ::hrl_clickable_world::DisplayButtonsResponse_<ContainerAllocator> > Ptr;
00067 typedef boost::shared_ptr< ::hrl_clickable_world::DisplayButtonsResponse_<ContainerAllocator> const> ConstPtr;
00068 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00069 };
00070 typedef ::hrl_clickable_world::DisplayButtonsResponse_<std::allocator<void> > DisplayButtonsResponse;
00071
00072 typedef boost::shared_ptr< ::hrl_clickable_world::DisplayButtonsResponse> DisplayButtonsResponsePtr;
00073 typedef boost::shared_ptr< ::hrl_clickable_world::DisplayButtonsResponse const> DisplayButtonsResponseConstPtr;
00074
00075 struct DisplayButtons
00076 {
00077
00078 typedef DisplayButtonsRequest Request;
00079 typedef DisplayButtonsResponse Response;
00080 Request request;
00081 Response response;
00082
00083 typedef Request RequestType;
00084 typedef Response ResponseType;
00085 };
00086 }
00087
00088 namespace ros
00089 {
00090 namespace message_traits
00091 {
00092 template<class ContainerAllocator> struct IsMessage< ::hrl_clickable_world::DisplayButtonsRequest_<ContainerAllocator> > : public TrueType {};
00093 template<class ContainerAllocator> struct IsMessage< ::hrl_clickable_world::DisplayButtonsRequest_<ContainerAllocator> const> : public TrueType {};
00094 template<class ContainerAllocator>
00095 struct MD5Sum< ::hrl_clickable_world::DisplayButtonsRequest_<ContainerAllocator> > {
00096 static const char* value()
00097 {
00098 return "751920a2717efc2ee0759ed5dd79d09d";
00099 }
00100
00101 static const char* value(const ::hrl_clickable_world::DisplayButtonsRequest_<ContainerAllocator> &) { return value(); }
00102 static const uint64_t static_value1 = 0x751920a2717efc2eULL;
00103 static const uint64_t static_value2 = 0xe0759ed5dd79d09dULL;
00104 };
00105
00106 template<class ContainerAllocator>
00107 struct DataType< ::hrl_clickable_world::DisplayButtonsRequest_<ContainerAllocator> > {
00108 static const char* value()
00109 {
00110 return "hrl_clickable_world/DisplayButtonsRequest";
00111 }
00112
00113 static const char* value(const ::hrl_clickable_world::DisplayButtonsRequest_<ContainerAllocator> &) { return value(); }
00114 };
00115
00116 template<class ContainerAllocator>
00117 struct Definition< ::hrl_clickable_world::DisplayButtonsRequest_<ContainerAllocator> > {
00118 static const char* value()
00119 {
00120 return "visualization_msgs/Marker[] buttons\n\
00121 \n\
00122 ================================================================================\n\
00123 MSG: visualization_msgs/Marker\n\
00124 # See http://www.ros.org/wiki/rviz/DisplayTypes/Marker and http://www.ros.org/wiki/rviz/Tutorials/Markers%3A%20Basic%20Shapes for more information on using this message with rviz\n\
00125 \n\
00126 uint8 ARROW=0\n\
00127 uint8 CUBE=1\n\
00128 uint8 SPHERE=2\n\
00129 uint8 CYLINDER=3\n\
00130 uint8 LINE_STRIP=4\n\
00131 uint8 LINE_LIST=5\n\
00132 uint8 CUBE_LIST=6\n\
00133 uint8 SPHERE_LIST=7\n\
00134 uint8 POINTS=8\n\
00135 uint8 TEXT_VIEW_FACING=9\n\
00136 uint8 MESH_RESOURCE=10\n\
00137 uint8 TRIANGLE_LIST=11\n\
00138 \n\
00139 uint8 ADD=0\n\
00140 uint8 MODIFY=0\n\
00141 uint8 DELETE=2\n\
00142 \n\
00143 Header header # header for time/frame information\n\
00144 string ns # Namespace to place this object in... used in conjunction with id to create a unique name for the object\n\
00145 int32 id # object ID useful in conjunction with the namespace for manipulating and deleting the object later\n\
00146 int32 type # Type of object\n\
00147 int32 action # 0 add/modify an object, 1 (deprecated), 2 deletes an object\n\
00148 geometry_msgs/Pose pose # Pose of the object\n\
00149 geometry_msgs/Vector3 scale # Scale of the object 1,1,1 means default (usually 1 meter square)\n\
00150 std_msgs/ColorRGBA color # Color [0.0-1.0]\n\
00151 duration lifetime # How long the object should last before being automatically deleted. 0 means forever\n\
00152 bool frame_locked # If this marker should be frame-locked, i.e. retransformed into its frame every timestep\n\
00153 \n\
00154 #Only used if the type specified has some use for them (eg. POINTS, LINE_STRIP, ...)\n\
00155 geometry_msgs/Point[] points\n\
00156 #Only used if the type specified has some use for them (eg. POINTS, LINE_STRIP, ...)\n\
00157 #number of colors must either be 0 or equal to the number of points\n\
00158 #NOTE: alpha is not yet used\n\
00159 std_msgs/ColorRGBA[] colors\n\
00160 \n\
00161 # NOTE: only used for text markers\n\
00162 string text\n\
00163 \n\
00164 # NOTE: only used for MESH_RESOURCE markers\n\
00165 string mesh_resource\n\
00166 bool mesh_use_embedded_materials\n\
00167 \n\
00168 ================================================================================\n\
00169 MSG: std_msgs/Header\n\
00170 # Standard metadata for higher-level stamped data types.\n\
00171 # This is generally used to communicate timestamped data \n\
00172 # in a particular coordinate frame.\n\
00173 # \n\
00174 # sequence ID: consecutively increasing ID \n\
00175 uint32 seq\n\
00176 #Two-integer timestamp that is expressed as:\n\
00177 # * stamp.secs: seconds (stamp_secs) since epoch\n\
00178 # * stamp.nsecs: nanoseconds since stamp_secs\n\
00179 # time-handling sugar is provided by the client library\n\
00180 time stamp\n\
00181 #Frame this data is associated with\n\
00182 # 0: no frame\n\
00183 # 1: global frame\n\
00184 string frame_id\n\
00185 \n\
00186 ================================================================================\n\
00187 MSG: geometry_msgs/Pose\n\
00188 # A representation of pose in free space, composed of postion and orientation. \n\
00189 Point position\n\
00190 Quaternion orientation\n\
00191 \n\
00192 ================================================================================\n\
00193 MSG: geometry_msgs/Point\n\
00194 # This contains the position of a point in free space\n\
00195 float64 x\n\
00196 float64 y\n\
00197 float64 z\n\
00198 \n\
00199 ================================================================================\n\
00200 MSG: geometry_msgs/Quaternion\n\
00201 # This represents an orientation in free space in quaternion form.\n\
00202 \n\
00203 float64 x\n\
00204 float64 y\n\
00205 float64 z\n\
00206 float64 w\n\
00207 \n\
00208 ================================================================================\n\
00209 MSG: geometry_msgs/Vector3\n\
00210 # This represents a vector in free space. \n\
00211 \n\
00212 float64 x\n\
00213 float64 y\n\
00214 float64 z\n\
00215 ================================================================================\n\
00216 MSG: std_msgs/ColorRGBA\n\
00217 float32 r\n\
00218 float32 g\n\
00219 float32 b\n\
00220 float32 a\n\
00221 \n\
00222 ";
00223 }
00224
00225 static const char* value(const ::hrl_clickable_world::DisplayButtonsRequest_<ContainerAllocator> &) { return value(); }
00226 };
00227
00228 }
00229 }
00230
00231
00232 namespace ros
00233 {
00234 namespace message_traits
00235 {
00236 template<class ContainerAllocator> struct IsMessage< ::hrl_clickable_world::DisplayButtonsResponse_<ContainerAllocator> > : public TrueType {};
00237 template<class ContainerAllocator> struct IsMessage< ::hrl_clickable_world::DisplayButtonsResponse_<ContainerAllocator> const> : public TrueType {};
00238 template<class ContainerAllocator>
00239 struct MD5Sum< ::hrl_clickable_world::DisplayButtonsResponse_<ContainerAllocator> > {
00240 static const char* value()
00241 {
00242 return "d41d8cd98f00b204e9800998ecf8427e";
00243 }
00244
00245 static const char* value(const ::hrl_clickable_world::DisplayButtonsResponse_<ContainerAllocator> &) { return value(); }
00246 static const uint64_t static_value1 = 0xd41d8cd98f00b204ULL;
00247 static const uint64_t static_value2 = 0xe9800998ecf8427eULL;
00248 };
00249
00250 template<class ContainerAllocator>
00251 struct DataType< ::hrl_clickable_world::DisplayButtonsResponse_<ContainerAllocator> > {
00252 static const char* value()
00253 {
00254 return "hrl_clickable_world/DisplayButtonsResponse";
00255 }
00256
00257 static const char* value(const ::hrl_clickable_world::DisplayButtonsResponse_<ContainerAllocator> &) { return value(); }
00258 };
00259
00260 template<class ContainerAllocator>
00261 struct Definition< ::hrl_clickable_world::DisplayButtonsResponse_<ContainerAllocator> > {
00262 static const char* value()
00263 {
00264 return "\n\
00265 \n\
00266 ";
00267 }
00268
00269 static const char* value(const ::hrl_clickable_world::DisplayButtonsResponse_<ContainerAllocator> &) { return value(); }
00270 };
00271
00272 template<class ContainerAllocator> struct IsFixedSize< ::hrl_clickable_world::DisplayButtonsResponse_<ContainerAllocator> > : public TrueType {};
00273 }
00274 }
00275
00276 namespace ros
00277 {
00278 namespace serialization
00279 {
00280
00281 template<class ContainerAllocator> struct Serializer< ::hrl_clickable_world::DisplayButtonsRequest_<ContainerAllocator> >
00282 {
00283 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00284 {
00285 stream.next(m.buttons);
00286 }
00287
00288 ROS_DECLARE_ALLINONE_SERIALIZER;
00289 };
00290 }
00291 }
00292
00293
00294 namespace ros
00295 {
00296 namespace serialization
00297 {
00298
00299 template<class ContainerAllocator> struct Serializer< ::hrl_clickable_world::DisplayButtonsResponse_<ContainerAllocator> >
00300 {
00301 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00302 {
00303 }
00304
00305 ROS_DECLARE_ALLINONE_SERIALIZER;
00306 };
00307 }
00308 }
00309
00310 namespace ros
00311 {
00312 namespace service_traits
00313 {
00314 template<>
00315 struct MD5Sum<hrl_clickable_world::DisplayButtons> {
00316 static const char* value()
00317 {
00318 return "751920a2717efc2ee0759ed5dd79d09d";
00319 }
00320
00321 static const char* value(const hrl_clickable_world::DisplayButtons&) { return value(); }
00322 };
00323
00324 template<>
00325 struct DataType<hrl_clickable_world::DisplayButtons> {
00326 static const char* value()
00327 {
00328 return "hrl_clickable_world/DisplayButtons";
00329 }
00330
00331 static const char* value(const hrl_clickable_world::DisplayButtons&) { return value(); }
00332 };
00333
00334 template<class ContainerAllocator>
00335 struct MD5Sum<hrl_clickable_world::DisplayButtonsRequest_<ContainerAllocator> > {
00336 static const char* value()
00337 {
00338 return "751920a2717efc2ee0759ed5dd79d09d";
00339 }
00340
00341 static const char* value(const hrl_clickable_world::DisplayButtonsRequest_<ContainerAllocator> &) { return value(); }
00342 };
00343
00344 template<class ContainerAllocator>
00345 struct DataType<hrl_clickable_world::DisplayButtonsRequest_<ContainerAllocator> > {
00346 static const char* value()
00347 {
00348 return "hrl_clickable_world/DisplayButtons";
00349 }
00350
00351 static const char* value(const hrl_clickable_world::DisplayButtonsRequest_<ContainerAllocator> &) { return value(); }
00352 };
00353
00354 template<class ContainerAllocator>
00355 struct MD5Sum<hrl_clickable_world::DisplayButtonsResponse_<ContainerAllocator> > {
00356 static const char* value()
00357 {
00358 return "751920a2717efc2ee0759ed5dd79d09d";
00359 }
00360
00361 static const char* value(const hrl_clickable_world::DisplayButtonsResponse_<ContainerAllocator> &) { return value(); }
00362 };
00363
00364 template<class ContainerAllocator>
00365 struct DataType<hrl_clickable_world::DisplayButtonsResponse_<ContainerAllocator> > {
00366 static const char* value()
00367 {
00368 return "hrl_clickable_world/DisplayButtons";
00369 }
00370
00371 static const char* value(const hrl_clickable_world::DisplayButtonsResponse_<ContainerAllocator> &) { return value(); }
00372 };
00373
00374 }
00375 }
00376
00377 #endif // HRL_CLICKABLE_WORLD_SERVICE_DISPLAYBUTTONS_H
00378