$search
00001 /* Auto-generated by genmsg_cpp for file /home/rosbuild/hudson/workspace/doc-electric-rosserial/doc_stacks/2013-03-02_13-24-08.697680/rosserial/rosserial_msgs/msg/TopicInfo.msg */ 00002 #ifndef ROSSERIAL_MSGS_MESSAGE_TOPICINFO_H 00003 #define ROSSERIAL_MSGS_MESSAGE_TOPICINFO_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 00018 namespace rosserial_msgs 00019 { 00020 template <class ContainerAllocator> 00021 struct TopicInfo_ { 00022 typedef TopicInfo_<ContainerAllocator> Type; 00023 00024 TopicInfo_() 00025 : topic_id(0) 00026 , topic_name() 00027 , message_type() 00028 , md5sum() 00029 , buffer_size(0) 00030 { 00031 } 00032 00033 TopicInfo_(const ContainerAllocator& _alloc) 00034 : topic_id(0) 00035 , topic_name(_alloc) 00036 , message_type(_alloc) 00037 , md5sum(_alloc) 00038 , buffer_size(0) 00039 { 00040 } 00041 00042 typedef uint16_t _topic_id_type; 00043 uint16_t topic_id; 00044 00045 typedef std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > _topic_name_type; 00046 std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > topic_name; 00047 00048 typedef std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > _message_type_type; 00049 std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > message_type; 00050 00051 typedef std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > _md5sum_type; 00052 std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > md5sum; 00053 00054 typedef int32_t _buffer_size_type; 00055 int32_t buffer_size; 00056 00057 enum { ID_PUBLISHER = 0 }; 00058 enum { ID_SUBSCRIBER = 1 }; 00059 enum { ID_SERVICE_SERVER = 2 }; 00060 enum { ID_SERVICE_CLIENT = 4 }; 00061 enum { ID_PARAMETER_REQUEST = 6 }; 00062 enum { ID_LOG = 7 }; 00063 enum { ID_TIME = 10 }; 00064 00065 private: 00066 static const char* __s_getDataType_() { return "rosserial_msgs/TopicInfo"; } 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 "63aa5e8f1bdd6f35c69fe1a1b9d28e9f"; } 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 "# special topic_ids\n\ 00081 uint16 ID_PUBLISHER=0\n\ 00082 uint16 ID_SUBSCRIBER=1\n\ 00083 uint16 ID_SERVICE_SERVER=2\n\ 00084 uint16 ID_SERVICE_CLIENT=4\n\ 00085 uint16 ID_PARAMETER_REQUEST=6\n\ 00086 uint16 ID_LOG=7\n\ 00087 uint16 ID_TIME=10\n\ 00088 \n\ 00089 # The endpoint ID for this topic\n\ 00090 uint16 topic_id\n\ 00091 \n\ 00092 string topic_name\n\ 00093 string message_type\n\ 00094 \n\ 00095 # MD5 checksum for this message type\n\ 00096 string md5sum\n\ 00097 \n\ 00098 # size of the buffer message must fit in\n\ 00099 int32 buffer_size\n\ 00100 \n\ 00101 "; } 00102 public: 00103 ROS_DEPRECATED static const std::string __s_getMessageDefinition() { return __s_getMessageDefinition_(); } 00104 00105 ROS_DEPRECATED const std::string __getMessageDefinition() const { return __s_getMessageDefinition_(); } 00106 00107 ROS_DEPRECATED virtual uint8_t *serialize(uint8_t *write_ptr, uint32_t seq) const 00108 { 00109 ros::serialization::OStream stream(write_ptr, 1000000000); 00110 ros::serialization::serialize(stream, topic_id); 00111 ros::serialization::serialize(stream, topic_name); 00112 ros::serialization::serialize(stream, message_type); 00113 ros::serialization::serialize(stream, md5sum); 00114 ros::serialization::serialize(stream, buffer_size); 00115 return stream.getData(); 00116 } 00117 00118 ROS_DEPRECATED virtual uint8_t *deserialize(uint8_t *read_ptr) 00119 { 00120 ros::serialization::IStream stream(read_ptr, 1000000000); 00121 ros::serialization::deserialize(stream, topic_id); 00122 ros::serialization::deserialize(stream, topic_name); 00123 ros::serialization::deserialize(stream, message_type); 00124 ros::serialization::deserialize(stream, md5sum); 00125 ros::serialization::deserialize(stream, buffer_size); 00126 return stream.getData(); 00127 } 00128 00129 ROS_DEPRECATED virtual uint32_t serializationLength() const 00130 { 00131 uint32_t size = 0; 00132 size += ros::serialization::serializationLength(topic_id); 00133 size += ros::serialization::serializationLength(topic_name); 00134 size += ros::serialization::serializationLength(message_type); 00135 size += ros::serialization::serializationLength(md5sum); 00136 size += ros::serialization::serializationLength(buffer_size); 00137 return size; 00138 } 00139 00140 typedef boost::shared_ptr< ::rosserial_msgs::TopicInfo_<ContainerAllocator> > Ptr; 00141 typedef boost::shared_ptr< ::rosserial_msgs::TopicInfo_<ContainerAllocator> const> ConstPtr; 00142 boost::shared_ptr<std::map<std::string, std::string> > __connection_header; 00143 }; // struct TopicInfo 00144 typedef ::rosserial_msgs::TopicInfo_<std::allocator<void> > TopicInfo; 00145 00146 typedef boost::shared_ptr< ::rosserial_msgs::TopicInfo> TopicInfoPtr; 00147 typedef boost::shared_ptr< ::rosserial_msgs::TopicInfo const> TopicInfoConstPtr; 00148 00149 00150 template<typename ContainerAllocator> 00151 std::ostream& operator<<(std::ostream& s, const ::rosserial_msgs::TopicInfo_<ContainerAllocator> & v) 00152 { 00153 ros::message_operations::Printer< ::rosserial_msgs::TopicInfo_<ContainerAllocator> >::stream(s, "", v); 00154 return s;} 00155 00156 } // namespace rosserial_msgs 00157 00158 namespace ros 00159 { 00160 namespace message_traits 00161 { 00162 template<class ContainerAllocator> struct IsMessage< ::rosserial_msgs::TopicInfo_<ContainerAllocator> > : public TrueType {}; 00163 template<class ContainerAllocator> struct IsMessage< ::rosserial_msgs::TopicInfo_<ContainerAllocator> const> : public TrueType {}; 00164 template<class ContainerAllocator> 00165 struct MD5Sum< ::rosserial_msgs::TopicInfo_<ContainerAllocator> > { 00166 static const char* value() 00167 { 00168 return "63aa5e8f1bdd6f35c69fe1a1b9d28e9f"; 00169 } 00170 00171 static const char* value(const ::rosserial_msgs::TopicInfo_<ContainerAllocator> &) { return value(); } 00172 static const uint64_t static_value1 = 0x63aa5e8f1bdd6f35ULL; 00173 static const uint64_t static_value2 = 0xc69fe1a1b9d28e9fULL; 00174 }; 00175 00176 template<class ContainerAllocator> 00177 struct DataType< ::rosserial_msgs::TopicInfo_<ContainerAllocator> > { 00178 static const char* value() 00179 { 00180 return "rosserial_msgs/TopicInfo"; 00181 } 00182 00183 static const char* value(const ::rosserial_msgs::TopicInfo_<ContainerAllocator> &) { return value(); } 00184 }; 00185 00186 template<class ContainerAllocator> 00187 struct Definition< ::rosserial_msgs::TopicInfo_<ContainerAllocator> > { 00188 static const char* value() 00189 { 00190 return "# special topic_ids\n\ 00191 uint16 ID_PUBLISHER=0\n\ 00192 uint16 ID_SUBSCRIBER=1\n\ 00193 uint16 ID_SERVICE_SERVER=2\n\ 00194 uint16 ID_SERVICE_CLIENT=4\n\ 00195 uint16 ID_PARAMETER_REQUEST=6\n\ 00196 uint16 ID_LOG=7\n\ 00197 uint16 ID_TIME=10\n\ 00198 \n\ 00199 # The endpoint ID for this topic\n\ 00200 uint16 topic_id\n\ 00201 \n\ 00202 string topic_name\n\ 00203 string message_type\n\ 00204 \n\ 00205 # MD5 checksum for this message type\n\ 00206 string md5sum\n\ 00207 \n\ 00208 # size of the buffer message must fit in\n\ 00209 int32 buffer_size\n\ 00210 \n\ 00211 "; 00212 } 00213 00214 static const char* value(const ::rosserial_msgs::TopicInfo_<ContainerAllocator> &) { return value(); } 00215 }; 00216 00217 } // namespace message_traits 00218 } // namespace ros 00219 00220 namespace ros 00221 { 00222 namespace serialization 00223 { 00224 00225 template<class ContainerAllocator> struct Serializer< ::rosserial_msgs::TopicInfo_<ContainerAllocator> > 00226 { 00227 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m) 00228 { 00229 stream.next(m.topic_id); 00230 stream.next(m.topic_name); 00231 stream.next(m.message_type); 00232 stream.next(m.md5sum); 00233 stream.next(m.buffer_size); 00234 } 00235 00236 ROS_DECLARE_ALLINONE_SERIALIZER; 00237 }; // struct TopicInfo_ 00238 } // namespace serialization 00239 } // namespace ros 00240 00241 namespace ros 00242 { 00243 namespace message_operations 00244 { 00245 00246 template<class ContainerAllocator> 00247 struct Printer< ::rosserial_msgs::TopicInfo_<ContainerAllocator> > 00248 { 00249 template<typename Stream> static void stream(Stream& s, const std::string& indent, const ::rosserial_msgs::TopicInfo_<ContainerAllocator> & v) 00250 { 00251 s << indent << "topic_id: "; 00252 Printer<uint16_t>::stream(s, indent + " ", v.topic_id); 00253 s << indent << "topic_name: "; 00254 Printer<std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > >::stream(s, indent + " ", v.topic_name); 00255 s << indent << "message_type: "; 00256 Printer<std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > >::stream(s, indent + " ", v.message_type); 00257 s << indent << "md5sum: "; 00258 Printer<std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > >::stream(s, indent + " ", v.md5sum); 00259 s << indent << "buffer_size: "; 00260 Printer<int32_t>::stream(s, indent + " ", v.buffer_size); 00261 } 00262 }; 00263 00264 00265 } // namespace message_operations 00266 } // namespace ros 00267 00268 #endif // ROSSERIAL_MSGS_MESSAGE_TOPICINFO_H 00269