$search
00001 /* Auto-generated by genmsg_cpp for file /home/rosbuild/hudson/workspace/doc-electric-flirtlib_features/doc_stacks/2013-03-01_15-30-29.334793/flirtlib_features/flirtlib_ros/msg/InterestPointRos.msg */ 00002 #ifndef FLIRTLIB_ROS_MESSAGE_INTERESTPOINTROS_H 00003 #define FLIRTLIB_ROS_MESSAGE_INTERESTPOINTROS_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 "geometry_msgs/Pose2D.h" 00018 #include "geometry_msgs/Point.h" 00019 #include "flirtlib_ros/DescriptorRos.h" 00020 00021 namespace flirtlib_ros 00022 { 00023 template <class ContainerAllocator> 00024 struct InterestPointRos_ { 00025 typedef InterestPointRos_<ContainerAllocator> Type; 00026 00027 InterestPointRos_() 00028 : pose() 00029 , support_points() 00030 , scale(0.0) 00031 , scale_level(0) 00032 , descriptor() 00033 { 00034 } 00035 00036 InterestPointRos_(const ContainerAllocator& _alloc) 00037 : pose(_alloc) 00038 , support_points(_alloc) 00039 , scale(0.0) 00040 , scale_level(0) 00041 , descriptor(_alloc) 00042 { 00043 } 00044 00045 typedef ::geometry_msgs::Pose2D_<ContainerAllocator> _pose_type; 00046 ::geometry_msgs::Pose2D_<ContainerAllocator> pose; 00047 00048 typedef std::vector< ::geometry_msgs::Point_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::geometry_msgs::Point_<ContainerAllocator> >::other > _support_points_type; 00049 std::vector< ::geometry_msgs::Point_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::geometry_msgs::Point_<ContainerAllocator> >::other > support_points; 00050 00051 typedef float _scale_type; 00052 float scale; 00053 00054 typedef uint32_t _scale_level_type; 00055 uint32_t scale_level; 00056 00057 typedef ::flirtlib_ros::DescriptorRos_<ContainerAllocator> _descriptor_type; 00058 ::flirtlib_ros::DescriptorRos_<ContainerAllocator> descriptor; 00059 00060 00061 ROS_DEPRECATED uint32_t get_support_points_size() const { return (uint32_t)support_points.size(); } 00062 ROS_DEPRECATED void set_support_points_size(uint32_t size) { support_points.resize((size_t)size); } 00063 ROS_DEPRECATED void get_support_points_vec(std::vector< ::geometry_msgs::Point_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::geometry_msgs::Point_<ContainerAllocator> >::other > & vec) const { vec = this->support_points; } 00064 ROS_DEPRECATED void set_support_points_vec(const std::vector< ::geometry_msgs::Point_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::geometry_msgs::Point_<ContainerAllocator> >::other > & vec) { this->support_points = vec; } 00065 private: 00066 static const char* __s_getDataType_() { return "flirtlib_ros/InterestPointRos"; } 00067 public: 00068 ROS_DEPRECATED static const std::string __s_getDataType() { return __s_getDataType_(); } 00069 00070 ROS_DEPRECATED const std::string __getDataType() const { return __s_getDataType_(); } 00071 00072 private: 00073 static const char* __s_getMD5Sum_() { return "1246631fd365f90bb16bd48937597987"; } 00074 public: 00075 ROS_DEPRECATED static const std::string __s_getMD5Sum() { return __s_getMD5Sum_(); } 00076 00077 ROS_DEPRECATED const std::string __getMD5Sum() const { return __s_getMD5Sum_(); } 00078 00079 private: 00080 static const char* __s_getMessageDefinition_() { return "# Corresponds to the InterestPoint type in flirtlib\n\ 00081 # Includes both the point location and optionally a descriptor\n\ 00082 \n\ 00083 geometry_msgs/Pose2D pose\n\ 00084 \n\ 00085 geometry_msgs/Point[] support_points\n\ 00086 \n\ 00087 float32 scale\n\ 00088 \n\ 00089 uint32 scale_level\n\ 00090 \n\ 00091 DescriptorRos descriptor\n\ 00092 \n\ 00093 \n\ 00094 ================================================================================\n\ 00095 MSG: geometry_msgs/Pose2D\n\ 00096 # This expresses a position and orientation on a 2D manifold.\n\ 00097 \n\ 00098 float64 x\n\ 00099 float64 y\n\ 00100 float64 theta\n\ 00101 ================================================================================\n\ 00102 MSG: geometry_msgs/Point\n\ 00103 # This contains the position of a point in free space\n\ 00104 float64 x\n\ 00105 float64 y\n\ 00106 float64 z\n\ 00107 \n\ 00108 ================================================================================\n\ 00109 MSG: flirtlib_ros/DescriptorRos\n\ 00110 # Confirms to the Descriptor type in flirtlib\n\ 00111 # For now, we only allow the beta grid descriptor\n\ 00112 \n\ 00113 Vector[] hist\n\ 00114 Vector[] variance\n\ 00115 Vector[] hit\n\ 00116 Vector[] miss\n\ 00117 \n\ 00118 ================================================================================\n\ 00119 MSG: flirtlib_ros/Vector\n\ 00120 # Vector message type used by a bunch of the flirtlib messages\n\ 00121 \n\ 00122 float64[] vec\n\ 00123 "; } 00124 public: 00125 ROS_DEPRECATED static const std::string __s_getMessageDefinition() { return __s_getMessageDefinition_(); } 00126 00127 ROS_DEPRECATED const std::string __getMessageDefinition() const { return __s_getMessageDefinition_(); } 00128 00129 ROS_DEPRECATED virtual uint8_t *serialize(uint8_t *write_ptr, uint32_t seq) const 00130 { 00131 ros::serialization::OStream stream(write_ptr, 1000000000); 00132 ros::serialization::serialize(stream, pose); 00133 ros::serialization::serialize(stream, support_points); 00134 ros::serialization::serialize(stream, scale); 00135 ros::serialization::serialize(stream, scale_level); 00136 ros::serialization::serialize(stream, descriptor); 00137 return stream.getData(); 00138 } 00139 00140 ROS_DEPRECATED virtual uint8_t *deserialize(uint8_t *read_ptr) 00141 { 00142 ros::serialization::IStream stream(read_ptr, 1000000000); 00143 ros::serialization::deserialize(stream, pose); 00144 ros::serialization::deserialize(stream, support_points); 00145 ros::serialization::deserialize(stream, scale); 00146 ros::serialization::deserialize(stream, scale_level); 00147 ros::serialization::deserialize(stream, descriptor); 00148 return stream.getData(); 00149 } 00150 00151 ROS_DEPRECATED virtual uint32_t serializationLength() const 00152 { 00153 uint32_t size = 0; 00154 size += ros::serialization::serializationLength(pose); 00155 size += ros::serialization::serializationLength(support_points); 00156 size += ros::serialization::serializationLength(scale); 00157 size += ros::serialization::serializationLength(scale_level); 00158 size += ros::serialization::serializationLength(descriptor); 00159 return size; 00160 } 00161 00162 typedef boost::shared_ptr< ::flirtlib_ros::InterestPointRos_<ContainerAllocator> > Ptr; 00163 typedef boost::shared_ptr< ::flirtlib_ros::InterestPointRos_<ContainerAllocator> const> ConstPtr; 00164 boost::shared_ptr<std::map<std::string, std::string> > __connection_header; 00165 }; // struct InterestPointRos 00166 typedef ::flirtlib_ros::InterestPointRos_<std::allocator<void> > InterestPointRos; 00167 00168 typedef boost::shared_ptr< ::flirtlib_ros::InterestPointRos> InterestPointRosPtr; 00169 typedef boost::shared_ptr< ::flirtlib_ros::InterestPointRos const> InterestPointRosConstPtr; 00170 00171 00172 template<typename ContainerAllocator> 00173 std::ostream& operator<<(std::ostream& s, const ::flirtlib_ros::InterestPointRos_<ContainerAllocator> & v) 00174 { 00175 ros::message_operations::Printer< ::flirtlib_ros::InterestPointRos_<ContainerAllocator> >::stream(s, "", v); 00176 return s;} 00177 00178 } // namespace flirtlib_ros 00179 00180 namespace ros 00181 { 00182 namespace message_traits 00183 { 00184 template<class ContainerAllocator> struct IsMessage< ::flirtlib_ros::InterestPointRos_<ContainerAllocator> > : public TrueType {}; 00185 template<class ContainerAllocator> struct IsMessage< ::flirtlib_ros::InterestPointRos_<ContainerAllocator> const> : public TrueType {}; 00186 template<class ContainerAllocator> 00187 struct MD5Sum< ::flirtlib_ros::InterestPointRos_<ContainerAllocator> > { 00188 static const char* value() 00189 { 00190 return "1246631fd365f90bb16bd48937597987"; 00191 } 00192 00193 static const char* value(const ::flirtlib_ros::InterestPointRos_<ContainerAllocator> &) { return value(); } 00194 static const uint64_t static_value1 = 0x1246631fd365f90bULL; 00195 static const uint64_t static_value2 = 0xb16bd48937597987ULL; 00196 }; 00197 00198 template<class ContainerAllocator> 00199 struct DataType< ::flirtlib_ros::InterestPointRos_<ContainerAllocator> > { 00200 static const char* value() 00201 { 00202 return "flirtlib_ros/InterestPointRos"; 00203 } 00204 00205 static const char* value(const ::flirtlib_ros::InterestPointRos_<ContainerAllocator> &) { return value(); } 00206 }; 00207 00208 template<class ContainerAllocator> 00209 struct Definition< ::flirtlib_ros::InterestPointRos_<ContainerAllocator> > { 00210 static const char* value() 00211 { 00212 return "# Corresponds to the InterestPoint type in flirtlib\n\ 00213 # Includes both the point location and optionally a descriptor\n\ 00214 \n\ 00215 geometry_msgs/Pose2D pose\n\ 00216 \n\ 00217 geometry_msgs/Point[] support_points\n\ 00218 \n\ 00219 float32 scale\n\ 00220 \n\ 00221 uint32 scale_level\n\ 00222 \n\ 00223 DescriptorRos descriptor\n\ 00224 \n\ 00225 \n\ 00226 ================================================================================\n\ 00227 MSG: geometry_msgs/Pose2D\n\ 00228 # This expresses a position and orientation on a 2D manifold.\n\ 00229 \n\ 00230 float64 x\n\ 00231 float64 y\n\ 00232 float64 theta\n\ 00233 ================================================================================\n\ 00234 MSG: geometry_msgs/Point\n\ 00235 # This contains the position of a point in free space\n\ 00236 float64 x\n\ 00237 float64 y\n\ 00238 float64 z\n\ 00239 \n\ 00240 ================================================================================\n\ 00241 MSG: flirtlib_ros/DescriptorRos\n\ 00242 # Confirms to the Descriptor type in flirtlib\n\ 00243 # For now, we only allow the beta grid descriptor\n\ 00244 \n\ 00245 Vector[] hist\n\ 00246 Vector[] variance\n\ 00247 Vector[] hit\n\ 00248 Vector[] miss\n\ 00249 \n\ 00250 ================================================================================\n\ 00251 MSG: flirtlib_ros/Vector\n\ 00252 # Vector message type used by a bunch of the flirtlib messages\n\ 00253 \n\ 00254 float64[] vec\n\ 00255 "; 00256 } 00257 00258 static const char* value(const ::flirtlib_ros::InterestPointRos_<ContainerAllocator> &) { return value(); } 00259 }; 00260 00261 } // namespace message_traits 00262 } // namespace ros 00263 00264 namespace ros 00265 { 00266 namespace serialization 00267 { 00268 00269 template<class ContainerAllocator> struct Serializer< ::flirtlib_ros::InterestPointRos_<ContainerAllocator> > 00270 { 00271 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m) 00272 { 00273 stream.next(m.pose); 00274 stream.next(m.support_points); 00275 stream.next(m.scale); 00276 stream.next(m.scale_level); 00277 stream.next(m.descriptor); 00278 } 00279 00280 ROS_DECLARE_ALLINONE_SERIALIZER; 00281 }; // struct InterestPointRos_ 00282 } // namespace serialization 00283 } // namespace ros 00284 00285 namespace ros 00286 { 00287 namespace message_operations 00288 { 00289 00290 template<class ContainerAllocator> 00291 struct Printer< ::flirtlib_ros::InterestPointRos_<ContainerAllocator> > 00292 { 00293 template<typename Stream> static void stream(Stream& s, const std::string& indent, const ::flirtlib_ros::InterestPointRos_<ContainerAllocator> & v) 00294 { 00295 s << indent << "pose: "; 00296 s << std::endl; 00297 Printer< ::geometry_msgs::Pose2D_<ContainerAllocator> >::stream(s, indent + " ", v.pose); 00298 s << indent << "support_points[]" << std::endl; 00299 for (size_t i = 0; i < v.support_points.size(); ++i) 00300 { 00301 s << indent << " support_points[" << i << "]: "; 00302 s << std::endl; 00303 s << indent; 00304 Printer< ::geometry_msgs::Point_<ContainerAllocator> >::stream(s, indent + " ", v.support_points[i]); 00305 } 00306 s << indent << "scale: "; 00307 Printer<float>::stream(s, indent + " ", v.scale); 00308 s << indent << "scale_level: "; 00309 Printer<uint32_t>::stream(s, indent + " ", v.scale_level); 00310 s << indent << "descriptor: "; 00311 s << std::endl; 00312 Printer< ::flirtlib_ros::DescriptorRos_<ContainerAllocator> >::stream(s, indent + " ", v.descriptor); 00313 } 00314 }; 00315 00316 00317 } // namespace message_operations 00318 } // namespace ros 00319 00320 #endif // FLIRTLIB_ROS_MESSAGE_INTERESTPOINTROS_H 00321