JointCommand.h
Go to the documentation of this file.
00001 /* Auto-generated by genmsg_cpp for file /home/rosbuild/hudson/workspace/doc-groovy-nasa_r2_common/doc_stacks/2014-10-06_02-39-31.575241/nasa_r2_common/nasa_r2_common_msgs/msg/JointCommand.msg */
00002 #ifndef NASA_R2_COMMON_MSGS_MESSAGE_JOINTCOMMAND_H
00003 #define NASA_R2_COMMON_MSGS_MESSAGE_JOINTCOMMAND_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 "std_msgs/Header.h"
00018 
00019 namespace nasa_r2_common_msgs
00020 {
00021 template <class ContainerAllocator>
00022 struct JointCommand_ {
00023   typedef JointCommand_<ContainerAllocator> Type;
00024 
00025   JointCommand_()
00026   : header()
00027   , name()
00028   , desiredPosition()
00029   , desiredPositionVelocityLimit()
00030   , feedForwardTorque()
00031   , proportionalGain()
00032   , derivativeGain()
00033   , integralGain()
00034   , positionLoopTorqueLimit()
00035   , positionLoopWindupLimit()
00036   , torqueLoopVelocityLimit()
00037   {
00038   }
00039 
00040   JointCommand_(const ContainerAllocator& _alloc)
00041   : header(_alloc)
00042   , name(_alloc)
00043   , desiredPosition(_alloc)
00044   , desiredPositionVelocityLimit(_alloc)
00045   , feedForwardTorque(_alloc)
00046   , proportionalGain(_alloc)
00047   , derivativeGain(_alloc)
00048   , integralGain(_alloc)
00049   , positionLoopTorqueLimit(_alloc)
00050   , positionLoopWindupLimit(_alloc)
00051   , torqueLoopVelocityLimit(_alloc)
00052   {
00053   }
00054 
00055   typedef  ::std_msgs::Header_<ContainerAllocator>  _header_type;
00056    ::std_msgs::Header_<ContainerAllocator>  header;
00057 
00058   typedef std::vector<std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > , typename ContainerAllocator::template rebind<std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > >::other >  _name_type;
00059   std::vector<std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > , typename ContainerAllocator::template rebind<std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > >::other >  name;
00060 
00061   typedef std::vector<double, typename ContainerAllocator::template rebind<double>::other >  _desiredPosition_type;
00062   std::vector<double, typename ContainerAllocator::template rebind<double>::other >  desiredPosition;
00063 
00064   typedef std::vector<double, typename ContainerAllocator::template rebind<double>::other >  _desiredPositionVelocityLimit_type;
00065   std::vector<double, typename ContainerAllocator::template rebind<double>::other >  desiredPositionVelocityLimit;
00066 
00067   typedef std::vector<double, typename ContainerAllocator::template rebind<double>::other >  _feedForwardTorque_type;
00068   std::vector<double, typename ContainerAllocator::template rebind<double>::other >  feedForwardTorque;
00069 
00070   typedef std::vector<double, typename ContainerAllocator::template rebind<double>::other >  _proportionalGain_type;
00071   std::vector<double, typename ContainerAllocator::template rebind<double>::other >  proportionalGain;
00072 
00073   typedef std::vector<double, typename ContainerAllocator::template rebind<double>::other >  _derivativeGain_type;
00074   std::vector<double, typename ContainerAllocator::template rebind<double>::other >  derivativeGain;
00075 
00076   typedef std::vector<double, typename ContainerAllocator::template rebind<double>::other >  _integralGain_type;
00077   std::vector<double, typename ContainerAllocator::template rebind<double>::other >  integralGain;
00078 
00079   typedef std::vector<double, typename ContainerAllocator::template rebind<double>::other >  _positionLoopTorqueLimit_type;
00080   std::vector<double, typename ContainerAllocator::template rebind<double>::other >  positionLoopTorqueLimit;
00081 
00082   typedef std::vector<double, typename ContainerAllocator::template rebind<double>::other >  _positionLoopWindupLimit_type;
00083   std::vector<double, typename ContainerAllocator::template rebind<double>::other >  positionLoopWindupLimit;
00084 
00085   typedef std::vector<double, typename ContainerAllocator::template rebind<double>::other >  _torqueLoopVelocityLimit_type;
00086   std::vector<double, typename ContainerAllocator::template rebind<double>::other >  torqueLoopVelocityLimit;
00087 
00088   static const std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other >  FULL;
00089   static const std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other >  GRAVITY;
00090   static const std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other >  INERTIA;
00091   static const std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other >  NONE;
00092 
00093   typedef boost::shared_ptr< ::nasa_r2_common_msgs::JointCommand_<ContainerAllocator> > Ptr;
00094   typedef boost::shared_ptr< ::nasa_r2_common_msgs::JointCommand_<ContainerAllocator>  const> ConstPtr;
00095   boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00096 }; // struct JointCommand
00097 typedef  ::nasa_r2_common_msgs::JointCommand_<std::allocator<void> > JointCommand;
00098 
00099 typedef boost::shared_ptr< ::nasa_r2_common_msgs::JointCommand> JointCommandPtr;
00100 typedef boost::shared_ptr< ::nasa_r2_common_msgs::JointCommand const> JointCommandConstPtr;
00101 
00102 template<typename ContainerAllocator> const std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other >  JointCommand_<ContainerAllocator>::FULL = "full";
00103 template<typename ContainerAllocator> const std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other >  JointCommand_<ContainerAllocator>::GRAVITY = "gravity";
00104 template<typename ContainerAllocator> const std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other >  JointCommand_<ContainerAllocator>::INERTIA = "inertia";
00105 template<typename ContainerAllocator> const std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other >  JointCommand_<ContainerAllocator>::NONE = "none";
00106 
00107 template<typename ContainerAllocator>
00108 std::ostream& operator<<(std::ostream& s, const  ::nasa_r2_common_msgs::JointCommand_<ContainerAllocator> & v)
00109 {
00110   ros::message_operations::Printer< ::nasa_r2_common_msgs::JointCommand_<ContainerAllocator> >::stream(s, "", v);
00111   return s;}
00112 
00113 } // namespace nasa_r2_common_msgs
00114 
00115 namespace ros
00116 {
00117 namespace message_traits
00118 {
00119 template<class ContainerAllocator> struct IsMessage< ::nasa_r2_common_msgs::JointCommand_<ContainerAllocator> > : public TrueType {};
00120 template<class ContainerAllocator> struct IsMessage< ::nasa_r2_common_msgs::JointCommand_<ContainerAllocator>  const> : public TrueType {};
00121 template<class ContainerAllocator>
00122 struct MD5Sum< ::nasa_r2_common_msgs::JointCommand_<ContainerAllocator> > {
00123   static const char* value() 
00124   {
00125     return "c56e7e90d9ba9be819e9e813c2544894";
00126   }
00127 
00128   static const char* value(const  ::nasa_r2_common_msgs::JointCommand_<ContainerAllocator> &) { return value(); } 
00129   static const uint64_t static_value1 = 0xc56e7e90d9ba9be8ULL;
00130   static const uint64_t static_value2 = 0x19e9e813c2544894ULL;
00131 };
00132 
00133 template<class ContainerAllocator>
00134 struct DataType< ::nasa_r2_common_msgs::JointCommand_<ContainerAllocator> > {
00135   static const char* value() 
00136   {
00137     return "nasa_r2_common_msgs/JointCommand";
00138   }
00139 
00140   static const char* value(const  ::nasa_r2_common_msgs::JointCommand_<ContainerAllocator> &) { return value(); } 
00141 };
00142 
00143 template<class ContainerAllocator>
00144 struct Definition< ::nasa_r2_common_msgs::JointCommand_<ContainerAllocator> > {
00145   static const char* value() 
00146   {
00147     return "Header header\n\
00148 string[] name\n\
00149 float64[] desiredPosition\n\
00150 float64[] desiredPositionVelocityLimit\n\
00151 float64[] feedForwardTorque\n\
00152 float64[] proportionalGain\n\
00153 float64[] derivativeGain\n\
00154 float64[] integralGain\n\
00155 float64[] positionLoopTorqueLimit\n\
00156 float64[] positionLoopWindupLimit\n\
00157 float64[] torqueLoopVelocityLimit\n\
00158 \n\
00159 string FULL           =full\n\
00160 string GRAVITY        =gravity\n\
00161 string INERTIA        =inertia\n\
00162 string NONE           =none\n\
00163 \n\
00164 ================================================================================\n\
00165 MSG: std_msgs/Header\n\
00166 # Standard metadata for higher-level stamped data types.\n\
00167 # This is generally used to communicate timestamped data \n\
00168 # in a particular coordinate frame.\n\
00169 # \n\
00170 # sequence ID: consecutively increasing ID \n\
00171 uint32 seq\n\
00172 #Two-integer timestamp that is expressed as:\n\
00173 # * stamp.secs: seconds (stamp_secs) since epoch\n\
00174 # * stamp.nsecs: nanoseconds since stamp_secs\n\
00175 # time-handling sugar is provided by the client library\n\
00176 time stamp\n\
00177 #Frame this data is associated with\n\
00178 # 0: no frame\n\
00179 # 1: global frame\n\
00180 string frame_id\n\
00181 \n\
00182 ";
00183   }
00184 
00185   static const char* value(const  ::nasa_r2_common_msgs::JointCommand_<ContainerAllocator> &) { return value(); } 
00186 };
00187 
00188 template<class ContainerAllocator> struct HasHeader< ::nasa_r2_common_msgs::JointCommand_<ContainerAllocator> > : public TrueType {};
00189 template<class ContainerAllocator> struct HasHeader< const ::nasa_r2_common_msgs::JointCommand_<ContainerAllocator> > : public TrueType {};
00190 } // namespace message_traits
00191 } // namespace ros
00192 
00193 namespace ros
00194 {
00195 namespace serialization
00196 {
00197 
00198 template<class ContainerAllocator> struct Serializer< ::nasa_r2_common_msgs::JointCommand_<ContainerAllocator> >
00199 {
00200   template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00201   {
00202     stream.next(m.header);
00203     stream.next(m.name);
00204     stream.next(m.desiredPosition);
00205     stream.next(m.desiredPositionVelocityLimit);
00206     stream.next(m.feedForwardTorque);
00207     stream.next(m.proportionalGain);
00208     stream.next(m.derivativeGain);
00209     stream.next(m.integralGain);
00210     stream.next(m.positionLoopTorqueLimit);
00211     stream.next(m.positionLoopWindupLimit);
00212     stream.next(m.torqueLoopVelocityLimit);
00213   }
00214 
00215   ROS_DECLARE_ALLINONE_SERIALIZER;
00216 }; // struct JointCommand_
00217 } // namespace serialization
00218 } // namespace ros
00219 
00220 namespace ros
00221 {
00222 namespace message_operations
00223 {
00224 
00225 template<class ContainerAllocator>
00226 struct Printer< ::nasa_r2_common_msgs::JointCommand_<ContainerAllocator> >
00227 {
00228   template<typename Stream> static void stream(Stream& s, const std::string& indent, const  ::nasa_r2_common_msgs::JointCommand_<ContainerAllocator> & v) 
00229   {
00230     s << indent << "header: ";
00231 s << std::endl;
00232     Printer< ::std_msgs::Header_<ContainerAllocator> >::stream(s, indent + "  ", v.header);
00233     s << indent << "name[]" << std::endl;
00234     for (size_t i = 0; i < v.name.size(); ++i)
00235     {
00236       s << indent << "  name[" << i << "]: ";
00237       Printer<std::basic_string<char, std::char_traits<char>, typename ContainerAllocator::template rebind<char>::other > >::stream(s, indent + "  ", v.name[i]);
00238     }
00239     s << indent << "desiredPosition[]" << std::endl;
00240     for (size_t i = 0; i < v.desiredPosition.size(); ++i)
00241     {
00242       s << indent << "  desiredPosition[" << i << "]: ";
00243       Printer<double>::stream(s, indent + "  ", v.desiredPosition[i]);
00244     }
00245     s << indent << "desiredPositionVelocityLimit[]" << std::endl;
00246     for (size_t i = 0; i < v.desiredPositionVelocityLimit.size(); ++i)
00247     {
00248       s << indent << "  desiredPositionVelocityLimit[" << i << "]: ";
00249       Printer<double>::stream(s, indent + "  ", v.desiredPositionVelocityLimit[i]);
00250     }
00251     s << indent << "feedForwardTorque[]" << std::endl;
00252     for (size_t i = 0; i < v.feedForwardTorque.size(); ++i)
00253     {
00254       s << indent << "  feedForwardTorque[" << i << "]: ";
00255       Printer<double>::stream(s, indent + "  ", v.feedForwardTorque[i]);
00256     }
00257     s << indent << "proportionalGain[]" << std::endl;
00258     for (size_t i = 0; i < v.proportionalGain.size(); ++i)
00259     {
00260       s << indent << "  proportionalGain[" << i << "]: ";
00261       Printer<double>::stream(s, indent + "  ", v.proportionalGain[i]);
00262     }
00263     s << indent << "derivativeGain[]" << std::endl;
00264     for (size_t i = 0; i < v.derivativeGain.size(); ++i)
00265     {
00266       s << indent << "  derivativeGain[" << i << "]: ";
00267       Printer<double>::stream(s, indent + "  ", v.derivativeGain[i]);
00268     }
00269     s << indent << "integralGain[]" << std::endl;
00270     for (size_t i = 0; i < v.integralGain.size(); ++i)
00271     {
00272       s << indent << "  integralGain[" << i << "]: ";
00273       Printer<double>::stream(s, indent + "  ", v.integralGain[i]);
00274     }
00275     s << indent << "positionLoopTorqueLimit[]" << std::endl;
00276     for (size_t i = 0; i < v.positionLoopTorqueLimit.size(); ++i)
00277     {
00278       s << indent << "  positionLoopTorqueLimit[" << i << "]: ";
00279       Printer<double>::stream(s, indent + "  ", v.positionLoopTorqueLimit[i]);
00280     }
00281     s << indent << "positionLoopWindupLimit[]" << std::endl;
00282     for (size_t i = 0; i < v.positionLoopWindupLimit.size(); ++i)
00283     {
00284       s << indent << "  positionLoopWindupLimit[" << i << "]: ";
00285       Printer<double>::stream(s, indent + "  ", v.positionLoopWindupLimit[i]);
00286     }
00287     s << indent << "torqueLoopVelocityLimit[]" << std::endl;
00288     for (size_t i = 0; i < v.torqueLoopVelocityLimit.size(); ++i)
00289     {
00290       s << indent << "  torqueLoopVelocityLimit[" << i << "]: ";
00291       Printer<double>::stream(s, indent + "  ", v.torqueLoopVelocityLimit[i]);
00292     }
00293   }
00294 };
00295 
00296 
00297 } // namespace message_operations
00298 } // namespace ros
00299 
00300 #endif // NASA_R2_COMMON_MSGS_MESSAGE_JOINTCOMMAND_H
00301 


nasa_r2_common_msgs
Author(s): Paul Dinh. Maintained by Jennifer Turner
autogenerated on Mon Oct 6 2014 02:42:34