00001
00002 #ifndef ART_MSGS_MESSAGE_PILOTBEHAVIOR_H
00003 #define ART_MSGS_MESSAGE_PILOTBEHAVIOR_H
00004 #include <string>
00005 #include <vector>
00006 #include <ostream>
00007 #include "ros/serialization.h"
00008 #include "ros/builtin_message_traits.h"
00009 #include "ros/message_operations.h"
00010 #include "ros/message.h"
00011 #include "ros/time.h"
00012
00013
00014 namespace art_msgs
00015 {
00016 template <class ContainerAllocator>
00017 struct PilotBehavior_ : public ros::Message
00018 {
00019 typedef PilotBehavior_<ContainerAllocator> Type;
00020
00021 PilotBehavior_()
00022 : value(0)
00023 {
00024 }
00025
00026 PilotBehavior_(const ContainerAllocator& _alloc)
00027 : value(0)
00028 {
00029 }
00030
00031 typedef uint8_t _value_type;
00032 uint8_t value;
00033
00034 enum { Run = 0 };
00035 enum { Pause = 1 };
00036 enum { Off = 2 };
00037 enum { N_behaviors = 3 };
00038
00039 private:
00040 static const char* __s_getDataType_() { return "art_msgs/PilotBehavior"; }
00041 public:
00042 ROS_DEPRECATED static const std::string __s_getDataType() { return __s_getDataType_(); }
00043
00044 ROS_DEPRECATED const std::string __getDataType() const { return __s_getDataType_(); }
00045
00046 private:
00047 static const char* __s_getMD5Sum_() { return "ee280e8dd8b427f32f9742e8b4885525"; }
00048 public:
00049 ROS_DEPRECATED static const std::string __s_getMD5Sum() { return __s_getMD5Sum_(); }
00050
00051 ROS_DEPRECATED const std::string __getMD5Sum() const { return __s_getMD5Sum_(); }
00052
00053 private:
00054 static const char* __s_getMessageDefinition_() { return "# ART autonomous vehicle pilot node behaviors.\n\
00055 #\n\
00056 # Normally, the pilot node does Run, continually sending commands to\n\
00057 # the servo device actuators and monitoring their state. With Pause,\n\
00058 # the pilot becomes passive, allowing a learning algorithm or human\n\
00059 # controller direct access to those devices. In the Off state,\n\
00060 # various devices are shut down: the transmission in Park, the brake\n\
00061 # released, the throttle at idle. The engine is not turned off, but\n\
00062 # it could be.\n\
00063 \n\
00064 # $Id: PilotBehavior.msg 1539 2011-05-09 04:09:20Z jack.oquin $\n\
00065 \n\
00066 # Behavior value\n\
00067 uint8 value\n\
00068 \n\
00069 # Behavior numbers:\n\
00070 uint8 Run = 0 # normal driving\n\
00071 uint8 Pause = 1 # stop issuing servo commands\n\
00072 uint8 Off = 2 # turn off devices\n\
00073 uint8 N_behaviors = 3\n\
00074 \n\
00075 "; }
00076 public:
00077 ROS_DEPRECATED static const std::string __s_getMessageDefinition() { return __s_getMessageDefinition_(); }
00078
00079 ROS_DEPRECATED const std::string __getMessageDefinition() const { return __s_getMessageDefinition_(); }
00080
00081 ROS_DEPRECATED virtual uint8_t *serialize(uint8_t *write_ptr, uint32_t seq) const
00082 {
00083 ros::serialization::OStream stream(write_ptr, 1000000000);
00084 ros::serialization::serialize(stream, value);
00085 return stream.getData();
00086 }
00087
00088 ROS_DEPRECATED virtual uint8_t *deserialize(uint8_t *read_ptr)
00089 {
00090 ros::serialization::IStream stream(read_ptr, 1000000000);
00091 ros::serialization::deserialize(stream, value);
00092 return stream.getData();
00093 }
00094
00095 ROS_DEPRECATED virtual uint32_t serializationLength() const
00096 {
00097 uint32_t size = 0;
00098 size += ros::serialization::serializationLength(value);
00099 return size;
00100 }
00101
00102 typedef boost::shared_ptr< ::art_msgs::PilotBehavior_<ContainerAllocator> > Ptr;
00103 typedef boost::shared_ptr< ::art_msgs::PilotBehavior_<ContainerAllocator> const> ConstPtr;
00104 };
00105 typedef ::art_msgs::PilotBehavior_<std::allocator<void> > PilotBehavior;
00106
00107 typedef boost::shared_ptr< ::art_msgs::PilotBehavior> PilotBehaviorPtr;
00108 typedef boost::shared_ptr< ::art_msgs::PilotBehavior const> PilotBehaviorConstPtr;
00109
00110
00111 template<typename ContainerAllocator>
00112 std::ostream& operator<<(std::ostream& s, const ::art_msgs::PilotBehavior_<ContainerAllocator> & v)
00113 {
00114 ros::message_operations::Printer< ::art_msgs::PilotBehavior_<ContainerAllocator> >::stream(s, "", v);
00115 return s;}
00116
00117 }
00118
00119 namespace ros
00120 {
00121 namespace message_traits
00122 {
00123 template<class ContainerAllocator>
00124 struct MD5Sum< ::art_msgs::PilotBehavior_<ContainerAllocator> > {
00125 static const char* value()
00126 {
00127 return "ee280e8dd8b427f32f9742e8b4885525";
00128 }
00129
00130 static const char* value(const ::art_msgs::PilotBehavior_<ContainerAllocator> &) { return value(); }
00131 static const uint64_t static_value1 = 0xee280e8dd8b427f3ULL;
00132 static const uint64_t static_value2 = 0x2f9742e8b4885525ULL;
00133 };
00134
00135 template<class ContainerAllocator>
00136 struct DataType< ::art_msgs::PilotBehavior_<ContainerAllocator> > {
00137 static const char* value()
00138 {
00139 return "art_msgs/PilotBehavior";
00140 }
00141
00142 static const char* value(const ::art_msgs::PilotBehavior_<ContainerAllocator> &) { return value(); }
00143 };
00144
00145 template<class ContainerAllocator>
00146 struct Definition< ::art_msgs::PilotBehavior_<ContainerAllocator> > {
00147 static const char* value()
00148 {
00149 return "# ART autonomous vehicle pilot node behaviors.\n\
00150 #\n\
00151 # Normally, the pilot node does Run, continually sending commands to\n\
00152 # the servo device actuators and monitoring their state. With Pause,\n\
00153 # the pilot becomes passive, allowing a learning algorithm or human\n\
00154 # controller direct access to those devices. In the Off state,\n\
00155 # various devices are shut down: the transmission in Park, the brake\n\
00156 # released, the throttle at idle. The engine is not turned off, but\n\
00157 # it could be.\n\
00158 \n\
00159 # $Id: PilotBehavior.msg 1539 2011-05-09 04:09:20Z jack.oquin $\n\
00160 \n\
00161 # Behavior value\n\
00162 uint8 value\n\
00163 \n\
00164 # Behavior numbers:\n\
00165 uint8 Run = 0 # normal driving\n\
00166 uint8 Pause = 1 # stop issuing servo commands\n\
00167 uint8 Off = 2 # turn off devices\n\
00168 uint8 N_behaviors = 3\n\
00169 \n\
00170 ";
00171 }
00172
00173 static const char* value(const ::art_msgs::PilotBehavior_<ContainerAllocator> &) { return value(); }
00174 };
00175
00176 template<class ContainerAllocator> struct IsFixedSize< ::art_msgs::PilotBehavior_<ContainerAllocator> > : public TrueType {};
00177 }
00178 }
00179
00180 namespace ros
00181 {
00182 namespace serialization
00183 {
00184
00185 template<class ContainerAllocator> struct Serializer< ::art_msgs::PilotBehavior_<ContainerAllocator> >
00186 {
00187 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00188 {
00189 stream.next(m.value);
00190 }
00191
00192 ROS_DECLARE_ALLINONE_SERIALIZER;
00193 };
00194 }
00195 }
00196
00197 namespace ros
00198 {
00199 namespace message_operations
00200 {
00201
00202 template<class ContainerAllocator>
00203 struct Printer< ::art_msgs::PilotBehavior_<ContainerAllocator> >
00204 {
00205 template<typename Stream> static void stream(Stream& s, const std::string& indent, const ::art_msgs::PilotBehavior_<ContainerAllocator> & v)
00206 {
00207 s << indent << "value: ";
00208 Printer<uint8_t>::stream(s, indent + " ", v.value);
00209 }
00210 };
00211
00212
00213 }
00214 }
00215
00216 #endif // ART_MSGS_MESSAGE_PILOTBEHAVIOR_H
00217