$search
00001 /* Auto-generated by genmsg_cpp for file /home/rosbuild/hudson/workspace/doc-electric-client_rosjava_jni/doc_stacks/2013-03-01_14-31-08.788202/client_rosjava_jni/test_rosjava_jni/msg/TestDataTypes.msg */ 00002 #ifndef TEST_ROSJAVA_JNI_MESSAGE_TESTDATATYPES_H 00003 #define TEST_ROSJAVA_JNI_MESSAGE_TESTDATATYPES_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/Byte.h" 00018 #include "std_msgs/Byte.h" 00019 #include "std_msgs/ByteMultiArray.h" 00020 #include "std_msgs/ByteMultiArray.h" 00021 00022 namespace test_rosjava_jni 00023 { 00024 template <class ContainerAllocator> 00025 struct TestDataTypes_ { 00026 typedef TestDataTypes_<ContainerAllocator> Type; 00027 00028 TestDataTypes_() 00029 : byte_(0) 00030 , char_(0) 00031 , uint8_(0) 00032 , int8_(0) 00033 , uint16_(0) 00034 , int16_(0) 00035 , uint32_(0) 00036 , int32_(0) 00037 , uint64_(0) 00038 , int64_(0) 00039 , float32_(0.0) 00040 , float64_(0.0) 00041 , string_() 00042 , time_() 00043 , duration_() 00044 , byte_v() 00045 , byte_f() 00046 , float64_v() 00047 , float64_f() 00048 , string_v() 00049 , string_f() 00050 , time_v() 00051 , time_f() 00052 , Byte_() 00053 , Byte_v() 00054 , ByteMultiArray_() 00055 , ByteMultiArray_v() 00056 { 00057 byte_f.assign(0); 00058 float64_f.assign(0.0); 00059 } 00060 00061 TestDataTypes_(const ContainerAllocator& _alloc) 00062 : byte_(0) 00063 , char_(0) 00064 , uint8_(0) 00065 , int8_(0) 00066 , uint16_(0) 00067 , int16_(0) 00068 , uint32_(0) 00069 , int32_(0) 00070 , uint64_(0) 00071 , int64_(0) 00072 , float32_(0.0) 00073 , float64_(0.0) 00074 , string_(_alloc) 00075 , time_() 00076 , duration_() 00077 , byte_v(_alloc) 00078 , byte_f() 00079 , float64_v(_alloc) 00080 , float64_f() 00081 , string_v(_alloc) 00082 , string_f() 00083 , time_v(_alloc) 00084 , time_f() 00085 , Byte_(_alloc) 00086 , Byte_v(_alloc) 00087 , ByteMultiArray_(_alloc) 00088 , ByteMultiArray_v(_alloc) 00089 { 00090 byte_f.assign(0); 00091 float64_f.assign(0.0); 00092 string_f.assign(std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > (_alloc)); 00093 } 00094 00095 typedef int8_t _byte__type; 00096 int8_t byte_; 00097 00098 typedef uint8_t _char__type; 00099 uint8_t char_; 00100 00101 typedef uint8_t _uint8__type; 00102 uint8_t uint8_; 00103 00104 typedef int8_t _int8__type; 00105 int8_t int8_; 00106 00107 typedef uint16_t _uint16__type; 00108 uint16_t uint16_; 00109 00110 typedef int16_t _int16__type; 00111 int16_t int16_; 00112 00113 typedef uint32_t _uint32__type; 00114 uint32_t uint32_; 00115 00116 typedef int32_t _int32__type; 00117 int32_t int32_; 00118 00119 typedef uint64_t _uint64__type; 00120 uint64_t uint64_; 00121 00122 typedef int64_t _int64__type; 00123 int64_t int64_; 00124 00125 typedef float _float32__type; 00126 float float32_; 00127 00128 typedef double _float64__type; 00129 double float64_; 00130 00131 typedef std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > _string__type; 00132 std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > string_; 00133 00134 typedef ros::Time _time__type; 00135 ros::Time time_; 00136 00137 typedef ros::Duration _duration__type; 00138 ros::Duration duration_; 00139 00140 typedef std::vector<int8_t, typename ContainerAllocator::template rebind<int8_t>::other > _byte_v_type; 00141 std::vector<int8_t, typename ContainerAllocator::template rebind<int8_t>::other > byte_v; 00142 00143 typedef boost::array<int8_t, 2> _byte_f_type; 00144 boost::array<int8_t, 2> byte_f; 00145 00146 typedef std::vector<double, typename ContainerAllocator::template rebind<double>::other > _float64_v_type; 00147 std::vector<double, typename ContainerAllocator::template rebind<double>::other > float64_v; 00148 00149 typedef boost::array<double, 2> _float64_f_type; 00150 boost::array<double, 2> float64_f; 00151 00152 typedef std::vector<std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > , typename ContainerAllocator::template rebind<std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > >::other > _string_v_type; 00153 std::vector<std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > , typename ContainerAllocator::template rebind<std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > >::other > string_v; 00154 00155 typedef boost::array<std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > , 2> _string_f_type; 00156 boost::array<std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > , 2> string_f; 00157 00158 typedef std::vector<ros::Time, typename ContainerAllocator::template rebind<ros::Time>::other > _time_v_type; 00159 std::vector<ros::Time, typename ContainerAllocator::template rebind<ros::Time>::other > time_v; 00160 00161 typedef boost::array<ros::Time, 2> _time_f_type; 00162 boost::array<ros::Time, 2> time_f; 00163 00164 typedef ::std_msgs::Byte_<ContainerAllocator> _Byte__type; 00165 ::std_msgs::Byte_<ContainerAllocator> Byte_; 00166 00167 typedef std::vector< ::std_msgs::Byte_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::std_msgs::Byte_<ContainerAllocator> >::other > _Byte_v_type; 00168 std::vector< ::std_msgs::Byte_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::std_msgs::Byte_<ContainerAllocator> >::other > Byte_v; 00169 00170 typedef ::std_msgs::ByteMultiArray_<ContainerAllocator> _ByteMultiArray__type; 00171 ::std_msgs::ByteMultiArray_<ContainerAllocator> ByteMultiArray_; 00172 00173 typedef std::vector< ::std_msgs::ByteMultiArray_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::std_msgs::ByteMultiArray_<ContainerAllocator> >::other > _ByteMultiArray_v_type; 00174 std::vector< ::std_msgs::ByteMultiArray_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::std_msgs::ByteMultiArray_<ContainerAllocator> >::other > ByteMultiArray_v; 00175 00176 00177 ROS_DEPRECATED uint32_t get_byte_v_size() const { return (uint32_t)byte_v.size(); } 00178 ROS_DEPRECATED void set_byte_v_size(uint32_t size) { byte_v.resize((size_t)size); } 00179 ROS_DEPRECATED void get_byte_v_vec(std::vector<int8_t, typename ContainerAllocator::template rebind<int8_t>::other > & vec) const { vec = this->byte_v; } 00180 ROS_DEPRECATED void set_byte_v_vec(const std::vector<int8_t, typename ContainerAllocator::template rebind<int8_t>::other > & vec) { this->byte_v = vec; } 00181 ROS_DEPRECATED uint32_t get_byte_f_size() const { return (uint32_t)byte_f.size(); } 00182 ROS_DEPRECATED uint32_t get_float64_v_size() const { return (uint32_t)float64_v.size(); } 00183 ROS_DEPRECATED void set_float64_v_size(uint32_t size) { float64_v.resize((size_t)size); } 00184 ROS_DEPRECATED void get_float64_v_vec(std::vector<double, typename ContainerAllocator::template rebind<double>::other > & vec) const { vec = this->float64_v; } 00185 ROS_DEPRECATED void set_float64_v_vec(const std::vector<double, typename ContainerAllocator::template rebind<double>::other > & vec) { this->float64_v = vec; } 00186 ROS_DEPRECATED uint32_t get_float64_f_size() const { return (uint32_t)float64_f.size(); } 00187 ROS_DEPRECATED uint32_t get_string_v_size() const { return (uint32_t)string_v.size(); } 00188 ROS_DEPRECATED void set_string_v_size(uint32_t size) { string_v.resize((size_t)size); } 00189 ROS_DEPRECATED void get_string_v_vec(std::vector<std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > , typename ContainerAllocator::template rebind<std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > >::other > & vec) const { vec = this->string_v; } 00190 ROS_DEPRECATED void set_string_v_vec(const std::vector<std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > , typename ContainerAllocator::template rebind<std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > >::other > & vec) { this->string_v = vec; } 00191 ROS_DEPRECATED uint32_t get_string_f_size() const { return (uint32_t)string_f.size(); } 00192 ROS_DEPRECATED uint32_t get_time_v_size() const { return (uint32_t)time_v.size(); } 00193 ROS_DEPRECATED void set_time_v_size(uint32_t size) { time_v.resize((size_t)size); } 00194 ROS_DEPRECATED void get_time_v_vec(std::vector<ros::Time, typename ContainerAllocator::template rebind<ros::Time>::other > & vec) const { vec = this->time_v; } 00195 ROS_DEPRECATED void set_time_v_vec(const std::vector<ros::Time, typename ContainerAllocator::template rebind<ros::Time>::other > & vec) { this->time_v = vec; } 00196 ROS_DEPRECATED uint32_t get_time_f_size() const { return (uint32_t)time_f.size(); } 00197 ROS_DEPRECATED uint32_t get_Byte_v_size() const { return (uint32_t)Byte_v.size(); } 00198 ROS_DEPRECATED void set_Byte_v_size(uint32_t size) { Byte_v.resize((size_t)size); } 00199 ROS_DEPRECATED void get_Byte_v_vec(std::vector< ::std_msgs::Byte_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::std_msgs::Byte_<ContainerAllocator> >::other > & vec) const { vec = this->Byte_v; } 00200 ROS_DEPRECATED void set_Byte_v_vec(const std::vector< ::std_msgs::Byte_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::std_msgs::Byte_<ContainerAllocator> >::other > & vec) { this->Byte_v = vec; } 00201 ROS_DEPRECATED uint32_t get_ByteMultiArray_v_size() const { return (uint32_t)ByteMultiArray_v.size(); } 00202 ROS_DEPRECATED void set_ByteMultiArray_v_size(uint32_t size) { ByteMultiArray_v.resize((size_t)size); } 00203 ROS_DEPRECATED void get_ByteMultiArray_v_vec(std::vector< ::std_msgs::ByteMultiArray_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::std_msgs::ByteMultiArray_<ContainerAllocator> >::other > & vec) const { vec = this->ByteMultiArray_v; } 00204 ROS_DEPRECATED void set_ByteMultiArray_v_vec(const std::vector< ::std_msgs::ByteMultiArray_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::std_msgs::ByteMultiArray_<ContainerAllocator> >::other > & vec) { this->ByteMultiArray_v = vec; } 00205 private: 00206 static const char* __s_getDataType_() { return "test_rosjava_jni/TestDataTypes"; } 00207 public: 00208 ROS_DEPRECATED static const std::string __s_getDataType() { return __s_getDataType_(); } 00209 00210 ROS_DEPRECATED const std::string __getDataType() const { return __s_getDataType_(); } 00211 00212 private: 00213 static const char* __s_getMD5Sum_() { return "25bc379e8ef2913896f76e9ef8bedbdc"; } 00214 public: 00215 ROS_DEPRECATED static const std::string __s_getMD5Sum() { return __s_getMD5Sum_(); } 00216 00217 ROS_DEPRECATED const std::string __getMD5Sum() const { return __s_getMD5Sum_(); } 00218 00219 private: 00220 static const char* __s_getMessageDefinition_() { return "# Test all primitive types\n\ 00221 byte byte_\n\ 00222 char char_\n\ 00223 uint8 uint8_\n\ 00224 int8 int8_\n\ 00225 uint16 uint16_\n\ 00226 int16 int16_\n\ 00227 uint32 uint32_\n\ 00228 int32 int32_\n\ 00229 uint64 uint64_\n\ 00230 int64 int64_\n\ 00231 float32 float32_\n\ 00232 float64 float64_\n\ 00233 string string_\n\ 00234 time time_\n\ 00235 duration duration_\n\ 00236 \n\ 00237 # Test a smattering of array types\n\ 00238 byte[] byte_v\n\ 00239 byte[2] byte_f\n\ 00240 float64[] float64_v\n\ 00241 float64[2] float64_f\n\ 00242 string[] string_v\n\ 00243 string[2] string_f\n\ 00244 time[] time_v\n\ 00245 time[2] time_f\n\ 00246 \n\ 00247 # Test submsgs, including both fixed and var length\n\ 00248 std_msgs/Byte Byte_\n\ 00249 std_msgs/Byte[] Byte_v\n\ 00250 \n\ 00251 std_msgs/ByteMultiArray ByteMultiArray_\n\ 00252 std_msgs/ByteMultiArray[] ByteMultiArray_v\n\ 00253 \n\ 00254 # Unfortunately, can't test these because roscpp message generation\n\ 00255 # is broken. Hopefully rosjava works correctly ...\n\ 00256 # TODO: put these back in.\n\ 00257 \n\ 00258 # std_msgs/Byte[2] Byte_f\n\ 00259 # std_msgs/ByteMultiArray[2] ByteMultiArray_f\n\ 00260 \n\ 00261 ================================================================================\n\ 00262 MSG: std_msgs/Byte\n\ 00263 byte data\n\ 00264 \n\ 00265 ================================================================================\n\ 00266 MSG: std_msgs/ByteMultiArray\n\ 00267 # Please look at the MultiArrayLayout message definition for\n\ 00268 # documentation on all multiarrays.\n\ 00269 \n\ 00270 MultiArrayLayout layout # specification of data layout\n\ 00271 byte[] data # array of data\n\ 00272 \n\ 00273 \n\ 00274 ================================================================================\n\ 00275 MSG: std_msgs/MultiArrayLayout\n\ 00276 # The multiarray declares a generic multi-dimensional array of a\n\ 00277 # particular data type. Dimensions are ordered from outer most\n\ 00278 # to inner most.\n\ 00279 \n\ 00280 MultiArrayDimension[] dim # Array of dimension properties\n\ 00281 uint32 data_offset # padding bytes at front of data\n\ 00282 \n\ 00283 # Accessors should ALWAYS be written in terms of dimension stride\n\ 00284 # and specified outer-most dimension first.\n\ 00285 # \n\ 00286 # multiarray(i,j,k) = data[data_offset + dim_stride[1]*i + dim_stride[2]*j + k]\n\ 00287 #\n\ 00288 # A standard, 3-channel 640x480 image with interleaved color channels\n\ 00289 # would be specified as:\n\ 00290 #\n\ 00291 # dim[0].label = \"height\"\n\ 00292 # dim[0].size = 480\n\ 00293 # dim[0].stride = 3*640*480 = 921600 (note dim[0] stride is just size of image)\n\ 00294 # dim[1].label = \"width\"\n\ 00295 # dim[1].size = 640\n\ 00296 # dim[1].stride = 3*640 = 1920\n\ 00297 # dim[2].label = \"channel\"\n\ 00298 # dim[2].size = 3\n\ 00299 # dim[2].stride = 3\n\ 00300 #\n\ 00301 # multiarray(i,j,k) refers to the ith row, jth column, and kth channel.\n\ 00302 ================================================================================\n\ 00303 MSG: std_msgs/MultiArrayDimension\n\ 00304 string label # label of given dimension\n\ 00305 uint32 size # size of given dimension (in type units)\n\ 00306 uint32 stride # stride of given dimension\n\ 00307 "; } 00308 public: 00309 ROS_DEPRECATED static const std::string __s_getMessageDefinition() { return __s_getMessageDefinition_(); } 00310 00311 ROS_DEPRECATED const std::string __getMessageDefinition() const { return __s_getMessageDefinition_(); } 00312 00313 ROS_DEPRECATED virtual uint8_t *serialize(uint8_t *write_ptr, uint32_t seq) const 00314 { 00315 ros::serialization::OStream stream(write_ptr, 1000000000); 00316 ros::serialization::serialize(stream, byte_); 00317 ros::serialization::serialize(stream, char_); 00318 ros::serialization::serialize(stream, uint8_); 00319 ros::serialization::serialize(stream, int8_); 00320 ros::serialization::serialize(stream, uint16_); 00321 ros::serialization::serialize(stream, int16_); 00322 ros::serialization::serialize(stream, uint32_); 00323 ros::serialization::serialize(stream, int32_); 00324 ros::serialization::serialize(stream, uint64_); 00325 ros::serialization::serialize(stream, int64_); 00326 ros::serialization::serialize(stream, float32_); 00327 ros::serialization::serialize(stream, float64_); 00328 ros::serialization::serialize(stream, string_); 00329 ros::serialization::serialize(stream, time_); 00330 ros::serialization::serialize(stream, duration_); 00331 ros::serialization::serialize(stream, byte_v); 00332 ros::serialization::serialize(stream, byte_f); 00333 ros::serialization::serialize(stream, float64_v); 00334 ros::serialization::serialize(stream, float64_f); 00335 ros::serialization::serialize(stream, string_v); 00336 ros::serialization::serialize(stream, string_f); 00337 ros::serialization::serialize(stream, time_v); 00338 ros::serialization::serialize(stream, time_f); 00339 ros::serialization::serialize(stream, Byte_); 00340 ros::serialization::serialize(stream, Byte_v); 00341 ros::serialization::serialize(stream, ByteMultiArray_); 00342 ros::serialization::serialize(stream, ByteMultiArray_v); 00343 return stream.getData(); 00344 } 00345 00346 ROS_DEPRECATED virtual uint8_t *deserialize(uint8_t *read_ptr) 00347 { 00348 ros::serialization::IStream stream(read_ptr, 1000000000); 00349 ros::serialization::deserialize(stream, byte_); 00350 ros::serialization::deserialize(stream, char_); 00351 ros::serialization::deserialize(stream, uint8_); 00352 ros::serialization::deserialize(stream, int8_); 00353 ros::serialization::deserialize(stream, uint16_); 00354 ros::serialization::deserialize(stream, int16_); 00355 ros::serialization::deserialize(stream, uint32_); 00356 ros::serialization::deserialize(stream, int32_); 00357 ros::serialization::deserialize(stream, uint64_); 00358 ros::serialization::deserialize(stream, int64_); 00359 ros::serialization::deserialize(stream, float32_); 00360 ros::serialization::deserialize(stream, float64_); 00361 ros::serialization::deserialize(stream, string_); 00362 ros::serialization::deserialize(stream, time_); 00363 ros::serialization::deserialize(stream, duration_); 00364 ros::serialization::deserialize(stream, byte_v); 00365 ros::serialization::deserialize(stream, byte_f); 00366 ros::serialization::deserialize(stream, float64_v); 00367 ros::serialization::deserialize(stream, float64_f); 00368 ros::serialization::deserialize(stream, string_v); 00369 ros::serialization::deserialize(stream, string_f); 00370 ros::serialization::deserialize(stream, time_v); 00371 ros::serialization::deserialize(stream, time_f); 00372 ros::serialization::deserialize(stream, Byte_); 00373 ros::serialization::deserialize(stream, Byte_v); 00374 ros::serialization::deserialize(stream, ByteMultiArray_); 00375 ros::serialization::deserialize(stream, ByteMultiArray_v); 00376 return stream.getData(); 00377 } 00378 00379 ROS_DEPRECATED virtual uint32_t serializationLength() const 00380 { 00381 uint32_t size = 0; 00382 size += ros::serialization::serializationLength(byte_); 00383 size += ros::serialization::serializationLength(char_); 00384 size += ros::serialization::serializationLength(uint8_); 00385 size += ros::serialization::serializationLength(int8_); 00386 size += ros::serialization::serializationLength(uint16_); 00387 size += ros::serialization::serializationLength(int16_); 00388 size += ros::serialization::serializationLength(uint32_); 00389 size += ros::serialization::serializationLength(int32_); 00390 size += ros::serialization::serializationLength(uint64_); 00391 size += ros::serialization::serializationLength(int64_); 00392 size += ros::serialization::serializationLength(float32_); 00393 size += ros::serialization::serializationLength(float64_); 00394 size += ros::serialization::serializationLength(string_); 00395 size += ros::serialization::serializationLength(time_); 00396 size += ros::serialization::serializationLength(duration_); 00397 size += ros::serialization::serializationLength(byte_v); 00398 size += ros::serialization::serializationLength(byte_f); 00399 size += ros::serialization::serializationLength(float64_v); 00400 size += ros::serialization::serializationLength(float64_f); 00401 size += ros::serialization::serializationLength(string_v); 00402 size += ros::serialization::serializationLength(string_f); 00403 size += ros::serialization::serializationLength(time_v); 00404 size += ros::serialization::serializationLength(time_f); 00405 size += ros::serialization::serializationLength(Byte_); 00406 size += ros::serialization::serializationLength(Byte_v); 00407 size += ros::serialization::serializationLength(ByteMultiArray_); 00408 size += ros::serialization::serializationLength(ByteMultiArray_v); 00409 return size; 00410 } 00411 00412 typedef boost::shared_ptr< ::test_rosjava_jni::TestDataTypes_<ContainerAllocator> > Ptr; 00413 typedef boost::shared_ptr< ::test_rosjava_jni::TestDataTypes_<ContainerAllocator> const> ConstPtr; 00414 boost::shared_ptr<std::map<std::string, std::string> > __connection_header; 00415 }; // struct TestDataTypes 00416 typedef ::test_rosjava_jni::TestDataTypes_<std::allocator<void> > TestDataTypes; 00417 00418 typedef boost::shared_ptr< ::test_rosjava_jni::TestDataTypes> TestDataTypesPtr; 00419 typedef boost::shared_ptr< ::test_rosjava_jni::TestDataTypes const> TestDataTypesConstPtr; 00420 00421 00422 template<typename ContainerAllocator> 00423 std::ostream& operator<<(std::ostream& s, const ::test_rosjava_jni::TestDataTypes_<ContainerAllocator> & v) 00424 { 00425 ros::message_operations::Printer< ::test_rosjava_jni::TestDataTypes_<ContainerAllocator> >::stream(s, "", v); 00426 return s;} 00427 00428 } // namespace test_rosjava_jni 00429 00430 namespace ros 00431 { 00432 namespace message_traits 00433 { 00434 template<class ContainerAllocator> struct IsMessage< ::test_rosjava_jni::TestDataTypes_<ContainerAllocator> > : public TrueType {}; 00435 template<class ContainerAllocator> struct IsMessage< ::test_rosjava_jni::TestDataTypes_<ContainerAllocator> const> : public TrueType {}; 00436 template<class ContainerAllocator> 00437 struct MD5Sum< ::test_rosjava_jni::TestDataTypes_<ContainerAllocator> > { 00438 static const char* value() 00439 { 00440 return "25bc379e8ef2913896f76e9ef8bedbdc"; 00441 } 00442 00443 static const char* value(const ::test_rosjava_jni::TestDataTypes_<ContainerAllocator> &) { return value(); } 00444 static const uint64_t static_value1 = 0x25bc379e8ef29138ULL; 00445 static const uint64_t static_value2 = 0x96f76e9ef8bedbdcULL; 00446 }; 00447 00448 template<class ContainerAllocator> 00449 struct DataType< ::test_rosjava_jni::TestDataTypes_<ContainerAllocator> > { 00450 static const char* value() 00451 { 00452 return "test_rosjava_jni/TestDataTypes"; 00453 } 00454 00455 static const char* value(const ::test_rosjava_jni::TestDataTypes_<ContainerAllocator> &) { return value(); } 00456 }; 00457 00458 template<class ContainerAllocator> 00459 struct Definition< ::test_rosjava_jni::TestDataTypes_<ContainerAllocator> > { 00460 static const char* value() 00461 { 00462 return "# Test all primitive types\n\ 00463 byte byte_\n\ 00464 char char_\n\ 00465 uint8 uint8_\n\ 00466 int8 int8_\n\ 00467 uint16 uint16_\n\ 00468 int16 int16_\n\ 00469 uint32 uint32_\n\ 00470 int32 int32_\n\ 00471 uint64 uint64_\n\ 00472 int64 int64_\n\ 00473 float32 float32_\n\ 00474 float64 float64_\n\ 00475 string string_\n\ 00476 time time_\n\ 00477 duration duration_\n\ 00478 \n\ 00479 # Test a smattering of array types\n\ 00480 byte[] byte_v\n\ 00481 byte[2] byte_f\n\ 00482 float64[] float64_v\n\ 00483 float64[2] float64_f\n\ 00484 string[] string_v\n\ 00485 string[2] string_f\n\ 00486 time[] time_v\n\ 00487 time[2] time_f\n\ 00488 \n\ 00489 # Test submsgs, including both fixed and var length\n\ 00490 std_msgs/Byte Byte_\n\ 00491 std_msgs/Byte[] Byte_v\n\ 00492 \n\ 00493 std_msgs/ByteMultiArray ByteMultiArray_\n\ 00494 std_msgs/ByteMultiArray[] ByteMultiArray_v\n\ 00495 \n\ 00496 # Unfortunately, can't test these because roscpp message generation\n\ 00497 # is broken. Hopefully rosjava works correctly ...\n\ 00498 # TODO: put these back in.\n\ 00499 \n\ 00500 # std_msgs/Byte[2] Byte_f\n\ 00501 # std_msgs/ByteMultiArray[2] ByteMultiArray_f\n\ 00502 \n\ 00503 ================================================================================\n\ 00504 MSG: std_msgs/Byte\n\ 00505 byte data\n\ 00506 \n\ 00507 ================================================================================\n\ 00508 MSG: std_msgs/ByteMultiArray\n\ 00509 # Please look at the MultiArrayLayout message definition for\n\ 00510 # documentation on all multiarrays.\n\ 00511 \n\ 00512 MultiArrayLayout layout # specification of data layout\n\ 00513 byte[] data # array of data\n\ 00514 \n\ 00515 \n\ 00516 ================================================================================\n\ 00517 MSG: std_msgs/MultiArrayLayout\n\ 00518 # The multiarray declares a generic multi-dimensional array of a\n\ 00519 # particular data type. Dimensions are ordered from outer most\n\ 00520 # to inner most.\n\ 00521 \n\ 00522 MultiArrayDimension[] dim # Array of dimension properties\n\ 00523 uint32 data_offset # padding bytes at front of data\n\ 00524 \n\ 00525 # Accessors should ALWAYS be written in terms of dimension stride\n\ 00526 # and specified outer-most dimension first.\n\ 00527 # \n\ 00528 # multiarray(i,j,k) = data[data_offset + dim_stride[1]*i + dim_stride[2]*j + k]\n\ 00529 #\n\ 00530 # A standard, 3-channel 640x480 image with interleaved color channels\n\ 00531 # would be specified as:\n\ 00532 #\n\ 00533 # dim[0].label = \"height\"\n\ 00534 # dim[0].size = 480\n\ 00535 # dim[0].stride = 3*640*480 = 921600 (note dim[0] stride is just size of image)\n\ 00536 # dim[1].label = \"width\"\n\ 00537 # dim[1].size = 640\n\ 00538 # dim[1].stride = 3*640 = 1920\n\ 00539 # dim[2].label = \"channel\"\n\ 00540 # dim[2].size = 3\n\ 00541 # dim[2].stride = 3\n\ 00542 #\n\ 00543 # multiarray(i,j,k) refers to the ith row, jth column, and kth channel.\n\ 00544 ================================================================================\n\ 00545 MSG: std_msgs/MultiArrayDimension\n\ 00546 string label # label of given dimension\n\ 00547 uint32 size # size of given dimension (in type units)\n\ 00548 uint32 stride # stride of given dimension\n\ 00549 "; 00550 } 00551 00552 static const char* value(const ::test_rosjava_jni::TestDataTypes_<ContainerAllocator> &) { return value(); } 00553 }; 00554 00555 } // namespace message_traits 00556 } // namespace ros 00557 00558 namespace ros 00559 { 00560 namespace serialization 00561 { 00562 00563 template<class ContainerAllocator> struct Serializer< ::test_rosjava_jni::TestDataTypes_<ContainerAllocator> > 00564 { 00565 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m) 00566 { 00567 stream.next(m.byte_); 00568 stream.next(m.char_); 00569 stream.next(m.uint8_); 00570 stream.next(m.int8_); 00571 stream.next(m.uint16_); 00572 stream.next(m.int16_); 00573 stream.next(m.uint32_); 00574 stream.next(m.int32_); 00575 stream.next(m.uint64_); 00576 stream.next(m.int64_); 00577 stream.next(m.float32_); 00578 stream.next(m.float64_); 00579 stream.next(m.string_); 00580 stream.next(m.time_); 00581 stream.next(m.duration_); 00582 stream.next(m.byte_v); 00583 stream.next(m.byte_f); 00584 stream.next(m.float64_v); 00585 stream.next(m.float64_f); 00586 stream.next(m.string_v); 00587 stream.next(m.string_f); 00588 stream.next(m.time_v); 00589 stream.next(m.time_f); 00590 stream.next(m.Byte_); 00591 stream.next(m.Byte_v); 00592 stream.next(m.ByteMultiArray_); 00593 stream.next(m.ByteMultiArray_v); 00594 } 00595 00596 ROS_DECLARE_ALLINONE_SERIALIZER; 00597 }; // struct TestDataTypes_ 00598 } // namespace serialization 00599 } // namespace ros 00600 00601 namespace ros 00602 { 00603 namespace message_operations 00604 { 00605 00606 template<class ContainerAllocator> 00607 struct Printer< ::test_rosjava_jni::TestDataTypes_<ContainerAllocator> > 00608 { 00609 template<typename Stream> static void stream(Stream& s, const std::string& indent, const ::test_rosjava_jni::TestDataTypes_<ContainerAllocator> & v) 00610 { 00611 s << indent << "byte_: "; 00612 Printer<int8_t>::stream(s, indent + " ", v.byte_); 00613 s << indent << "char_: "; 00614 Printer<uint8_t>::stream(s, indent + " ", v.char_); 00615 s << indent << "uint8_: "; 00616 Printer<uint8_t>::stream(s, indent + " ", v.uint8_); 00617 s << indent << "int8_: "; 00618 Printer<int8_t>::stream(s, indent + " ", v.int8_); 00619 s << indent << "uint16_: "; 00620 Printer<uint16_t>::stream(s, indent + " ", v.uint16_); 00621 s << indent << "int16_: "; 00622 Printer<int16_t>::stream(s, indent + " ", v.int16_); 00623 s << indent << "uint32_: "; 00624 Printer<uint32_t>::stream(s, indent + " ", v.uint32_); 00625 s << indent << "int32_: "; 00626 Printer<int32_t>::stream(s, indent + " ", v.int32_); 00627 s << indent << "uint64_: "; 00628 Printer<uint64_t>::stream(s, indent + " ", v.uint64_); 00629 s << indent << "int64_: "; 00630 Printer<int64_t>::stream(s, indent + " ", v.int64_); 00631 s << indent << "float32_: "; 00632 Printer<float>::stream(s, indent + " ", v.float32_); 00633 s << indent << "float64_: "; 00634 Printer<double>::stream(s, indent + " ", v.float64_); 00635 s << indent << "string_: "; 00636 Printer<std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > >::stream(s, indent + " ", v.string_); 00637 s << indent << "time_: "; 00638 Printer<ros::Time>::stream(s, indent + " ", v.time_); 00639 s << indent << "duration_: "; 00640 Printer<ros::Duration>::stream(s, indent + " ", v.duration_); 00641 s << indent << "byte_v[]" << std::endl; 00642 for (size_t i = 0; i < v.byte_v.size(); ++i) 00643 { 00644 s << indent << " byte_v[" << i << "]: "; 00645 Printer<int8_t>::stream(s, indent + " ", v.byte_v[i]); 00646 } 00647 s << indent << "byte_f[]" << std::endl; 00648 for (size_t i = 0; i < v.byte_f.size(); ++i) 00649 { 00650 s << indent << " byte_f[" << i << "]: "; 00651 Printer<int8_t>::stream(s, indent + " ", v.byte_f[i]); 00652 } 00653 s << indent << "float64_v[]" << std::endl; 00654 for (size_t i = 0; i < v.float64_v.size(); ++i) 00655 { 00656 s << indent << " float64_v[" << i << "]: "; 00657 Printer<double>::stream(s, indent + " ", v.float64_v[i]); 00658 } 00659 s << indent << "float64_f[]" << std::endl; 00660 for (size_t i = 0; i < v.float64_f.size(); ++i) 00661 { 00662 s << indent << " float64_f[" << i << "]: "; 00663 Printer<double>::stream(s, indent + " ", v.float64_f[i]); 00664 } 00665 s << indent << "string_v[]" << std::endl; 00666 for (size_t i = 0; i < v.string_v.size(); ++i) 00667 { 00668 s << indent << " string_v[" << i << "]: "; 00669 Printer<std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > >::stream(s, indent + " ", v.string_v[i]); 00670 } 00671 s << indent << "string_f[]" << std::endl; 00672 for (size_t i = 0; i < v.string_f.size(); ++i) 00673 { 00674 s << indent << " string_f[" << i << "]: "; 00675 Printer<std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > >::stream(s, indent + " ", v.string_f[i]); 00676 } 00677 s << indent << "time_v[]" << std::endl; 00678 for (size_t i = 0; i < v.time_v.size(); ++i) 00679 { 00680 s << indent << " time_v[" << i << "]: "; 00681 Printer<ros::Time>::stream(s, indent + " ", v.time_v[i]); 00682 } 00683 s << indent << "time_f[]" << std::endl; 00684 for (size_t i = 0; i < v.time_f.size(); ++i) 00685 { 00686 s << indent << " time_f[" << i << "]: "; 00687 Printer<ros::Time>::stream(s, indent + " ", v.time_f[i]); 00688 } 00689 s << indent << "Byte_: "; 00690 s << std::endl; 00691 Printer< ::std_msgs::Byte_<ContainerAllocator> >::stream(s, indent + " ", v.Byte_); 00692 s << indent << "Byte_v[]" << std::endl; 00693 for (size_t i = 0; i < v.Byte_v.size(); ++i) 00694 { 00695 s << indent << " Byte_v[" << i << "]: "; 00696 s << std::endl; 00697 s << indent; 00698 Printer< ::std_msgs::Byte_<ContainerAllocator> >::stream(s, indent + " ", v.Byte_v[i]); 00699 } 00700 s << indent << "ByteMultiArray_: "; 00701 s << std::endl; 00702 Printer< ::std_msgs::ByteMultiArray_<ContainerAllocator> >::stream(s, indent + " ", v.ByteMultiArray_); 00703 s << indent << "ByteMultiArray_v[]" << std::endl; 00704 for (size_t i = 0; i < v.ByteMultiArray_v.size(); ++i) 00705 { 00706 s << indent << " ByteMultiArray_v[" << i << "]: "; 00707 s << std::endl; 00708 s << indent; 00709 Printer< ::std_msgs::ByteMultiArray_<ContainerAllocator> >::stream(s, indent + " ", v.ByteMultiArray_v[i]); 00710 } 00711 } 00712 }; 00713 00714 00715 } // namespace message_operations 00716 } // namespace ros 00717 00718 #endif // TEST_ROSJAVA_JNI_MESSAGE_TESTDATATYPES_H 00719