Order.h
Go to the documentation of this file.
00001 /* Auto-generated by genmsg_cpp for file /home/rosbuild/hudson/workspace/doc-groovy-art_vehicle/doc_stacks/2013-09-24_10-35-44.297713/art_vehicle/art_msgs/msg/Order.msg */
00002 #ifndef ART_MSGS_MESSAGE_ORDER_H
00003 #define ART_MSGS_MESSAGE_ORDER_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 "art_msgs/Behavior.h"
00018 #include "art_msgs/WayPoint.h"
00019 #include "art_msgs/WayPoint.h"
00020 
00021 namespace art_msgs
00022 {
00023 template <class ContainerAllocator>
00024 struct Order_ {
00025   typedef Order_<ContainerAllocator> Type;
00026 
00027   Order_()
00028   : behavior()
00029   , waypt()
00030   , chkpt()
00031   , min_speed(0.0)
00032   , max_speed(0.0)
00033   , replan_num(0)
00034   , next_uturn(0)
00035   {
00036   }
00037 
00038   Order_(const ContainerAllocator& _alloc)
00039   : behavior(_alloc)
00040   , waypt()
00041   , chkpt()
00042   , min_speed(0.0)
00043   , max_speed(0.0)
00044   , replan_num(0)
00045   , next_uturn(0)
00046   {
00047     waypt.assign( ::art_msgs::WayPoint_<ContainerAllocator> (_alloc));
00048     chkpt.assign( ::art_msgs::WayPoint_<ContainerAllocator> (_alloc));
00049   }
00050 
00051   typedef  ::art_msgs::Behavior_<ContainerAllocator>  _behavior_type;
00052    ::art_msgs::Behavior_<ContainerAllocator>  behavior;
00053 
00054   typedef boost::array< ::art_msgs::WayPoint_<ContainerAllocator> , 5>  _waypt_type;
00055   boost::array< ::art_msgs::WayPoint_<ContainerAllocator> , 5>  waypt;
00056 
00057   typedef boost::array< ::art_msgs::WayPoint_<ContainerAllocator> , 2>  _chkpt_type;
00058   boost::array< ::art_msgs::WayPoint_<ContainerAllocator> , 2>  chkpt;
00059 
00060   typedef float _min_speed_type;
00061   float min_speed;
00062 
00063   typedef float _max_speed_type;
00064   float max_speed;
00065 
00066   typedef int32_t _replan_num_type;
00067   int32_t replan_num;
00068 
00069   typedef int32_t _next_uturn_type;
00070   int32_t next_uturn;
00071 
00072   enum { N_WAYPTS = 5 };
00073   enum { N_CHKPTS = 2 };
00074 
00075   typedef boost::shared_ptr< ::art_msgs::Order_<ContainerAllocator> > Ptr;
00076   typedef boost::shared_ptr< ::art_msgs::Order_<ContainerAllocator>  const> ConstPtr;
00077   boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00078 }; // struct Order
00079 typedef  ::art_msgs::Order_<std::allocator<void> > Order;
00080 
00081 typedef boost::shared_ptr< ::art_msgs::Order> OrderPtr;
00082 typedef boost::shared_ptr< ::art_msgs::Order const> OrderConstPtr;
00083 
00084 
00085 template<typename ContainerAllocator>
00086 std::ostream& operator<<(std::ostream& s, const  ::art_msgs::Order_<ContainerAllocator> & v)
00087 {
00088   ros::message_operations::Printer< ::art_msgs::Order_<ContainerAllocator> >::stream(s, "", v);
00089   return s;}
00090 
00091 } // namespace art_msgs
00092 
00093 namespace ros
00094 {
00095 namespace message_traits
00096 {
00097 template<class ContainerAllocator> struct IsMessage< ::art_msgs::Order_<ContainerAllocator> > : public TrueType {};
00098 template<class ContainerAllocator> struct IsMessage< ::art_msgs::Order_<ContainerAllocator>  const> : public TrueType {};
00099 template<class ContainerAllocator>
00100 struct MD5Sum< ::art_msgs::Order_<ContainerAllocator> > {
00101   static const char* value() 
00102   {
00103     return "f43d538cba2d46c585cc23d97b9223b2";
00104   }
00105 
00106   static const char* value(const  ::art_msgs::Order_<ContainerAllocator> &) { return value(); } 
00107   static const uint64_t static_value1 = 0xf43d538cba2d46c5ULL;
00108   static const uint64_t static_value2 = 0x85cc23d97b9223b2ULL;
00109 };
00110 
00111 template<class ContainerAllocator>
00112 struct DataType< ::art_msgs::Order_<ContainerAllocator> > {
00113   static const char* value() 
00114   {
00115     return "art_msgs/Order";
00116   }
00117 
00118   static const char* value(const  ::art_msgs::Order_<ContainerAllocator> &) { return value(); } 
00119 };
00120 
00121 template<class ContainerAllocator>
00122 struct Definition< ::art_msgs::Order_<ContainerAllocator> > {
00123   static const char* value() 
00124   {
00125     return "# commander order for the navigator\n\
00126 # $Id: Order.msg 615 2010-09-24 16:07:50Z jack.oquin $\n\
00127 \n\
00128 uint32 N_WAYPTS = 5                     # number of way-points in order\n\
00129 uint32 N_CHKPTS = 2                     # number of checkpoints in order\n\
00130 \n\
00131 Behavior behavior                       # requested behavior\n\
00132 art_msgs/WayPoint[5] waypt              # way-point array\n\
00133 art_msgs/WayPoint[2] chkpt              # next two goal checkpoints\n\
00134 float32 min_speed                       # in meters/sec\n\
00135 float32 max_speed\n\
00136 int32 replan_num\n\
00137 int32 next_uturn                        # Uturn between [1] and [2]\n\
00138 \n\
00139 ================================================================================\n\
00140 MSG: art_msgs/Behavior\n\
00141 # ART Navigator behaviors (lower numbers have higher priority)\n\
00142 # $Id: Behavior.msg 996 2011-02-27 16:07:34Z jack.oquin $\n\
00143 \n\
00144 # enumerated behavior values\n\
00145 int16 Abort       = 0\n\
00146 int16 Quit        = 1\n\
00147 int16 Pause       = 2\n\
00148 int16 Run         = 3\n\
00149 int16 Suspend     = 4\n\
00150 int16 Initialize  = 5\n\
00151 int16 Go          = 6\n\
00152 int16 NONE        = 7\n\
00153 int16 N_behaviors = 8\n\
00154 \n\
00155 int16 value\n\
00156 \n\
00157 ================================================================================\n\
00158 MSG: art_msgs/WayPoint\n\
00159 # Way-point attributes\n\
00160 # $Id: WayPoint.msg 614 2010-09-24 15:08:46Z jack.oquin $\n\
00161 \n\
00162 float64 latitude                        # latitude in degrees\n\
00163 float64 longitude                       # longitude in degrees\n\
00164 geometry_msgs/Point32 mapxy             # MapXY position\n\
00165 MapID id                                # way-point ID\n\
00166 uint16 index                            # parser index of waypoint\n\
00167 \n\
00168 # way-point flags\n\
00169 bool is_entry                           # lane or zone exit point\n\
00170 bool is_exit                            # lane or zone entry point\n\
00171 bool is_goal                            # this is a goal checkpoint\n\
00172 bool is_lane_change                     # change lanes after here\n\
00173 bool is_spot                            # parking spot\n\
00174 bool is_stop                            # stop line here\n\
00175 bool is_perimeter                       # zone perimeter point\n\
00176 int32 checkpoint_id                     # checkpoint ID or zero\n\
00177 float32 lane_width\n\
00178 \n\
00179 ================================================================================\n\
00180 MSG: geometry_msgs/Point32\n\
00181 # This contains the position of a point in free space(with 32 bits of precision).\n\
00182 # It is recommeded to use Point wherever possible instead of Point32.  \n\
00183 # \n\
00184 # This recommendation is to promote interoperability.  \n\
00185 #\n\
00186 # This message is designed to take up less space when sending\n\
00187 # lots of points at once, as in the case of a PointCloud.  \n\
00188 \n\
00189 float32 x\n\
00190 float32 y\n\
00191 float32 z\n\
00192 ================================================================================\n\
00193 MSG: art_msgs/MapID\n\
00194 # Road map identifier for segments, lanes and way-points.\n\
00195 # $Id: MapID.msg 614 2010-09-24 15:08:46Z jack.oquin $\n\
00196 \n\
00197 uint16 NULL_ID = 65535\n\
00198 \n\
00199 uint16 seg      # segment ID\n\
00200 uint16 lane     # lane ID\n\
00201 uint16 pt       # way-point ID\n\
00202 \n\
00203 ";
00204   }
00205 
00206   static const char* value(const  ::art_msgs::Order_<ContainerAllocator> &) { return value(); } 
00207 };
00208 
00209 template<class ContainerAllocator> struct IsFixedSize< ::art_msgs::Order_<ContainerAllocator> > : public TrueType {};
00210 } // namespace message_traits
00211 } // namespace ros
00212 
00213 namespace ros
00214 {
00215 namespace serialization
00216 {
00217 
00218 template<class ContainerAllocator> struct Serializer< ::art_msgs::Order_<ContainerAllocator> >
00219 {
00220   template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00221   {
00222     stream.next(m.behavior);
00223     stream.next(m.waypt);
00224     stream.next(m.chkpt);
00225     stream.next(m.min_speed);
00226     stream.next(m.max_speed);
00227     stream.next(m.replan_num);
00228     stream.next(m.next_uturn);
00229   }
00230 
00231   ROS_DECLARE_ALLINONE_SERIALIZER;
00232 }; // struct Order_
00233 } // namespace serialization
00234 } // namespace ros
00235 
00236 namespace ros
00237 {
00238 namespace message_operations
00239 {
00240 
00241 template<class ContainerAllocator>
00242 struct Printer< ::art_msgs::Order_<ContainerAllocator> >
00243 {
00244   template<typename Stream> static void stream(Stream& s, const std::string& indent, const  ::art_msgs::Order_<ContainerAllocator> & v) 
00245   {
00246     s << indent << "behavior: ";
00247 s << std::endl;
00248     Printer< ::art_msgs::Behavior_<ContainerAllocator> >::stream(s, indent + "  ", v.behavior);
00249     s << indent << "waypt[]" << std::endl;
00250     for (size_t i = 0; i < v.waypt.size(); ++i)
00251     {
00252       s << indent << "  waypt[" << i << "]: ";
00253       s << std::endl;
00254       s << indent;
00255       Printer< ::art_msgs::WayPoint_<ContainerAllocator> >::stream(s, indent + "    ", v.waypt[i]);
00256     }
00257     s << indent << "chkpt[]" << std::endl;
00258     for (size_t i = 0; i < v.chkpt.size(); ++i)
00259     {
00260       s << indent << "  chkpt[" << i << "]: ";
00261       s << std::endl;
00262       s << indent;
00263       Printer< ::art_msgs::WayPoint_<ContainerAllocator> >::stream(s, indent + "    ", v.chkpt[i]);
00264     }
00265     s << indent << "min_speed: ";
00266     Printer<float>::stream(s, indent + "  ", v.min_speed);
00267     s << indent << "max_speed: ";
00268     Printer<float>::stream(s, indent + "  ", v.max_speed);
00269     s << indent << "replan_num: ";
00270     Printer<int32_t>::stream(s, indent + "  ", v.replan_num);
00271     s << indent << "next_uturn: ";
00272     Printer<int32_t>::stream(s, indent + "  ", v.next_uturn);
00273   }
00274 };
00275 
00276 
00277 } // namespace message_operations
00278 } // namespace ros
00279 
00280 #endif // ART_MSGS_MESSAGE_ORDER_H
00281 
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends


art_msgs
Author(s): Jack O'Quin
autogenerated on Tue Sep 24 2013 10:40:45