template class mrpt::poses::CPoseInterpolatorBase

Overview

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;

    // construction

    CPoseInterpolatorBase();

    // 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;

    cpose_t& interpolate(
        const mrpt::Clock::time_point& t,
        cpose_t& out_interp,
        bool& out_valid_interp
        ) const;

    bool getPreviousPoseWithMinDistance(
        const mrpt::Clock::time_point& t,
        double distance,
        cpose_t& out_pose
        );
};

// direct descendants

class CPose2DInterpolator;
class CPose3DInterpolator;

Construction

CPoseInterpolatorBase()

Default ctor: empty sequence of poses.