00001 #ifndef WALK_INTERFACE_TYPES_HH 00002 # define WALK_INTERFACE_TYPES_HH 00003 # include <vector> 00004 # include <Eigen/Core> 00005 00006 # include <boost/date_time/posix_time/posix_time.hpp> 00007 00015 # define WALK_INTERFACES_EIGEN_STL_VECTOR(T) \ 00016 std::vector<T, Eigen::aligned_allocator<std::pair<const int, T> > > 00017 00018 namespace walk 00019 { 00023 typedef Eigen::Matrix<double, 4, 4> HomogeneousMatrix3d; 00024 00028 typedef Eigen::Matrix<double, 3, 3> HomogeneousMatrix2d; 00029 00031 typedef Eigen::Vector2d Vector2d; 00033 typedef Eigen::Vector3d Vector3d; 00034 00036 typedef Eigen::Matrix<double, 3, 1> Footprint2d; 00037 00039 typedef Eigen::VectorXd Posture; 00040 00042 typedef boost::posix_time::ptime Time; 00044 typedef boost::posix_time::time_duration TimeDuration; 00045 00047 typedef WALK_INTERFACES_EIGEN_STL_VECTOR(Footprint2d) Footprint2dSequence; 00048 00049 } // end of namespace walk. 00050 00051 #endif //! WALK_INTERFACE_TYPES_HH