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