SetMultiWaveform.h
Go to the documentation of this file.
00001 /* Auto-generated by genmsg_cpp for file /home/rosbuild/hudson/workspace/doc-groovy-pr2_controllers/doc_stacks/2014-04-24_15-41-20.176555/pr2_controllers/ethercat_trigger_controllers/srv/SetMultiWaveform.srv */
00002 #ifndef ETHERCAT_TRIGGER_CONTROLLERS_SERVICE_SETMULTIWAVEFORM_H
00003 #define ETHERCAT_TRIGGER_CONTROLLERS_SERVICE_SETMULTIWAVEFORM_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 "ros/service_traits.h"
00018 
00019 #include "ethercat_trigger_controllers/MultiWaveform.h"
00020 
00021 
00022 
00023 namespace ethercat_trigger_controllers
00024 {
00025 template <class ContainerAllocator>
00026 struct SetMultiWaveformRequest_ {
00027   typedef SetMultiWaveformRequest_<ContainerAllocator> Type;
00028 
00029   SetMultiWaveformRequest_()
00030   : waveform()
00031   {
00032   }
00033 
00034   SetMultiWaveformRequest_(const ContainerAllocator& _alloc)
00035   : waveform(_alloc)
00036   {
00037   }
00038 
00039   typedef  ::ethercat_trigger_controllers::MultiWaveform_<ContainerAllocator>  _waveform_type;
00040    ::ethercat_trigger_controllers::MultiWaveform_<ContainerAllocator>  waveform;
00041 
00042 
00043   typedef boost::shared_ptr< ::ethercat_trigger_controllers::SetMultiWaveformRequest_<ContainerAllocator> > Ptr;
00044   typedef boost::shared_ptr< ::ethercat_trigger_controllers::SetMultiWaveformRequest_<ContainerAllocator>  const> ConstPtr;
00045   boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00046 }; // struct SetMultiWaveformRequest
00047 typedef  ::ethercat_trigger_controllers::SetMultiWaveformRequest_<std::allocator<void> > SetMultiWaveformRequest;
00048 
00049 typedef boost::shared_ptr< ::ethercat_trigger_controllers::SetMultiWaveformRequest> SetMultiWaveformRequestPtr;
00050 typedef boost::shared_ptr< ::ethercat_trigger_controllers::SetMultiWaveformRequest const> SetMultiWaveformRequestConstPtr;
00051 
00052 
00053 
00054 template <class ContainerAllocator>
00055 struct SetMultiWaveformResponse_ {
00056   typedef SetMultiWaveformResponse_<ContainerAllocator> Type;
00057 
00058   SetMultiWaveformResponse_()
00059   : success(false)
00060   , status_message()
00061   {
00062   }
00063 
00064   SetMultiWaveformResponse_(const ContainerAllocator& _alloc)
00065   : success(false)
00066   , status_message(_alloc)
00067   {
00068   }
00069 
00070   typedef uint8_t _success_type;
00071   uint8_t success;
00072 
00073   typedef std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other >  _status_message_type;
00074   std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other >  status_message;
00075 
00076 
00077   typedef boost::shared_ptr< ::ethercat_trigger_controllers::SetMultiWaveformResponse_<ContainerAllocator> > Ptr;
00078   typedef boost::shared_ptr< ::ethercat_trigger_controllers::SetMultiWaveformResponse_<ContainerAllocator>  const> ConstPtr;
00079   boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00080 }; // struct SetMultiWaveformResponse
00081 typedef  ::ethercat_trigger_controllers::SetMultiWaveformResponse_<std::allocator<void> > SetMultiWaveformResponse;
00082 
00083 typedef boost::shared_ptr< ::ethercat_trigger_controllers::SetMultiWaveformResponse> SetMultiWaveformResponsePtr;
00084 typedef boost::shared_ptr< ::ethercat_trigger_controllers::SetMultiWaveformResponse const> SetMultiWaveformResponseConstPtr;
00085 
00086 
00087 struct SetMultiWaveform
00088 {
00089 
00090 typedef SetMultiWaveformRequest Request;
00091 typedef SetMultiWaveformResponse Response;
00092 Request request;
00093 Response response;
00094 
00095 typedef Request RequestType;
00096 typedef Response ResponseType;
00097 }; // struct SetMultiWaveform
00098 } // namespace ethercat_trigger_controllers
00099 
00100 namespace ros
00101 {
00102 namespace message_traits
00103 {
00104 template<class ContainerAllocator> struct IsMessage< ::ethercat_trigger_controllers::SetMultiWaveformRequest_<ContainerAllocator> > : public TrueType {};
00105 template<class ContainerAllocator> struct IsMessage< ::ethercat_trigger_controllers::SetMultiWaveformRequest_<ContainerAllocator>  const> : public TrueType {};
00106 template<class ContainerAllocator>
00107 struct MD5Sum< ::ethercat_trigger_controllers::SetMultiWaveformRequest_<ContainerAllocator> > {
00108   static const char* value() 
00109   {
00110     return "bfedad8205348a9bcc90e6ae4b778d86";
00111   }
00112 
00113   static const char* value(const  ::ethercat_trigger_controllers::SetMultiWaveformRequest_<ContainerAllocator> &) { return value(); } 
00114   static const uint64_t static_value1 = 0xbfedad8205348a9bULL;
00115   static const uint64_t static_value2 = 0xcc90e6ae4b778d86ULL;
00116 };
00117 
00118 template<class ContainerAllocator>
00119 struct DataType< ::ethercat_trigger_controllers::SetMultiWaveformRequest_<ContainerAllocator> > {
00120   static const char* value() 
00121   {
00122     return "ethercat_trigger_controllers/SetMultiWaveformRequest";
00123   }
00124 
00125   static const char* value(const  ::ethercat_trigger_controllers::SetMultiWaveformRequest_<ContainerAllocator> &) { return value(); } 
00126 };
00127 
00128 template<class ContainerAllocator>
00129 struct Definition< ::ethercat_trigger_controllers::SetMultiWaveformRequest_<ContainerAllocator> > {
00130   static const char* value() 
00131   {
00132     return "MultiWaveform waveform\n\
00133 \n\
00134 ================================================================================\n\
00135 MSG: ethercat_trigger_controllers/MultiWaveform\n\
00136 # Transitions will occur at k * period + zero_offset + transitions[j].time, where j and\n\
00137 # k are integers.\n\
00138 \n\
00139 float64 period # Period of the waveform in seconds.\n\
00140 float64 zero_offset # Time corresponding to a time of 0 in times[] in seconds\n\
00141 MultiWaveformTransition[] transitions # Transitions in the waveform. Transition times should be in increasing order, and be between 0 (inclusive) and period (exclusive)\n\
00142 \n\
00143 ================================================================================\n\
00144 MSG: ethercat_trigger_controllers/MultiWaveformTransition\n\
00145 # Used to specify a transition in the SetMultiWaveform service.\n\
00146 \n\
00147 float64 time # Transition time after start of period.\n\
00148 uint32 value # Value of the digital output after the transition time.\n\
00149 string topic # Topic to publish the transition timestamp to, or empty string if the transition should not be published.\n\
00150 \n\
00151 ";
00152   }
00153 
00154   static const char* value(const  ::ethercat_trigger_controllers::SetMultiWaveformRequest_<ContainerAllocator> &) { return value(); } 
00155 };
00156 
00157 } // namespace message_traits
00158 } // namespace ros
00159 
00160 
00161 namespace ros
00162 {
00163 namespace message_traits
00164 {
00165 template<class ContainerAllocator> struct IsMessage< ::ethercat_trigger_controllers::SetMultiWaveformResponse_<ContainerAllocator> > : public TrueType {};
00166 template<class ContainerAllocator> struct IsMessage< ::ethercat_trigger_controllers::SetMultiWaveformResponse_<ContainerAllocator>  const> : public TrueType {};
00167 template<class ContainerAllocator>
00168 struct MD5Sum< ::ethercat_trigger_controllers::SetMultiWaveformResponse_<ContainerAllocator> > {
00169   static const char* value() 
00170   {
00171     return "2ec6f3eff0161f4257b808b12bc830c2";
00172   }
00173 
00174   static const char* value(const  ::ethercat_trigger_controllers::SetMultiWaveformResponse_<ContainerAllocator> &) { return value(); } 
00175   static const uint64_t static_value1 = 0x2ec6f3eff0161f42ULL;
00176   static const uint64_t static_value2 = 0x57b808b12bc830c2ULL;
00177 };
00178 
00179 template<class ContainerAllocator>
00180 struct DataType< ::ethercat_trigger_controllers::SetMultiWaveformResponse_<ContainerAllocator> > {
00181   static const char* value() 
00182   {
00183     return "ethercat_trigger_controllers/SetMultiWaveformResponse";
00184   }
00185 
00186   static const char* value(const  ::ethercat_trigger_controllers::SetMultiWaveformResponse_<ContainerAllocator> &) { return value(); } 
00187 };
00188 
00189 template<class ContainerAllocator>
00190 struct Definition< ::ethercat_trigger_controllers::SetMultiWaveformResponse_<ContainerAllocator> > {
00191   static const char* value() 
00192   {
00193     return "bool success\n\
00194 string status_message\n\
00195 \n\
00196 \n\
00197 ";
00198   }
00199 
00200   static const char* value(const  ::ethercat_trigger_controllers::SetMultiWaveformResponse_<ContainerAllocator> &) { return value(); } 
00201 };
00202 
00203 } // namespace message_traits
00204 } // namespace ros
00205 
00206 namespace ros
00207 {
00208 namespace serialization
00209 {
00210 
00211 template<class ContainerAllocator> struct Serializer< ::ethercat_trigger_controllers::SetMultiWaveformRequest_<ContainerAllocator> >
00212 {
00213   template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00214   {
00215     stream.next(m.waveform);
00216   }
00217 
00218   ROS_DECLARE_ALLINONE_SERIALIZER;
00219 }; // struct SetMultiWaveformRequest_
00220 } // namespace serialization
00221 } // namespace ros
00222 
00223 
00224 namespace ros
00225 {
00226 namespace serialization
00227 {
00228 
00229 template<class ContainerAllocator> struct Serializer< ::ethercat_trigger_controllers::SetMultiWaveformResponse_<ContainerAllocator> >
00230 {
00231   template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00232   {
00233     stream.next(m.success);
00234     stream.next(m.status_message);
00235   }
00236 
00237   ROS_DECLARE_ALLINONE_SERIALIZER;
00238 }; // struct SetMultiWaveformResponse_
00239 } // namespace serialization
00240 } // namespace ros
00241 
00242 namespace ros
00243 {
00244 namespace service_traits
00245 {
00246 template<>
00247 struct MD5Sum<ethercat_trigger_controllers::SetMultiWaveform> {
00248   static const char* value() 
00249   {
00250     return "cbb7e900a71a9a437da9999c8d39fff4";
00251   }
00252 
00253   static const char* value(const ethercat_trigger_controllers::SetMultiWaveform&) { return value(); } 
00254 };
00255 
00256 template<>
00257 struct DataType<ethercat_trigger_controllers::SetMultiWaveform> {
00258   static const char* value() 
00259   {
00260     return "ethercat_trigger_controllers/SetMultiWaveform";
00261   }
00262 
00263   static const char* value(const ethercat_trigger_controllers::SetMultiWaveform&) { return value(); } 
00264 };
00265 
00266 template<class ContainerAllocator>
00267 struct MD5Sum<ethercat_trigger_controllers::SetMultiWaveformRequest_<ContainerAllocator> > {
00268   static const char* value() 
00269   {
00270     return "cbb7e900a71a9a437da9999c8d39fff4";
00271   }
00272 
00273   static const char* value(const ethercat_trigger_controllers::SetMultiWaveformRequest_<ContainerAllocator> &) { return value(); } 
00274 };
00275 
00276 template<class ContainerAllocator>
00277 struct DataType<ethercat_trigger_controllers::SetMultiWaveformRequest_<ContainerAllocator> > {
00278   static const char* value() 
00279   {
00280     return "ethercat_trigger_controllers/SetMultiWaveform";
00281   }
00282 
00283   static const char* value(const ethercat_trigger_controllers::SetMultiWaveformRequest_<ContainerAllocator> &) { return value(); } 
00284 };
00285 
00286 template<class ContainerAllocator>
00287 struct MD5Sum<ethercat_trigger_controllers::SetMultiWaveformResponse_<ContainerAllocator> > {
00288   static const char* value() 
00289   {
00290     return "cbb7e900a71a9a437da9999c8d39fff4";
00291   }
00292 
00293   static const char* value(const ethercat_trigger_controllers::SetMultiWaveformResponse_<ContainerAllocator> &) { return value(); } 
00294 };
00295 
00296 template<class ContainerAllocator>
00297 struct DataType<ethercat_trigger_controllers::SetMultiWaveformResponse_<ContainerAllocator> > {
00298   static const char* value() 
00299   {
00300     return "ethercat_trigger_controllers/SetMultiWaveform";
00301   }
00302 
00303   static const char* value(const ethercat_trigger_controllers::SetMultiWaveformResponse_<ContainerAllocator> &) { return value(); } 
00304 };
00305 
00306 } // namespace service_traits
00307 } // namespace ros
00308 
00309 #endif // ETHERCAT_TRIGGER_CONTROLLERS_SERVICE_SETMULTIWAVEFORM_H
00310 


ethercat_trigger_controllers
Author(s): Blaise Gassend
autogenerated on Thu Apr 24 2014 15:44:37