Go to the documentation of this file.00001
00002 #ifndef COB_RELAYBOARD_MESSAGE_EMERGENCYSTOPSTATE_H
00003 #define COB_RELAYBOARD_MESSAGE_EMERGENCYSTOPSTATE_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 cob_relayboard
00019 {
00020 template <class ContainerAllocator>
00021 struct EmergencyStopState_ {
00022 typedef EmergencyStopState_<ContainerAllocator> Type;
00023
00024 EmergencyStopState_()
00025 : emergency_button_stop(false)
00026 , scanner_stop(false)
00027 , emergency_state(0)
00028 {
00029 }
00030
00031 EmergencyStopState_(const ContainerAllocator& _alloc)
00032 : emergency_button_stop(false)
00033 , scanner_stop(false)
00034 , emergency_state(0)
00035 {
00036 }
00037
00038 typedef uint8_t _emergency_button_stop_type;
00039 uint8_t emergency_button_stop;
00040
00041 typedef uint8_t _scanner_stop_type;
00042 uint8_t scanner_stop;
00043
00044 typedef int16_t _emergency_state_type;
00045 int16_t emergency_state;
00046
00047 enum { EMFREE = 0 };
00048 enum { EMSTOP = 1 };
00049 enum { EMCONFIRMED = 2 };
00050
00051 typedef boost::shared_ptr< ::cob_relayboard::EmergencyStopState_<ContainerAllocator> > Ptr;
00052 typedef boost::shared_ptr< ::cob_relayboard::EmergencyStopState_<ContainerAllocator> const> ConstPtr;
00053 boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00054 };
00055 typedef ::cob_relayboard::EmergencyStopState_<std::allocator<void> > EmergencyStopState;
00056
00057 typedef boost::shared_ptr< ::cob_relayboard::EmergencyStopState> EmergencyStopStatePtr;
00058 typedef boost::shared_ptr< ::cob_relayboard::EmergencyStopState const> EmergencyStopStateConstPtr;
00059
00060
00061 template<typename ContainerAllocator>
00062 std::ostream& operator<<(std::ostream& s, const ::cob_relayboard::EmergencyStopState_<ContainerAllocator> & v)
00063 {
00064 ros::message_operations::Printer< ::cob_relayboard::EmergencyStopState_<ContainerAllocator> >::stream(s, "", v);
00065 return s;}
00066
00067 }
00068
00069 namespace ros
00070 {
00071 namespace message_traits
00072 {
00073 template<class ContainerAllocator> struct IsMessage< ::cob_relayboard::EmergencyStopState_<ContainerAllocator> > : public TrueType {};
00074 template<class ContainerAllocator> struct IsMessage< ::cob_relayboard::EmergencyStopState_<ContainerAllocator> const> : public TrueType {};
00075 template<class ContainerAllocator>
00076 struct MD5Sum< ::cob_relayboard::EmergencyStopState_<ContainerAllocator> > {
00077 static const char* value()
00078 {
00079 return "d857d7312ffc16f75239036504e493e9";
00080 }
00081
00082 static const char* value(const ::cob_relayboard::EmergencyStopState_<ContainerAllocator> &) { return value(); }
00083 static const uint64_t static_value1 = 0xd857d7312ffc16f7ULL;
00084 static const uint64_t static_value2 = 0x5239036504e493e9ULL;
00085 };
00086
00087 template<class ContainerAllocator>
00088 struct DataType< ::cob_relayboard::EmergencyStopState_<ContainerAllocator> > {
00089 static const char* value()
00090 {
00091 return "cob_relayboard/EmergencyStopState";
00092 }
00093
00094 static const char* value(const ::cob_relayboard::EmergencyStopState_<ContainerAllocator> &) { return value(); }
00095 };
00096
00097 template<class ContainerAllocator>
00098 struct Definition< ::cob_relayboard::EmergencyStopState_<ContainerAllocator> > {
00099 static const char* value()
00100 {
00101 return "# This message holds the emergency stop (EMStop) status of the robot. It detects wether an EMStop is caused by the safety laserscanner or the emergency stop buttons. Moreover, it gives signalizes wether the EMStop was confirmed (after Button press stop) and the system is free again.\n\
00102 \n\
00103 # Possible EMStop States\n\
00104 int16 EMFREE = 0 # system operatign normal\n\
00105 int16 EMSTOP = 1 # emergency stop is active (Button pressed; obstacle in safety field of scanner)\n\
00106 int16 EMCONFIRMED = 2 # emergency stop was confirmed system is reinitializing and going back to normal\n\
00107 \n\
00108 bool emergency_button_stop # true = emergency stop signal is issued by button pressed\n\
00109 bool scanner_stop # true = emergency stop signal is issued by scanner\n\
00110 int16 emergency_state # state (including confimation by key-switch), values see above\n\
00111 \n\
00112 \n\
00113 ";
00114 }
00115
00116 static const char* value(const ::cob_relayboard::EmergencyStopState_<ContainerAllocator> &) { return value(); }
00117 };
00118
00119 template<class ContainerAllocator> struct IsFixedSize< ::cob_relayboard::EmergencyStopState_<ContainerAllocator> > : public TrueType {};
00120 }
00121 }
00122
00123 namespace ros
00124 {
00125 namespace serialization
00126 {
00127
00128 template<class ContainerAllocator> struct Serializer< ::cob_relayboard::EmergencyStopState_<ContainerAllocator> >
00129 {
00130 template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00131 {
00132 stream.next(m.emergency_button_stop);
00133 stream.next(m.scanner_stop);
00134 stream.next(m.emergency_state);
00135 }
00136
00137 ROS_DECLARE_ALLINONE_SERIALIZER;
00138 };
00139 }
00140 }
00141
00142 namespace ros
00143 {
00144 namespace message_operations
00145 {
00146
00147 template<class ContainerAllocator>
00148 struct Printer< ::cob_relayboard::EmergencyStopState_<ContainerAllocator> >
00149 {
00150 template<typename Stream> static void stream(Stream& s, const std::string& indent, const ::cob_relayboard::EmergencyStopState_<ContainerAllocator> & v)
00151 {
00152 s << indent << "emergency_button_stop: ";
00153 Printer<uint8_t>::stream(s, indent + " ", v.emergency_button_stop);
00154 s << indent << "scanner_stop: ";
00155 Printer<uint8_t>::stream(s, indent + " ", v.scanner_stop);
00156 s << indent << "emergency_state: ";
00157 Printer<int16_t>::stream(s, indent + " ", v.emergency_state);
00158 }
00159 };
00160
00161
00162 }
00163 }
00164
00165 #endif // COB_RELAYBOARD_MESSAGE_EMERGENCYSTOPSTATE_H
00166