00001
00002 #ifndef VISION_MSGS_MESSAGE_APOSTERIORI_POSITION_H
00003 #define VISION_MSGS_MESSAGE_APOSTERIORI_POSITION_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 "vision_msgs/cop_descriptor.h"
00014
00015 namespace vision_msgs
00016 {
00017 template <class ContainerAllocator>
00018 struct aposteriori_position_ : public ros::Message
00019 {
00020 typedef aposteriori_position_<ContainerAllocator> Type;
00021
00022 aposteriori_position_()
00023 : objectId(0)
00024 , probability(0.0)
00025 , position(0)
00026 , models()
00027 {
00028 }
00029
00030 aposteriori_position_(const ContainerAllocator& _alloc)
00031 : objectId(0)
00032 , probability(0.0)
00033 , position(0)
00034 , models(_alloc)
00035 {
00036 }
00037
00038 typedef uint64_t _objectId_type;
00039 uint64_t objectId;
00040
00041 typedef double _probability_type;
00042 double probability;
00043
00044 typedef uint64_t _position_type;
00045 uint64_t position;
00046
00047 typedef std::vector< ::vision_msgs::cop_descriptor_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::vision_msgs::cop_descriptor_<ContainerAllocator> >::other > _models_type;
00048 std::vector< ::vision_msgs::cop_descriptor_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::vision_msgs::cop_descriptor_<ContainerAllocator> >::other > models;
00049
00050
00051 ROS_DEPRECATED uint32_t get_models_size() const { return (uint32_t)models.size(); }
00052 ROS_DEPRECATED void set_models_size(uint32_t size) { models.resize((size_t)size); }
00053 ROS_DEPRECATED void get_models_vec(std::vector< ::vision_msgs::cop_descriptor_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::vision_msgs::cop_descriptor_<ContainerAllocator> >::other > & vec) const { vec = this->models; }
00054 ROS_DEPRECATED void set_models_vec(const std::vector< ::vision_msgs::cop_descriptor_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::vision_msgs::cop_descriptor_<ContainerAllocator> >::other > & vec) { this->models = vec; }
00055 private:
00056 static const char* __s_getDataType_() { return "vision_msgs/aposteriori_position"; }
00057 public:
00058 ROS_DEPRECATED static const std::string __s_getDataType() { return __s_getDataType_(); }
00059
00060 ROS_DEPRECATED const std::string __getDataType() const { return __s_getDataType_(); }
00061
00062 private:
00063 static const char* __s_getMD5Sum_() { return "37ac3556838265f37bdeb19748c025fb"; }
00064 public:
00065 ROS_DEPRECATED static const std::string __s_getMD5Sum() { return __s_getMD5Sum_(); }
00066
00067 ROS_DEPRECATED const std::string __getMD5Sum() const { return __s_getMD5Sum_(); }
00068
00069 private:
00070 static const char* __s_getMessageDefinition_() { return "#objects a posteriori position, U. Klank klank@in.tum.de\n\
00071 uint64 objectId #id of an cop object\n\
00072 float64 probability #approximated a posteriori probability of the object beeing at the position\n\
00073 uint64 position #lo id of an position\n\
00074 cop_descriptor[] models #list of all models assigned to the returned object\n\
00075 ================================================================================\n\
00076 MSG: vision_msgs/cop_descriptor\n\
00077 #Descriptors of models used in cop, U. Klank klank@in.tum.de\n\
00078 uint64 object_id # unique id that could be used for a query\n\
00079 string sem_class # connected semantic concept\n\
00080 string type # Class name that was used to generate the corresponding cop descriptor plugin, \n\
00081 # example are: ShapeModel, ColorClass, DeformShapeModel\n\
00082 float64 quality # the current quality assinged to this descriptor\n\
00083 \n\
00084 \n\
00085 \n\
00086 \n\
00087 "; }
00088 public:
00089 ROS_DEPRECATED static const std::string __s_getMessageDefinition() { return __s_getMessageDefinition_(); }
00090
00091 ROS_DEPRECATED const std::string __getMessageDefinition() const { return __s_getMessageDefinition_(); }
00092
00093 ROS_DEPRECATED virtual uint8_t *serialize(uint8_t *write_ptr, uint32_t seq) const
00094 {
00095 ros::serialization::OStream stream(write_ptr, 1000000000);
00096 ros::serialization::serialize(stream, objectId);
00097 ros::serialization::serialize(stream, probability);
00098 ros::serialization::serialize(stream, position);
00099 ros::serialization::serialize(stream, models);
00100 return stream.getData();
00101 }
00102
00103 ROS_DEPRECATED virtual uint8_t *deserialize(uint8_t *read_ptr)
00104 {
00105 ros::serialization::IStream stream(read_ptr, 1000000000);
00106 ros::serialization::deserialize(stream, objectId);
00107 ros::serialization::deserialize(stream, probability);
00108 ros::serialization::deserialize(stream, position);
00109 ros::serialization::deserialize(stream, models);
00110 return stream.getData();
00111 }
00112
00113 ROS_DEPRECATED virtual uint32_t serializationLength() const
00114 {
00115 uint32_t size = 0;
00116 size += ros::serialization::serializationLength(objectId);
00117 size += ros::serialization::serializationLength(probability);
00118 size += ros::serialization::serializationLength(position);
00119 size += ros::serialization::serializationLength(models);
00120 return size;
00121 }
00122
00123 typedef boost::shared_ptr< ::vision_msgs::aposteriori_position_<ContainerAllocator> > Ptr;
00124 typedef boost::shared_ptr< ::vision_msgs::aposteriori_position_<ContainerAllocator> const> ConstPtr;
00125 };
00126 typedef ::vision_msgs::aposteriori_position_<std::allocator<void> > aposteriori_position;
00127
00128 typedef boost::shared_ptr< ::vision_msgs::aposteriori_position> aposteriori_positionPtr;
00129 typedef boost::shared_ptr< ::vision_msgs::aposteriori_position const> aposteriori_positionConstPtr;
00130
00131
00132 template<typename ContainerAllocator>
00133 std::ostream& operator<<(std::ostream& s, const ::vision_msgs::aposteriori_position_<ContainerAllocator> & v)
00134 {
00135 ros::message_operations::Printer< ::vision_msgs::aposteriori_position_<ContainerAllocator> >::stream(s, "", v);
00136 return s;}
00137
00138 }
00139
00140 namespace ros
00141 {
00142 namespace message_traits
00143 {
00144 template<class ContainerAllocator>
00145 struct MD5Sum< ::vision_msgs::aposteriori_position_<ContainerAllocator> > {
00146 static const char* value()
00147 {
00148 return "37ac3556838265f37bdeb19748c025fb";
00149 }
00150
00151 static const char* value(const ::vision_msgs::aposteriori_position_<ContainerAllocator> &) { return value(); }
00152 static const uint64_t static_value1 = 0x37ac3556838265f3ULL;
00153 static const uint64_t static_value2 = 0x7bdeb19748c025fbULL;
00154 };
00155
00156 template<class ContainerAllocator>
00157 struct DataType< ::vision_msgs::aposteriori_position_<ContainerAllocator> > {
00158 static const char* value()
00159 {
00160 return "vision_msgs/aposteriori_position";
00161 }
00162
00163 static const char* value(const ::vision_msgs::aposteriori_position_<ContainerAllocator> &) { return value(); }
00164 };
00165
00166 template<class ContainerAllocator>
00167 struct Definition< ::vision_msgs::aposteriori_position_<ContainerAllocator> > {
00168 static const char* value()
00169 {
00170 return "#objects a posteriori position, U. Klank klank@in.tum.de\n\
00171 uint64 objectId #id of an cop object\n\
00172 float64 probability #approximated a posteriori probability of the object beeing at the position\n\
00173 uint64 position #lo id of an position\n\
00174 cop_descriptor[] models #list of all models assigned to the returned object\n\
00175 ================================================================================\n\
00176 MSG: vision_msgs/cop_descriptor\n\
00177 #Descriptors of models used in cop, U. Klank klank@in.tum.de\n\
00178 uint64 object_id # unique id that could be used for a query\n\
00179 string sem_class # connected semantic concept\n\
00180 string type # Class name that was used to generate the corresponding cop descriptor plugin, \n\
00181 # example are: ShapeModel, ColorClass, DeformShapeModel\n\
00182 float64 quality # the current quality assinged to this descriptor\n\
00183 \n\
00184 \n\
00185 \n\
00186 \n\
00187 ";
00188 }
00189
00190 static const char* value(const ::vision_msgs::aposteriori_position_<ContainerAllocator> &) { return value(); }
00191 };
00192
00193 }
00194 }
00195
00196 namespace ros
00197 {
00198 namespace serialization
00199 {
00200
00201 template<class ContainerAllocator> struct Serializer< ::vision_msgs::aposteriori_position_<ContainerAllocator> >
00202 {
00203 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00204 {
00205 stream.next(m.objectId);
00206 stream.next(m.probability);
00207 stream.next(m.position);
00208 stream.next(m.models);
00209 }
00210
00211 ROS_DECLARE_ALLINONE_SERIALIZER;
00212 };
00213 }
00214 }
00215
00216 namespace ros
00217 {
00218 namespace message_operations
00219 {
00220
00221 template<class ContainerAllocator>
00222 struct Printer< ::vision_msgs::aposteriori_position_<ContainerAllocator> >
00223 {
00224 template<typename Stream> static void stream(Stream& s, const std::string& indent, const ::vision_msgs::aposteriori_position_<ContainerAllocator> & v)
00225 {
00226 s << indent << "objectId: ";
00227 Printer<uint64_t>::stream(s, indent + " ", v.objectId);
00228 s << indent << "probability: ";
00229 Printer<double>::stream(s, indent + " ", v.probability);
00230 s << indent << "position: ";
00231 Printer<uint64_t>::stream(s, indent + " ", v.position);
00232 s << indent << "models[]" << std::endl;
00233 for (size_t i = 0; i < v.models.size(); ++i)
00234 {
00235 s << indent << " models[" << i << "]: ";
00236 s << std::endl;
00237 s << indent;
00238 Printer< ::vision_msgs::cop_descriptor_<ContainerAllocator> >::stream(s, indent + " ", v.models[i]);
00239 }
00240 }
00241 };
00242
00243
00244 }
00245 }
00246
00247 #endif // VISION_MSGS_MESSAGE_APOSTERIORI_POSITION_H
00248