template class mrpt::poses::CPoseInterpolatorBaseΒΆ

Base class for SE(2)/SE(3) interpolators.

See docs for derived classes.

#include <mrpt/poses/CPoseInterpolatorBase.h>

template <int DIM>
class CPoseInterpolatorBase
{
public:
    // typedefs

    typedef std::pair<mrpt::Clock::time_point, pose_t> TTimePosePair;
    typedef std::map<mrpt::Clock::time_point, pose_t> TPath;
    typedef typename TPath::iterator iterator;
    typedef typename TPath::const_iterator const_iterator;
    typedef typename TPath::reverse_iterator reverse_iterator;
    typedef typename TPath::const_reverse_iterator const_reverse_iterator;

    //
methods

    iterator begin();
    const_iterator begin() const;
    const_iterator cbegin() const;
    iterator end();
    const_iterator end() const;
    const_iterator cend() const;
    reverse_iterator rbegin();
    const_reverse_iterator rbegin() const;
    reverse_iterator rend();
    const_reverse_iterator rend() const;
    iterator lower_bound(const mrpt::Clock::time_point& t);
    const_iterator lower_bound(const mrpt::Clock::time_point& t) const;
    iterator upper_bound(const mrpt::Clock::time_point& t);
    const_iterator upper_bound(const mrpt::Clock::time_point& t) const;
    iterator erase(iterator element_to_erase);
    size_t size() const;
    bool empty() const;
    iterator find(const mrpt::Clock::time_point& t);
    const_iterator find(const mrpt::Clock::time_point& t) const;
    pose_t& at(const mrpt::Clock::time_point& t);
    const pose_t& at(const mrpt::Clock::time_point& t) const;
};

// direct descendants

class CPose2DInterpolator;
class CPose3DInterpolator;