$search
00001 /* Auto-generated by genmsg_cpp for file /home/rosbuild/hudson/workspace/doc-electric-pr2_common/doc_stacks/2013-03-01_16-36-22.045406/pr2_common/pr2_msgs/msg/PeriodicCmd.msg */ 00002 #ifndef PR2_MSGS_MESSAGE_PERIODICCMD_H 00003 #define PR2_MSGS_MESSAGE_PERIODICCMD_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/Header.h" 00018 00019 namespace pr2_msgs 00020 { 00021 template <class ContainerAllocator> 00022 struct PeriodicCmd_ { 00023 typedef PeriodicCmd_<ContainerAllocator> Type; 00024 00025 PeriodicCmd_() 00026 : header() 00027 , profile() 00028 , period(0.0) 00029 , amplitude(0.0) 00030 , offset(0.0) 00031 { 00032 } 00033 00034 PeriodicCmd_(const ContainerAllocator& _alloc) 00035 : header(_alloc) 00036 , profile(_alloc) 00037 , period(0.0) 00038 , amplitude(0.0) 00039 , offset(0.0) 00040 { 00041 } 00042 00043 typedef ::std_msgs::Header_<ContainerAllocator> _header_type; 00044 ::std_msgs::Header_<ContainerAllocator> header; 00045 00046 typedef std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > _profile_type; 00047 std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > profile; 00048 00049 typedef double _period_type; 00050 double period; 00051 00052 typedef double _amplitude_type; 00053 double amplitude; 00054 00055 typedef double _offset_type; 00056 double offset; 00057 00058 00059 private: 00060 static const char* __s_getDataType_() { return "pr2_msgs/PeriodicCmd"; } 00061 public: 00062 ROS_DEPRECATED static const std::string __s_getDataType() { return __s_getDataType_(); } 00063 00064 ROS_DEPRECATED const std::string __getDataType() const { return __s_getDataType_(); } 00065 00066 private: 00067 static const char* __s_getMD5Sum_() { return "95ab7e548e3d4274f83393129dd96c2e"; } 00068 public: 00069 ROS_DEPRECATED static const std::string __s_getMD5Sum() { return __s_getMD5Sum_(); } 00070 00071 ROS_DEPRECATED const std::string __getMD5Sum() const { return __s_getMD5Sum_(); } 00072 00073 private: 00074 static const char* __s_getMessageDefinition_() { return "# This message is used to set the parameters of a profile executed by the\n\ 00075 # laser tilt controller.\n\ 00076 Header header\n\ 00077 string profile\n\ 00078 float64 period\n\ 00079 float64 amplitude\n\ 00080 float64 offset\n\ 00081 \n\ 00082 ================================================================================\n\ 00083 MSG: std_msgs/Header\n\ 00084 # Standard metadata for higher-level stamped data types.\n\ 00085 # This is generally used to communicate timestamped data \n\ 00086 # in a particular coordinate frame.\n\ 00087 # \n\ 00088 # sequence ID: consecutively increasing ID \n\ 00089 uint32 seq\n\ 00090 #Two-integer timestamp that is expressed as:\n\ 00091 # * stamp.secs: seconds (stamp_secs) since epoch\n\ 00092 # * stamp.nsecs: nanoseconds since stamp_secs\n\ 00093 # time-handling sugar is provided by the client library\n\ 00094 time stamp\n\ 00095 #Frame this data is associated with\n\ 00096 # 0: no frame\n\ 00097 # 1: global frame\n\ 00098 string frame_id\n\ 00099 \n\ 00100 "; } 00101 public: 00102 ROS_DEPRECATED static const std::string __s_getMessageDefinition() { return __s_getMessageDefinition_(); } 00103 00104 ROS_DEPRECATED const std::string __getMessageDefinition() const { return __s_getMessageDefinition_(); } 00105 00106 ROS_DEPRECATED virtual uint8_t *serialize(uint8_t *write_ptr, uint32_t seq) const 00107 { 00108 ros::serialization::OStream stream(write_ptr, 1000000000); 00109 ros::serialization::serialize(stream, header); 00110 ros::serialization::serialize(stream, profile); 00111 ros::serialization::serialize(stream, period); 00112 ros::serialization::serialize(stream, amplitude); 00113 ros::serialization::serialize(stream, offset); 00114 return stream.getData(); 00115 } 00116 00117 ROS_DEPRECATED virtual uint8_t *deserialize(uint8_t *read_ptr) 00118 { 00119 ros::serialization::IStream stream(read_ptr, 1000000000); 00120 ros::serialization::deserialize(stream, header); 00121 ros::serialization::deserialize(stream, profile); 00122 ros::serialization::deserialize(stream, period); 00123 ros::serialization::deserialize(stream, amplitude); 00124 ros::serialization::deserialize(stream, offset); 00125 return stream.getData(); 00126 } 00127 00128 ROS_DEPRECATED virtual uint32_t serializationLength() const 00129 { 00130 uint32_t size = 0; 00131 size += ros::serialization::serializationLength(header); 00132 size += ros::serialization::serializationLength(profile); 00133 size += ros::serialization::serializationLength(period); 00134 size += ros::serialization::serializationLength(amplitude); 00135 size += ros::serialization::serializationLength(offset); 00136 return size; 00137 } 00138 00139 typedef boost::shared_ptr< ::pr2_msgs::PeriodicCmd_<ContainerAllocator> > Ptr; 00140 typedef boost::shared_ptr< ::pr2_msgs::PeriodicCmd_<ContainerAllocator> const> ConstPtr; 00141 boost::shared_ptr<std::map<std::string, std::string> > __connection_header; 00142 }; // struct PeriodicCmd 00143 typedef ::pr2_msgs::PeriodicCmd_<std::allocator<void> > PeriodicCmd; 00144 00145 typedef boost::shared_ptr< ::pr2_msgs::PeriodicCmd> PeriodicCmdPtr; 00146 typedef boost::shared_ptr< ::pr2_msgs::PeriodicCmd const> PeriodicCmdConstPtr; 00147 00148 00149 template<typename ContainerAllocator> 00150 std::ostream& operator<<(std::ostream& s, const ::pr2_msgs::PeriodicCmd_<ContainerAllocator> & v) 00151 { 00152 ros::message_operations::Printer< ::pr2_msgs::PeriodicCmd_<ContainerAllocator> >::stream(s, "", v); 00153 return s;} 00154 00155 } // namespace pr2_msgs 00156 00157 namespace ros 00158 { 00159 namespace message_traits 00160 { 00161 template<class ContainerAllocator> struct IsMessage< ::pr2_msgs::PeriodicCmd_<ContainerAllocator> > : public TrueType {}; 00162 template<class ContainerAllocator> struct IsMessage< ::pr2_msgs::PeriodicCmd_<ContainerAllocator> const> : public TrueType {}; 00163 template<class ContainerAllocator> 00164 struct MD5Sum< ::pr2_msgs::PeriodicCmd_<ContainerAllocator> > { 00165 static const char* value() 00166 { 00167 return "95ab7e548e3d4274f83393129dd96c2e"; 00168 } 00169 00170 static const char* value(const ::pr2_msgs::PeriodicCmd_<ContainerAllocator> &) { return value(); } 00171 static const uint64_t static_value1 = 0x95ab7e548e3d4274ULL; 00172 static const uint64_t static_value2 = 0xf83393129dd96c2eULL; 00173 }; 00174 00175 template<class ContainerAllocator> 00176 struct DataType< ::pr2_msgs::PeriodicCmd_<ContainerAllocator> > { 00177 static const char* value() 00178 { 00179 return "pr2_msgs/PeriodicCmd"; 00180 } 00181 00182 static const char* value(const ::pr2_msgs::PeriodicCmd_<ContainerAllocator> &) { return value(); } 00183 }; 00184 00185 template<class ContainerAllocator> 00186 struct Definition< ::pr2_msgs::PeriodicCmd_<ContainerAllocator> > { 00187 static const char* value() 00188 { 00189 return "# This message is used to set the parameters of a profile executed by the\n\ 00190 # laser tilt controller.\n\ 00191 Header header\n\ 00192 string profile\n\ 00193 float64 period\n\ 00194 float64 amplitude\n\ 00195 float64 offset\n\ 00196 \n\ 00197 ================================================================================\n\ 00198 MSG: std_msgs/Header\n\ 00199 # Standard metadata for higher-level stamped data types.\n\ 00200 # This is generally used to communicate timestamped data \n\ 00201 # in a particular coordinate frame.\n\ 00202 # \n\ 00203 # sequence ID: consecutively increasing ID \n\ 00204 uint32 seq\n\ 00205 #Two-integer timestamp that is expressed as:\n\ 00206 # * stamp.secs: seconds (stamp_secs) since epoch\n\ 00207 # * stamp.nsecs: nanoseconds since stamp_secs\n\ 00208 # time-handling sugar is provided by the client library\n\ 00209 time stamp\n\ 00210 #Frame this data is associated with\n\ 00211 # 0: no frame\n\ 00212 # 1: global frame\n\ 00213 string frame_id\n\ 00214 \n\ 00215 "; 00216 } 00217 00218 static const char* value(const ::pr2_msgs::PeriodicCmd_<ContainerAllocator> &) { return value(); } 00219 }; 00220 00221 template<class ContainerAllocator> struct HasHeader< ::pr2_msgs::PeriodicCmd_<ContainerAllocator> > : public TrueType {}; 00222 template<class ContainerAllocator> struct HasHeader< const ::pr2_msgs::PeriodicCmd_<ContainerAllocator> > : public TrueType {}; 00223 } // namespace message_traits 00224 } // namespace ros 00225 00226 namespace ros 00227 { 00228 namespace serialization 00229 { 00230 00231 template<class ContainerAllocator> struct Serializer< ::pr2_msgs::PeriodicCmd_<ContainerAllocator> > 00232 { 00233 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m) 00234 { 00235 stream.next(m.header); 00236 stream.next(m.profile); 00237 stream.next(m.period); 00238 stream.next(m.amplitude); 00239 stream.next(m.offset); 00240 } 00241 00242 ROS_DECLARE_ALLINONE_SERIALIZER; 00243 }; // struct PeriodicCmd_ 00244 } // namespace serialization 00245 } // namespace ros 00246 00247 namespace ros 00248 { 00249 namespace message_operations 00250 { 00251 00252 template<class ContainerAllocator> 00253 struct Printer< ::pr2_msgs::PeriodicCmd_<ContainerAllocator> > 00254 { 00255 template<typename Stream> static void stream(Stream& s, const std::string& indent, const ::pr2_msgs::PeriodicCmd_<ContainerAllocator> & v) 00256 { 00257 s << indent << "header: "; 00258 s << std::endl; 00259 Printer< ::std_msgs::Header_<ContainerAllocator> >::stream(s, indent + " ", v.header); 00260 s << indent << "profile: "; 00261 Printer<std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > >::stream(s, indent + " ", v.profile); 00262 s << indent << "period: "; 00263 Printer<double>::stream(s, indent + " ", v.period); 00264 s << indent << "amplitude: "; 00265 Printer<double>::stream(s, indent + " ", v.amplitude); 00266 s << indent << "offset: "; 00267 Printer<double>::stream(s, indent + " ", v.offset); 00268 } 00269 }; 00270 00271 00272 } // namespace message_operations 00273 } // namespace ros 00274 00275 #endif // PR2_MSGS_MESSAGE_PERIODICCMD_H 00276