Go to the documentation of this file.00001
00002 #ifndef NASA_R2_COMMON_MSGS_MESSAGE_PARAMETER_H
00003 #define NASA_R2_COMMON_MSGS_MESSAGE_PARAMETER_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 nasa_r2_common_msgs
00019 {
00020 template <class ContainerAllocator>
00021 struct Parameter_ {
00022 typedef Parameter_<ContainerAllocator> Type;
00023
00024 Parameter_()
00025 : key()
00026 , type(0)
00027 , value()
00028 {
00029 }
00030
00031 Parameter_(const ContainerAllocator& _alloc)
00032 : key(_alloc)
00033 , type(0)
00034 , value(_alloc)
00035 {
00036 }
00037
00038 typedef std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > _key_type;
00039 std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > key;
00040
00041 typedef uint8_t _type_type;
00042 uint8_t type;
00043
00044 typedef std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > _value_type;
00045 std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > value;
00046
00047 enum { STRING = 0 };
00048 enum { INT = 1 };
00049 enum { FLOAT = 2 };
00050 enum { BOOL = 3 };
00051 enum { LIST = 4 };
00052 enum { DICT = 5 };
00053
00054 typedef boost::shared_ptr< ::nasa_r2_common_msgs::Parameter_<ContainerAllocator> > Ptr;
00055 typedef boost::shared_ptr< ::nasa_r2_common_msgs::Parameter_<ContainerAllocator> const> ConstPtr;
00056 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00057 };
00058 typedef ::nasa_r2_common_msgs::Parameter_<std::allocator<void> > Parameter;
00059
00060 typedef boost::shared_ptr< ::nasa_r2_common_msgs::Parameter> ParameterPtr;
00061 typedef boost::shared_ptr< ::nasa_r2_common_msgs::Parameter const> ParameterConstPtr;
00062
00063
00064 template<typename ContainerAllocator>
00065 std::ostream& operator<<(std::ostream& s, const ::nasa_r2_common_msgs::Parameter_<ContainerAllocator> & v)
00066 {
00067 ros::message_operations::Printer< ::nasa_r2_common_msgs::Parameter_<ContainerAllocator> >::stream(s, "", v);
00068 return s;}
00069
00070 }
00071
00072 namespace ros
00073 {
00074 namespace message_traits
00075 {
00076 template<class ContainerAllocator> struct IsMessage< ::nasa_r2_common_msgs::Parameter_<ContainerAllocator> > : public TrueType {};
00077 template<class ContainerAllocator> struct IsMessage< ::nasa_r2_common_msgs::Parameter_<ContainerAllocator> const> : public TrueType {};
00078 template<class ContainerAllocator>
00079 struct MD5Sum< ::nasa_r2_common_msgs::Parameter_<ContainerAllocator> > {
00080 static const char* value()
00081 {
00082 return "36ddbd8f0ee48b1cd429060e624bb6d5";
00083 }
00084
00085 static const char* value(const ::nasa_r2_common_msgs::Parameter_<ContainerAllocator> &) { return value(); }
00086 static const uint64_t static_value1 = 0x36ddbd8f0ee48b1cULL;
00087 static const uint64_t static_value2 = 0xd429060e624bb6d5ULL;
00088 };
00089
00090 template<class ContainerAllocator>
00091 struct DataType< ::nasa_r2_common_msgs::Parameter_<ContainerAllocator> > {
00092 static const char* value()
00093 {
00094 return "nasa_r2_common_msgs/Parameter";
00095 }
00096
00097 static const char* value(const ::nasa_r2_common_msgs::Parameter_<ContainerAllocator> &) { return value(); }
00098 };
00099
00100 template<class ContainerAllocator>
00101 struct Definition< ::nasa_r2_common_msgs::Parameter_<ContainerAllocator> > {
00102 static const char* value()
00103 {
00104 return "uint8 STRING = 0\n\
00105 uint8 INT = 1\n\
00106 uint8 FLOAT = 2\n\
00107 uint8 BOOL = 3\n\
00108 uint8 LIST = 4\n\
00109 uint8 DICT = 5\n\
00110 \n\
00111 string key\n\
00112 uint8 type\n\
00113 string value\n\
00114 \n\
00115 ";
00116 }
00117
00118 static const char* value(const ::nasa_r2_common_msgs::Parameter_<ContainerAllocator> &) { return value(); }
00119 };
00120
00121 }
00122 }
00123
00124 namespace ros
00125 {
00126 namespace serialization
00127 {
00128
00129 template<class ContainerAllocator> struct Serializer< ::nasa_r2_common_msgs::Parameter_<ContainerAllocator> >
00130 {
00131 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00132 {
00133 stream.next(m.key);
00134 stream.next(m.type);
00135 stream.next(m.value);
00136 }
00137
00138 ROS_DECLARE_ALLINONE_SERIALIZER;
00139 };
00140 }
00141 }
00142
00143 namespace ros
00144 {
00145 namespace message_operations
00146 {
00147
00148 template<class ContainerAllocator>
00149 struct Printer< ::nasa_r2_common_msgs::Parameter_<ContainerAllocator> >
00150 {
00151 template<typename Stream> static void stream(Stream& s, const std::string& indent, const ::nasa_r2_common_msgs::Parameter_<ContainerAllocator> & v)
00152 {
00153 s << indent << "key: ";
00154 Printer<std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > >::stream(s, indent + " ", v.key);
00155 s << indent << "type: ";
00156 Printer<uint8_t>::stream(s, indent + " ", v.type);
00157 s << indent << "value: ";
00158 Printer<std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > >::stream(s, indent + " ", v.value);
00159 }
00160 };
00161
00162
00163 }
00164 }
00165
00166 #endif // NASA_R2_COMMON_MSGS_MESSAGE_PARAMETER_H
00167