$search
00001 #ifndef WALK_INTERFACE_STAMPED_FOOTPRINT_HH 00002 # define WALK_INTERFACE_STAMPED_FOOTPRINT_HH 00003 # include <Eigen/Core> 00004 # include <boost/date_time.hpp> 00005 # include <walk_interfaces/types.hh> 00006 00007 namespace walk 00008 { 00012 template <typename T> 00013 struct StampedFootprint 00014 { 00016 typedef T footprint_t; 00017 00021 Time beginTime; 00022 00026 TimeDuration duration; 00027 00029 footprint_t position; 00030 public: 00031 EIGEN_MAKE_ALIGNED_OPERATOR_NEW; 00032 }; 00033 00038 template <typename T> 00039 std::ostream& operator<<(std::ostream& stream, const StampedFootprint<T>& sf); 00040 00042 typedef StampedFootprint<Footprint2d> StampedFootprint2d; 00044 typedef WALK_INTERFACES_EIGEN_STL_VECTOR(StampedFootprint<Footprint2d>) 00045 StampedFootprint2dSequence; 00046 00056 template <typename T> 00057 TimeDuration 00058 computeFootprintSequenceLength 00059 (const WALK_INTERFACES_EIGEN_STL_VECTOR(StampedFootprint<T>)& sequence); 00060 00061 } // end of namespace walk. 00062 00063 # include <walk_interfaces/stamped-footprint.hxx> 00064 #endif //! WALK_INTERFACE_STAMPED_FOOTPRINT_HH