Go to the documentation of this file.00001
00002 #ifndef PR2_POWER_BOARD_SERVICE_POWERBOARDCOMMAND_H
00003 #define PR2_POWER_BOARD_SERVICE_POWERBOARDCOMMAND_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
00020
00021
00022 namespace pr2_power_board
00023 {
00024 template <class ContainerAllocator>
00025 struct PowerBoardCommandRequest_ {
00026 typedef PowerBoardCommandRequest_<ContainerAllocator> Type;
00027
00028 PowerBoardCommandRequest_()
00029 : serial_number(0)
00030 , breaker_number(0)
00031 , command()
00032 , flags(0)
00033 {
00034 }
00035
00036 PowerBoardCommandRequest_(const ContainerAllocator& _alloc)
00037 : serial_number(0)
00038 , breaker_number(0)
00039 , command(_alloc)
00040 , flags(0)
00041 {
00042 }
00043
00044 typedef uint32_t _serial_number_type;
00045 uint32_t serial_number;
00046
00047 typedef int32_t _breaker_number_type;
00048 int32_t breaker_number;
00049
00050 typedef std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > _command_type;
00051 std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > command;
00052
00053 typedef uint32_t _flags_type;
00054 uint32_t flags;
00055
00056
00057 typedef boost::shared_ptr< ::pr2_power_board::PowerBoardCommandRequest_<ContainerAllocator> > Ptr;
00058 typedef boost::shared_ptr< ::pr2_power_board::PowerBoardCommandRequest_<ContainerAllocator> const> ConstPtr;
00059 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00060 };
00061 typedef ::pr2_power_board::PowerBoardCommandRequest_<std::allocator<void> > PowerBoardCommandRequest;
00062
00063 typedef boost::shared_ptr< ::pr2_power_board::PowerBoardCommandRequest> PowerBoardCommandRequestPtr;
00064 typedef boost::shared_ptr< ::pr2_power_board::PowerBoardCommandRequest const> PowerBoardCommandRequestConstPtr;
00065
00066
00067
00068 template <class ContainerAllocator>
00069 struct PowerBoardCommandResponse_ {
00070 typedef PowerBoardCommandResponse_<ContainerAllocator> Type;
00071
00072 PowerBoardCommandResponse_()
00073 : retval(0)
00074 {
00075 }
00076
00077 PowerBoardCommandResponse_(const ContainerAllocator& _alloc)
00078 : retval(0)
00079 {
00080 }
00081
00082 typedef int32_t _retval_type;
00083 int32_t retval;
00084
00085
00086 typedef boost::shared_ptr< ::pr2_power_board::PowerBoardCommandResponse_<ContainerAllocator> > Ptr;
00087 typedef boost::shared_ptr< ::pr2_power_board::PowerBoardCommandResponse_<ContainerAllocator> const> ConstPtr;
00088 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00089 };
00090 typedef ::pr2_power_board::PowerBoardCommandResponse_<std::allocator<void> > PowerBoardCommandResponse;
00091
00092 typedef boost::shared_ptr< ::pr2_power_board::PowerBoardCommandResponse> PowerBoardCommandResponsePtr;
00093 typedef boost::shared_ptr< ::pr2_power_board::PowerBoardCommandResponse const> PowerBoardCommandResponseConstPtr;
00094
00095
00096 struct PowerBoardCommand
00097 {
00098
00099 typedef PowerBoardCommandRequest Request;
00100 typedef PowerBoardCommandResponse Response;
00101 Request request;
00102 Response response;
00103
00104 typedef Request RequestType;
00105 typedef Response ResponseType;
00106 };
00107 }
00108
00109 namespace ros
00110 {
00111 namespace message_traits
00112 {
00113 template<class ContainerAllocator> struct IsMessage< ::pr2_power_board::PowerBoardCommandRequest_<ContainerAllocator> > : public TrueType {};
00114 template<class ContainerAllocator> struct IsMessage< ::pr2_power_board::PowerBoardCommandRequest_<ContainerAllocator> const> : public TrueType {};
00115 template<class ContainerAllocator>
00116 struct MD5Sum< ::pr2_power_board::PowerBoardCommandRequest_<ContainerAllocator> > {
00117 static const char* value()
00118 {
00119 return "9c621f5309bca0033e8eaef81c31500a";
00120 }
00121
00122 static const char* value(const ::pr2_power_board::PowerBoardCommandRequest_<ContainerAllocator> &) { return value(); }
00123 static const uint64_t static_value1 = 0x9c621f5309bca003ULL;
00124 static const uint64_t static_value2 = 0x3e8eaef81c31500aULL;
00125 };
00126
00127 template<class ContainerAllocator>
00128 struct DataType< ::pr2_power_board::PowerBoardCommandRequest_<ContainerAllocator> > {
00129 static const char* value()
00130 {
00131 return "pr2_power_board/PowerBoardCommandRequest";
00132 }
00133
00134 static const char* value(const ::pr2_power_board::PowerBoardCommandRequest_<ContainerAllocator> &) { return value(); }
00135 };
00136
00137 template<class ContainerAllocator>
00138 struct Definition< ::pr2_power_board::PowerBoardCommandRequest_<ContainerAllocator> > {
00139 static const char* value()
00140 {
00141 return "uint32 serial_number\n\
00142 int32 breaker_number\n\
00143 string command\n\
00144 uint32 flags\n\
00145 \n\
00146 ";
00147 }
00148
00149 static const char* value(const ::pr2_power_board::PowerBoardCommandRequest_<ContainerAllocator> &) { return value(); }
00150 };
00151
00152 }
00153 }
00154
00155
00156 namespace ros
00157 {
00158 namespace message_traits
00159 {
00160 template<class ContainerAllocator> struct IsMessage< ::pr2_power_board::PowerBoardCommandResponse_<ContainerAllocator> > : public TrueType {};
00161 template<class ContainerAllocator> struct IsMessage< ::pr2_power_board::PowerBoardCommandResponse_<ContainerAllocator> const> : public TrueType {};
00162 template<class ContainerAllocator>
00163 struct MD5Sum< ::pr2_power_board::PowerBoardCommandResponse_<ContainerAllocator> > {
00164 static const char* value()
00165 {
00166 return "f5697a1e05c2a3e1c23cab49a31319ec";
00167 }
00168
00169 static const char* value(const ::pr2_power_board::PowerBoardCommandResponse_<ContainerAllocator> &) { return value(); }
00170 static const uint64_t static_value1 = 0xf5697a1e05c2a3e1ULL;
00171 static const uint64_t static_value2 = 0xc23cab49a31319ecULL;
00172 };
00173
00174 template<class ContainerAllocator>
00175 struct DataType< ::pr2_power_board::PowerBoardCommandResponse_<ContainerAllocator> > {
00176 static const char* value()
00177 {
00178 return "pr2_power_board/PowerBoardCommandResponse";
00179 }
00180
00181 static const char* value(const ::pr2_power_board::PowerBoardCommandResponse_<ContainerAllocator> &) { return value(); }
00182 };
00183
00184 template<class ContainerAllocator>
00185 struct Definition< ::pr2_power_board::PowerBoardCommandResponse_<ContainerAllocator> > {
00186 static const char* value()
00187 {
00188 return "int32 retval\n\
00189 \n\
00190 \n\
00191 ";
00192 }
00193
00194 static const char* value(const ::pr2_power_board::PowerBoardCommandResponse_<ContainerAllocator> &) { return value(); }
00195 };
00196
00197 template<class ContainerAllocator> struct IsFixedSize< ::pr2_power_board::PowerBoardCommandResponse_<ContainerAllocator> > : public TrueType {};
00198 }
00199 }
00200
00201 namespace ros
00202 {
00203 namespace serialization
00204 {
00205
00206 template<class ContainerAllocator> struct Serializer< ::pr2_power_board::PowerBoardCommandRequest_<ContainerAllocator> >
00207 {
00208 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00209 {
00210 stream.next(m.serial_number);
00211 stream.next(m.breaker_number);
00212 stream.next(m.command);
00213 stream.next(m.flags);
00214 }
00215
00216 ROS_DECLARE_ALLINONE_SERIALIZER;
00217 };
00218 }
00219 }
00220
00221
00222 namespace ros
00223 {
00224 namespace serialization
00225 {
00226
00227 template<class ContainerAllocator> struct Serializer< ::pr2_power_board::PowerBoardCommandResponse_<ContainerAllocator> >
00228 {
00229 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00230 {
00231 stream.next(m.retval);
00232 }
00233
00234 ROS_DECLARE_ALLINONE_SERIALIZER;
00235 };
00236 }
00237 }
00238
00239 namespace ros
00240 {
00241 namespace service_traits
00242 {
00243 template<>
00244 struct MD5Sum<pr2_power_board::PowerBoardCommand> {
00245 static const char* value()
00246 {
00247 return "d9e38de783aa7edc3146446518e85af2";
00248 }
00249
00250 static const char* value(const pr2_power_board::PowerBoardCommand&) { return value(); }
00251 };
00252
00253 template<>
00254 struct DataType<pr2_power_board::PowerBoardCommand> {
00255 static const char* value()
00256 {
00257 return "pr2_power_board/PowerBoardCommand";
00258 }
00259
00260 static const char* value(const pr2_power_board::PowerBoardCommand&) { return value(); }
00261 };
00262
00263 template<class ContainerAllocator>
00264 struct MD5Sum<pr2_power_board::PowerBoardCommandRequest_<ContainerAllocator> > {
00265 static const char* value()
00266 {
00267 return "d9e38de783aa7edc3146446518e85af2";
00268 }
00269
00270 static const char* value(const pr2_power_board::PowerBoardCommandRequest_<ContainerAllocator> &) { return value(); }
00271 };
00272
00273 template<class ContainerAllocator>
00274 struct DataType<pr2_power_board::PowerBoardCommandRequest_<ContainerAllocator> > {
00275 static const char* value()
00276 {
00277 return "pr2_power_board/PowerBoardCommand";
00278 }
00279
00280 static const char* value(const pr2_power_board::PowerBoardCommandRequest_<ContainerAllocator> &) { return value(); }
00281 };
00282
00283 template<class ContainerAllocator>
00284 struct MD5Sum<pr2_power_board::PowerBoardCommandResponse_<ContainerAllocator> > {
00285 static const char* value()
00286 {
00287 return "d9e38de783aa7edc3146446518e85af2";
00288 }
00289
00290 static const char* value(const pr2_power_board::PowerBoardCommandResponse_<ContainerAllocator> &) { return value(); }
00291 };
00292
00293 template<class ContainerAllocator>
00294 struct DataType<pr2_power_board::PowerBoardCommandResponse_<ContainerAllocator> > {
00295 static const char* value()
00296 {
00297 return "pr2_power_board/PowerBoardCommand";
00298 }
00299
00300 static const char* value(const pr2_power_board::PowerBoardCommandResponse_<ContainerAllocator> &) { return value(); }
00301 };
00302
00303 }
00304 }
00305
00306 #endif // PR2_POWER_BOARD_SERVICE_POWERBOARDCOMMAND_H
00307