$search
00001 /* Auto-generated by genmsg_cpp for file /home/rosbuild/hudson/workspace/doc-electric-pr2_controllers/doc_stacks/2013-03-01_16-45-23.561928/pr2_controllers/ethercat_trigger_controllers/msg/MultiWaveformTransition.msg */ 00002 #ifndef ETHERCAT_TRIGGER_CONTROLLERS_MESSAGE_MULTIWAVEFORMTRANSITION_H 00003 #define ETHERCAT_TRIGGER_CONTROLLERS_MESSAGE_MULTIWAVEFORMTRANSITION_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 ethercat_trigger_controllers 00019 { 00020 template <class ContainerAllocator> 00021 struct MultiWaveformTransition_ { 00022 typedef MultiWaveformTransition_<ContainerAllocator> Type; 00023 00024 MultiWaveformTransition_() 00025 : time(0.0) 00026 , value(0) 00027 , topic() 00028 { 00029 } 00030 00031 MultiWaveformTransition_(const ContainerAllocator& _alloc) 00032 : time(0.0) 00033 , value(0) 00034 , topic(_alloc) 00035 { 00036 } 00037 00038 typedef double _time_type; 00039 double time; 00040 00041 typedef uint32_t _value_type; 00042 uint32_t value; 00043 00044 typedef std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > _topic_type; 00045 std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > topic; 00046 00047 00048 private: 00049 static const char* __s_getDataType_() { return "ethercat_trigger_controllers/MultiWaveformTransition"; } 00050 public: 00051 ROS_DEPRECATED static const std::string __s_getDataType() { return __s_getDataType_(); } 00052 00053 ROS_DEPRECATED const std::string __getDataType() const { return __s_getDataType_(); } 00054 00055 private: 00056 static const char* __s_getMD5Sum_() { return "bdd47e5d1c3d77473af2df9833a0608a"; } 00057 public: 00058 ROS_DEPRECATED static const std::string __s_getMD5Sum() { return __s_getMD5Sum_(); } 00059 00060 ROS_DEPRECATED const std::string __getMD5Sum() const { return __s_getMD5Sum_(); } 00061 00062 private: 00063 static const char* __s_getMessageDefinition_() { return "# Used to specify a transition in the SetMultiWaveform service.\n\ 00064 \n\ 00065 float64 time # Transition time after start of period.\n\ 00066 uint32 value # Value of the digital output after the transition time.\n\ 00067 string topic # Topic to publish the transition timestamp to, or empty string if the transition should not be published.\n\ 00068 \n\ 00069 "; } 00070 public: 00071 ROS_DEPRECATED static const std::string __s_getMessageDefinition() { return __s_getMessageDefinition_(); } 00072 00073 ROS_DEPRECATED const std::string __getMessageDefinition() const { return __s_getMessageDefinition_(); } 00074 00075 ROS_DEPRECATED virtual uint8_t *serialize(uint8_t *write_ptr, uint32_t seq) const 00076 { 00077 ros::serialization::OStream stream(write_ptr, 1000000000); 00078 ros::serialization::serialize(stream, time); 00079 ros::serialization::serialize(stream, value); 00080 ros::serialization::serialize(stream, topic); 00081 return stream.getData(); 00082 } 00083 00084 ROS_DEPRECATED virtual uint8_t *deserialize(uint8_t *read_ptr) 00085 { 00086 ros::serialization::IStream stream(read_ptr, 1000000000); 00087 ros::serialization::deserialize(stream, time); 00088 ros::serialization::deserialize(stream, value); 00089 ros::serialization::deserialize(stream, topic); 00090 return stream.getData(); 00091 } 00092 00093 ROS_DEPRECATED virtual uint32_t serializationLength() const 00094 { 00095 uint32_t size = 0; 00096 size += ros::serialization::serializationLength(time); 00097 size += ros::serialization::serializationLength(value); 00098 size += ros::serialization::serializationLength(topic); 00099 return size; 00100 } 00101 00102 typedef boost::shared_ptr< ::ethercat_trigger_controllers::MultiWaveformTransition_<ContainerAllocator> > Ptr; 00103 typedef boost::shared_ptr< ::ethercat_trigger_controllers::MultiWaveformTransition_<ContainerAllocator> const> ConstPtr; 00104 boost::shared_ptr<std::map<std::string, std::string> > __connection_header; 00105 }; // struct MultiWaveformTransition 00106 typedef ::ethercat_trigger_controllers::MultiWaveformTransition_<std::allocator<void> > MultiWaveformTransition; 00107 00108 typedef boost::shared_ptr< ::ethercat_trigger_controllers::MultiWaveformTransition> MultiWaveformTransitionPtr; 00109 typedef boost::shared_ptr< ::ethercat_trigger_controllers::MultiWaveformTransition const> MultiWaveformTransitionConstPtr; 00110 00111 00112 template<typename ContainerAllocator> 00113 std::ostream& operator<<(std::ostream& s, const ::ethercat_trigger_controllers::MultiWaveformTransition_<ContainerAllocator> & v) 00114 { 00115 ros::message_operations::Printer< ::ethercat_trigger_controllers::MultiWaveformTransition_<ContainerAllocator> >::stream(s, "", v); 00116 return s;} 00117 00118 } // namespace ethercat_trigger_controllers 00119 00120 namespace ros 00121 { 00122 namespace message_traits 00123 { 00124 template<class ContainerAllocator> struct IsMessage< ::ethercat_trigger_controllers::MultiWaveformTransition_<ContainerAllocator> > : public TrueType {}; 00125 template<class ContainerAllocator> struct IsMessage< ::ethercat_trigger_controllers::MultiWaveformTransition_<ContainerAllocator> const> : public TrueType {}; 00126 template<class ContainerAllocator> 00127 struct MD5Sum< ::ethercat_trigger_controllers::MultiWaveformTransition_<ContainerAllocator> > { 00128 static const char* value() 00129 { 00130 return "bdd47e5d1c3d77473af2df9833a0608a"; 00131 } 00132 00133 static const char* value(const ::ethercat_trigger_controllers::MultiWaveformTransition_<ContainerAllocator> &) { return value(); } 00134 static const uint64_t static_value1 = 0xbdd47e5d1c3d7747ULL; 00135 static const uint64_t static_value2 = 0x3af2df9833a0608aULL; 00136 }; 00137 00138 template<class ContainerAllocator> 00139 struct DataType< ::ethercat_trigger_controllers::MultiWaveformTransition_<ContainerAllocator> > { 00140 static const char* value() 00141 { 00142 return "ethercat_trigger_controllers/MultiWaveformTransition"; 00143 } 00144 00145 static const char* value(const ::ethercat_trigger_controllers::MultiWaveformTransition_<ContainerAllocator> &) { return value(); } 00146 }; 00147 00148 template<class ContainerAllocator> 00149 struct Definition< ::ethercat_trigger_controllers::MultiWaveformTransition_<ContainerAllocator> > { 00150 static const char* value() 00151 { 00152 return "# Used to specify a transition in the SetMultiWaveform service.\n\ 00153 \n\ 00154 float64 time # Transition time after start of period.\n\ 00155 uint32 value # Value of the digital output after the transition time.\n\ 00156 string topic # Topic to publish the transition timestamp to, or empty string if the transition should not be published.\n\ 00157 \n\ 00158 "; 00159 } 00160 00161 static const char* value(const ::ethercat_trigger_controllers::MultiWaveformTransition_<ContainerAllocator> &) { return value(); } 00162 }; 00163 00164 } // namespace message_traits 00165 } // namespace ros 00166 00167 namespace ros 00168 { 00169 namespace serialization 00170 { 00171 00172 template<class ContainerAllocator> struct Serializer< ::ethercat_trigger_controllers::MultiWaveformTransition_<ContainerAllocator> > 00173 { 00174 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m) 00175 { 00176 stream.next(m.time); 00177 stream.next(m.value); 00178 stream.next(m.topic); 00179 } 00180 00181 ROS_DECLARE_ALLINONE_SERIALIZER; 00182 }; // struct MultiWaveformTransition_ 00183 } // namespace serialization 00184 } // namespace ros 00185 00186 namespace ros 00187 { 00188 namespace message_operations 00189 { 00190 00191 template<class ContainerAllocator> 00192 struct Printer< ::ethercat_trigger_controllers::MultiWaveformTransition_<ContainerAllocator> > 00193 { 00194 template<typename Stream> static void stream(Stream& s, const std::string& indent, const ::ethercat_trigger_controllers::MultiWaveformTransition_<ContainerAllocator> & v) 00195 { 00196 s << indent << "time: "; 00197 Printer<double>::stream(s, indent + " ", v.time); 00198 s << indent << "value: "; 00199 Printer<uint32_t>::stream(s, indent + " ", v.value); 00200 s << indent << "topic: "; 00201 Printer<std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > >::stream(s, indent + " ", v.topic); 00202 } 00203 }; 00204 00205 00206 } // namespace message_operations 00207 } // namespace ros 00208 00209 #endif // ETHERCAT_TRIGGER_CONTROLLERS_MESSAGE_MULTIWAVEFORMTRANSITION_H 00210