Tags.h
Go to the documentation of this file.
00001 /* Auto-generated by genmsg_cpp for file /home/rosbuild/hudson/workspace/doc-fuerte-all-iri-ros.pub/doc_stacks/2013-01-25_11-52-36.948265/kinton_robot/ar_recog/msg/Tags.msg */
00002 #ifndef AR_RECOG_MESSAGE_TAGS_H
00003 #define AR_RECOG_MESSAGE_TAGS_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 "std_msgs/Header.h"
00018 #include "ar_recog/Tag.h"
00019 
00020 namespace ar_recog
00021 {
00022 template <class ContainerAllocator>
00023 struct Tags_ {
00024   typedef Tags_<ContainerAllocator> Type;
00025 
00026   Tags_()
00027   : header()
00028   , image_width(0)
00029   , image_height(0)
00030   , angle_of_view(0.0)
00031   , tag_count(0)
00032   , tags()
00033   {
00034   }
00035 
00036   Tags_(const ContainerAllocator& _alloc)
00037   : header(_alloc)
00038   , image_width(0)
00039   , image_height(0)
00040   , angle_of_view(0.0)
00041   , tag_count(0)
00042   , tags(_alloc)
00043   {
00044   }
00045 
00046   typedef  ::std_msgs::Header_<ContainerAllocator>  _header_type;
00047    ::std_msgs::Header_<ContainerAllocator>  header;
00048 
00049   typedef uint32_t _image_width_type;
00050   uint32_t image_width;
00051 
00052   typedef uint32_t _image_height_type;
00053   uint32_t image_height;
00054 
00055   typedef double _angle_of_view_type;
00056   double angle_of_view;
00057 
00058   typedef uint32_t _tag_count_type;
00059   uint32_t tag_count;
00060 
00061   typedef std::vector< ::ar_recog::Tag_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::ar_recog::Tag_<ContainerAllocator> >::other >  _tags_type;
00062   std::vector< ::ar_recog::Tag_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::ar_recog::Tag_<ContainerAllocator> >::other >  tags;
00063 
00064 
00065   typedef boost::shared_ptr< ::ar_recog::Tags_<ContainerAllocator> > Ptr;
00066   typedef boost::shared_ptr< ::ar_recog::Tags_<ContainerAllocator>  const> ConstPtr;
00067   boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00068 }; // struct Tags
00069 typedef  ::ar_recog::Tags_<std::allocator<void> > Tags;
00070 
00071 typedef boost::shared_ptr< ::ar_recog::Tags> TagsPtr;
00072 typedef boost::shared_ptr< ::ar_recog::Tags const> TagsConstPtr;
00073 
00074 
00075 template<typename ContainerAllocator>
00076 std::ostream& operator<<(std::ostream& s, const  ::ar_recog::Tags_<ContainerAllocator> & v)
00077 {
00078   ros::message_operations::Printer< ::ar_recog::Tags_<ContainerAllocator> >::stream(s, "", v);
00079   return s;}
00080 
00081 } // namespace ar_recog
00082 
00083 namespace ros
00084 {
00085 namespace message_traits
00086 {
00087 template<class ContainerAllocator> struct IsMessage< ::ar_recog::Tags_<ContainerAllocator> > : public TrueType {};
00088 template<class ContainerAllocator> struct IsMessage< ::ar_recog::Tags_<ContainerAllocator>  const> : public TrueType {};
00089 template<class ContainerAllocator>
00090 struct MD5Sum< ::ar_recog::Tags_<ContainerAllocator> > {
00091   static const char* value() 
00092   {
00093     return "9fd9ccebe014b769dcb84bc4557ac837";
00094   }
00095 
00096   static const char* value(const  ::ar_recog::Tags_<ContainerAllocator> &) { return value(); } 
00097   static const uint64_t static_value1 = 0x9fd9ccebe014b769ULL;
00098   static const uint64_t static_value2 = 0xdcb84bc4557ac837ULL;
00099 };
00100 
00101 template<class ContainerAllocator>
00102 struct DataType< ::ar_recog::Tags_<ContainerAllocator> > {
00103   static const char* value() 
00104   {
00105     return "ar_recog/Tags";
00106   }
00107 
00108   static const char* value(const  ::ar_recog::Tags_<ContainerAllocator> &) { return value(); } 
00109 };
00110 
00111 template<class ContainerAllocator>
00112 struct Definition< ::ar_recog::Tags_<ContainerAllocator> > {
00113   static const char* value() 
00114   {
00115     return "Header header\n\
00116 uint32 image_width\n\
00117 uint32 image_height\n\
00118 float64 angle_of_view\n\
00119 uint32 tag_count\n\
00120 Tag[] tags\n\
00121 \n\
00122 ================================================================================\n\
00123 MSG: std_msgs/Header\n\
00124 # Standard metadata for higher-level stamped data types.\n\
00125 # This is generally used to communicate timestamped data \n\
00126 # in a particular coordinate frame.\n\
00127 # \n\
00128 # sequence ID: consecutively increasing ID \n\
00129 uint32 seq\n\
00130 #Two-integer timestamp that is expressed as:\n\
00131 # * stamp.secs: seconds (stamp_secs) since epoch\n\
00132 # * stamp.nsecs: nanoseconds since stamp_secs\n\
00133 # time-handling sugar is provided by the client library\n\
00134 time stamp\n\
00135 #Frame this data is associated with\n\
00136 # 0: no frame\n\
00137 # 1: global frame\n\
00138 string frame_id\n\
00139 \n\
00140 ================================================================================\n\
00141 MSG: ar_recog/Tag\n\
00142 # All screen measurements are in pixels, all spatial measurements are in meters.\n\
00143 # Angles in radians.\n\
00144 uint32 id\n\
00145 # This is a rating of confidence in the tag pattern identification 0 < cf < 1.\n\
00146 float64 cf\n\
00147 uint32 x\n\
00148 uint32 y\n\
00149 # The 'diameter' is the square root of the tag's actual area, as estimated by \n\
00150 # the AR software.  You can use it to check the cf confidence.\n\
00151 float64 diameter\n\
00152 # This is the estimated distance from viewer to the center of the tag.\n\
00153 float64 distance\n\
00154 float64 xRot \n\
00155 float64 yRot \n\
00156 float64 zRot\n\
00157 float64 xMetric\n\
00158 float64 yMetric\n\
00159 float64 zMetric\n\
00160 # Screen coordinates of the four corners.\n\
00161 float64[8] cwCorners\n\
00162 # FOR TESTING ONLY\n\
00163 # Uncommenting this and uncommenting the similarly-marked lines in \n\
00164 # ar_recog.cpp will put the ARToolkit rotation matrix into the Tag message,\n\
00165 # which can be useful for debugging and testing.\n\
00166 # float64[3] c3\n\
00167 # float64[3] t0\n\
00168 # float64[3] t1\n\
00169 # float64[3] t2\n\
00170 \n\
00171 ";
00172   }
00173 
00174   static const char* value(const  ::ar_recog::Tags_<ContainerAllocator> &) { return value(); } 
00175 };
00176 
00177 template<class ContainerAllocator> struct HasHeader< ::ar_recog::Tags_<ContainerAllocator> > : public TrueType {};
00178 template<class ContainerAllocator> struct HasHeader< const ::ar_recog::Tags_<ContainerAllocator> > : public TrueType {};
00179 } // namespace message_traits
00180 } // namespace ros
00181 
00182 namespace ros
00183 {
00184 namespace serialization
00185 {
00186 
00187 template<class ContainerAllocator> struct Serializer< ::ar_recog::Tags_<ContainerAllocator> >
00188 {
00189   template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00190   {
00191     stream.next(m.header);
00192     stream.next(m.image_width);
00193     stream.next(m.image_height);
00194     stream.next(m.angle_of_view);
00195     stream.next(m.tag_count);
00196     stream.next(m.tags);
00197   }
00198 
00199   ROS_DECLARE_ALLINONE_SERIALIZER;
00200 }; // struct Tags_
00201 } // namespace serialization
00202 } // namespace ros
00203 
00204 namespace ros
00205 {
00206 namespace message_operations
00207 {
00208 
00209 template<class ContainerAllocator>
00210 struct Printer< ::ar_recog::Tags_<ContainerAllocator> >
00211 {
00212   template<typename Stream> static void stream(Stream& s, const std::string& indent, const  ::ar_recog::Tags_<ContainerAllocator> & v) 
00213   {
00214     s << indent << "header: ";
00215 s << std::endl;
00216     Printer< ::std_msgs::Header_<ContainerAllocator> >::stream(s, indent + "  ", v.header);
00217     s << indent << "image_width: ";
00218     Printer<uint32_t>::stream(s, indent + "  ", v.image_width);
00219     s << indent << "image_height: ";
00220     Printer<uint32_t>::stream(s, indent + "  ", v.image_height);
00221     s << indent << "angle_of_view: ";
00222     Printer<double>::stream(s, indent + "  ", v.angle_of_view);
00223     s << indent << "tag_count: ";
00224     Printer<uint32_t>::stream(s, indent + "  ", v.tag_count);
00225     s << indent << "tags[]" << std::endl;
00226     for (size_t i = 0; i < v.tags.size(); ++i)
00227     {
00228       s << indent << "  tags[" << i << "]: ";
00229       s << std::endl;
00230       s << indent;
00231       Printer< ::ar_recog::Tag_<ContainerAllocator> >::stream(s, indent + "    ", v.tags[i]);
00232     }
00233   }
00234 };
00235 
00236 
00237 } // namespace message_operations
00238 } // namespace ros
00239 
00240 #endif // AR_RECOG_MESSAGE_TAGS_H
00241 
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines


ar_recog
Author(s): Graylin Trevor Jay and Christopher Crick
autogenerated on Fri Jan 25 2013 12:15:00