DMPTraj.h
Go to the documentation of this file.
00001 /* Auto-generated by genmsg_cpp for file /home/rosbuild/hudson/workspace/doc-fuerte-dmp/doc_stacks/2014-01-03_11-18-08.061454/dmp/msg/DMPTraj.msg */
00002 #ifndef DMP_MESSAGE_DMPTRAJ_H
00003 #define DMP_MESSAGE_DMPTRAJ_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 "dmp/DMPPoint.h"
00018 
00019 namespace dmp
00020 {
00021 template <class ContainerAllocator>
00022 struct DMPTraj_ {
00023   typedef DMPTraj_<ContainerAllocator> Type;
00024 
00025   DMPTraj_()
00026   : points()
00027   , times()
00028   {
00029   }
00030 
00031   DMPTraj_(const ContainerAllocator& _alloc)
00032   : points(_alloc)
00033   , times(_alloc)
00034   {
00035   }
00036 
00037   typedef std::vector< ::dmp::DMPPoint_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::dmp::DMPPoint_<ContainerAllocator> >::other >  _points_type;
00038   std::vector< ::dmp::DMPPoint_<ContainerAllocator> , typename ContainerAllocator::template rebind< ::dmp::DMPPoint_<ContainerAllocator> >::other >  points;
00039 
00040   typedef std::vector<double, typename ContainerAllocator::template rebind<double>::other >  _times_type;
00041   std::vector<double, typename ContainerAllocator::template rebind<double>::other >  times;
00042 
00043 
00044   typedef boost::shared_ptr< ::dmp::DMPTraj_<ContainerAllocator> > Ptr;
00045   typedef boost::shared_ptr< ::dmp::DMPTraj_<ContainerAllocator>  const> ConstPtr;
00046   boost::shared_ptr<std::map<std::string, std::string> > __connection_header;
00047 }; // struct DMPTraj
00048 typedef  ::dmp::DMPTraj_<std::allocator<void> > DMPTraj;
00049 
00050 typedef boost::shared_ptr< ::dmp::DMPTraj> DMPTrajPtr;
00051 typedef boost::shared_ptr< ::dmp::DMPTraj const> DMPTrajConstPtr;
00052 
00053 
00054 template<typename ContainerAllocator>
00055 std::ostream& operator<<(std::ostream& s, const  ::dmp::DMPTraj_<ContainerAllocator> & v)
00056 {
00057   ros::message_operations::Printer< ::dmp::DMPTraj_<ContainerAllocator> >::stream(s, "", v);
00058   return s;}
00059 
00060 } // namespace dmp
00061 
00062 namespace ros
00063 {
00064 namespace message_traits
00065 {
00066 template<class ContainerAllocator> struct IsMessage< ::dmp::DMPTraj_<ContainerAllocator> > : public TrueType {};
00067 template<class ContainerAllocator> struct IsMessage< ::dmp::DMPTraj_<ContainerAllocator>  const> : public TrueType {};
00068 template<class ContainerAllocator>
00069 struct MD5Sum< ::dmp::DMPTraj_<ContainerAllocator> > {
00070   static const char* value() 
00071   {
00072     return "1d088d86ab60cf6a2671bc3c0e99932b";
00073   }
00074 
00075   static const char* value(const  ::dmp::DMPTraj_<ContainerAllocator> &) { return value(); } 
00076   static const uint64_t static_value1 = 0x1d088d86ab60cf6aULL;
00077   static const uint64_t static_value2 = 0x2671bc3c0e99932bULL;
00078 };
00079 
00080 template<class ContainerAllocator>
00081 struct DataType< ::dmp::DMPTraj_<ContainerAllocator> > {
00082   static const char* value() 
00083   {
00084     return "dmp/DMPTraj";
00085   }
00086 
00087   static const char* value(const  ::dmp::DMPTraj_<ContainerAllocator> &) { return value(); } 
00088 };
00089 
00090 template<class ContainerAllocator>
00091 struct Definition< ::dmp::DMPTraj_<ContainerAllocator> > {
00092   static const char* value() 
00093   {
00094     return "# points and times should be the same length\n\
00095 DMPPoint[] points\n\
00096 \n\
00097 # Times of observations, in seconds, starting at zero\n\
00098 float64[] times\n\
00099 \n\
00100 \n\
00101 \n\
00102 ================================================================================\n\
00103 MSG: dmp/DMPPoint\n\
00104 # Positions and velocities of DOFs\n\
00105 #Velocity is only used for movement plans, not for giving demonstrations.\n\
00106 float64[] positions\n\
00107 float64[] velocities\n\
00108 \n\
00109 \n\
00110 \n\
00111 ";
00112   }
00113 
00114   static const char* value(const  ::dmp::DMPTraj_<ContainerAllocator> &) { return value(); } 
00115 };
00116 
00117 } // namespace message_traits
00118 } // namespace ros
00119 
00120 namespace ros
00121 {
00122 namespace serialization
00123 {
00124 
00125 template<class ContainerAllocator> struct Serializer< ::dmp::DMPTraj_<ContainerAllocator> >
00126 {
00127   template<typename Stream, typename T> inline static void allInOne(Stream& stream, T m)
00128   {
00129     stream.next(m.points);
00130     stream.next(m.times);
00131   }
00132 
00133   ROS_DECLARE_ALLINONE_SERIALIZER;
00134 }; // struct DMPTraj_
00135 } // namespace serialization
00136 } // namespace ros
00137 
00138 namespace ros
00139 {
00140 namespace message_operations
00141 {
00142 
00143 template<class ContainerAllocator>
00144 struct Printer< ::dmp::DMPTraj_<ContainerAllocator> >
00145 {
00146   template<typename Stream> static void stream(Stream& s, const std::string& indent, const  ::dmp::DMPTraj_<ContainerAllocator> & v) 
00147   {
00148     s << indent << "points[]" << std::endl;
00149     for (size_t i = 0; i < v.points.size(); ++i)
00150     {
00151       s << indent << "  points[" << i << "]: ";
00152       s << std::endl;
00153       s << indent;
00154       Printer< ::dmp::DMPPoint_<ContainerAllocator> >::stream(s, indent + "    ", v.points[i]);
00155     }
00156     s << indent << "times[]" << std::endl;
00157     for (size_t i = 0; i < v.times.size(); ++i)
00158     {
00159       s << indent << "  times[" << i << "]: ";
00160       Printer<double>::stream(s, indent + "  ", v.times[i]);
00161     }
00162   }
00163 };
00164 
00165 
00166 } // namespace message_operations
00167 } // namespace ros
00168 
00169 #endif // DMP_MESSAGE_DMPTRAJ_H
00170 


dmp
Author(s): Scott Niekum
autogenerated on Fri Jan 3 2014 11:19:23