MRPT  1.9.9
mrpt::poses::CPose3DInterpolator Class Reference

Detailed Description

This class stores a time-stamped trajectory in SE(3) (CPose3D poses).

It can also interpolate SE(3) poses over time using linear, splines or SLERP interpolation, as set in CPose3DInterpolator::setInterpolationMethod() Usage:

Time is represented with mrpt::Clock::time_point. See mrpt::system for methods and utilities to manage these time references.

See TInterpolatorMethod for the list of interpolation methods. The default method at constructor is "imLinearSlerp".

See also
CPoseOrPoint

Definition at line 47 of file CPose3DInterpolator.h.

#include <mrpt/poses/CPose3DInterpolator.h>

Inheritance diagram for mrpt::poses::CPose3DInterpolator:
Inheritance graph

Public Member Functions

voidoperator new (size_t size)
 
voidoperator new[] (size_t size)
 
void operator delete (void *ptr) noexcept
 
void operator delete[] (void *ptr) noexcept
 
void operator delete (void *memory, void *ptr) noexcept
 
voidoperator new (size_t size, const std::nothrow_t &) noexcept
 
void operator delete (void *ptr, const std::nothrow_t &) noexcept
 
virtual mxArraywriteToMatlab () const
 Introduces a pure virtual method responsible for writing to a mxArray Matlab object, typically a MATLAB struct whose contents are documented in each derived class. More...
 
void insert (const mrpt::Clock::time_point &t, const pose_t &p)
 Inserts a new pose in the sequence. More...
 
void insert (const mrpt::Clock::time_point &t, const cpose_t &p)
 Overload (slower) More...
 
pose_tinterpolate (const mrpt::Clock::time_point &t, pose_t &out_interp, bool &out_valid_interp) const
 Returns the pose at a given time, or interpolates using splines if there is not an exact match. More...
 
cpose_tinterpolate (const mrpt::Clock::time_point &t, cpose_t &out_interp, bool &out_valid_interp) const
 
void clear ()
 Clears the current sequence of poses. More...
 
void setMaxTimeInterpolation (const mrpt::Clock::duration &time)
 Set value of the maximum time to consider interpolation. More...
 
mrpt::Clock::duration getMaxTimeInterpolation ()
 Set value of the maximum time to consider interpolation. More...
 
bool getPreviousPoseWithMinDistance (const mrpt::Clock::time_point &t, double distance, pose_t &out_pose)
 Get the previous CPose3D in the map with a minimum defined distance. More...
 
bool getPreviousPoseWithMinDistance (const mrpt::Clock::time_point &t, double distance, cpose_t &out_pose)
 
bool saveToTextFile (const std::string &s) const
 Saves the points in the interpolator to a text file, with this format: Each row contains these elements separated by spaces: More...
 
bool saveInterpolatedToTextFile (const std::string &s, const mrpt::Clock::duration &period) const
 Saves the points in the interpolator to a text file, with the same format that saveToTextFile, but interpolating the path with the given period in seconds. More...
 
bool loadFromTextFile (const std::string &s)
 Loads from a text file, in the format described by saveToTextFile. More...
 
void getBoundingBox (point_t &minCorner, point_t &maxCorner) const
 Computes the bounding box in all Euclidean coordinates of the whole path. More...
 
void setInterpolationMethod (TInterpolatorMethod method)
 Change the method used to interpolate the robot path. More...
 
TInterpolatorMethod getInterpolationMethod () const
 Returns the currently set interpolation method. More...
 
void filter (unsigned int component, unsigned int samples)
 Filters by averaging one of the components of the pose data within the interpolator. More...
 
RTTI classes and functions for polymorphic hierarchies
mrpt::rtti::CObject::Ptr duplicateGetSmartPtr () const
 Returns a copy of the object, indepently of its class, as a smart pointer (the newly created object will exist as long as any copy of this smart pointer). More...
 

Static Public Member Functions

static voidoperator new (size_t size, void *ptr)
 

Protected Member Functions

void impl_interpolation (const TTimePosePair &p1, const TTimePosePair &p2, const TTimePosePair &p3, const TTimePosePair &p4, const TInterpolatorMethod method, const mrpt::Clock::time_point &td, pose_t &out_interp) const
 
void impl_interpolation (const TTimePosePair &p1, const TTimePosePair &p2, const TTimePosePair &p3, const TTimePosePair &p4, const TInterpolatorMethod method, const mrpt::Clock::time_point &t, pose_t &out_interp) const
 
void impl_interpolation (const TTimePosePair &p1, const TTimePosePair &p2, const TTimePosePair &p3, const TTimePosePair &p4, const TInterpolatorMethod method, const mrpt::Clock::time_point &t, pose_t &out_interp) const
 
CSerializable virtual methods
uint8_t serializeGetVersion () const override
 Must return the current versioning number of the object. More...
 
void serializeTo (mrpt::serialization::CArchive &out) const override
 Pure virtual method for writing (serializing) to an abstract archive. More...
 
void serializeFrom (mrpt::serialization::CArchive &in, uint8_t serial_version) override
 Pure virtual method for reading (deserializing) from an abstract archive. More...
 

Protected Attributes

TPath m_path
 The sequence of poses. More...
 
mrpt::Clock::duration maxTimeInterpolation
 Maximum time considered to interpolate. More...
 
TInterpolatorMethod m_method
 

RTTI stuff

using Ptr = std::shared_ptr< CPose3DInterpolator >
 
using ConstPtr = std::shared_ptr< const CPose3DInterpolator >
 
using UniquePtr = std::unique_ptr< CPose3DInterpolator >
 
using ConstUniquePtr = std::unique_ptr< const CPose3DInterpolator >
 
static mrpt::rtti::CLASSINIT _init_CPose3DInterpolator
 
static const mrpt::rtti::TRuntimeClassId runtimeClassId
 
static constexpr const char * className = "CPose3DInterpolator"
 
static const mrpt::rtti::TRuntimeClassId_GetBaseClass ()
 
static constexpr auto getClassName ()
 
static const mrpt::rtti::TRuntimeClassIdGetRuntimeClassIdStatic ()
 
static mrpt::rtti::CObjectCreateObject ()
 
template<typename... Args>
static Ptr Create (Args &&... args)
 
template<typename... Args>
static UniquePtr CreateUnique (Args &&... args)
 
virtual const mrpt::rtti::TRuntimeClassIdGetRuntimeClass () const override
 Returns information about the class of an object in runtime. More...
 
virtual mrpt::rtti::CObjectclone () const override
 Returns a deep copy (clone) of the object, indepently of its class. More...
 

Type definitions and STL-like container interface

using pose_t = typename mrpt::poses::SE_traits< DIM >::lightweight_pose_t
 TPose2D or TPose3D. More...
 
using cpose_t = typename mrpt::poses::SE_traits< DIM >::pose_t
 CPose2D or CPose3D. More...
 
using point_t = typename mrpt::poses::SE_traits< DIM >::point_t
 TPoint2D or TPoint3D. More...
 
using TTimePosePair = std::pair< mrpt::Clock::time_point, pose_t >
 
using TPath = std::map< mrpt::Clock::time_point, pose_t >
 
using iterator = typename TPath::iterator
 
using const_iterator = typename TPath::const_iterator
 
using reverse_iterator = typename TPath::reverse_iterator
 
using const_reverse_iterator = typename TPath::const_reverse_iterator
 
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
 

Member Typedef Documentation

◆ const_iterator

using mrpt::poses::CPoseInterpolatorBase< DIM >::const_iterator = typename TPath::const_iterator
inherited

Definition at line 69 of file CPoseInterpolatorBase.h.

◆ const_reverse_iterator

using mrpt::poses::CPoseInterpolatorBase< DIM >::const_reverse_iterator = typename TPath::const_reverse_iterator
inherited

Definition at line 71 of file CPoseInterpolatorBase.h.

◆ ConstPtr

◆ ConstUniquePtr

Definition at line 50 of file CPose3DInterpolator.h.

◆ cpose_t

using mrpt::poses::CPoseInterpolatorBase< DIM >::cpose_t = typename mrpt::poses::SE_traits<DIM>::pose_t
inherited

CPose2D or CPose3D.

Definition at line 62 of file CPoseInterpolatorBase.h.

◆ iterator

using mrpt::poses::CPoseInterpolatorBase< DIM >::iterator = typename TPath::iterator
inherited

Definition at line 68 of file CPoseInterpolatorBase.h.

◆ point_t

TPoint2D or TPoint3D.

Definition at line 64 of file CPoseInterpolatorBase.h.

◆ pose_t

using mrpt::poses::CPoseInterpolatorBase< DIM >::pose_t = typename mrpt::poses::SE_traits<DIM>::lightweight_pose_t
inherited

TPose2D or TPose3D.

Definition at line 60 of file CPoseInterpolatorBase.h.

◆ Ptr

A type for the associated smart pointer

Definition at line 50 of file CPose3DInterpolator.h.

◆ reverse_iterator

using mrpt::poses::CPoseInterpolatorBase< DIM >::reverse_iterator = typename TPath::reverse_iterator
inherited

Definition at line 70 of file CPoseInterpolatorBase.h.

◆ TPath

Definition at line 67 of file CPoseInterpolatorBase.h.

◆ TTimePosePair

Definition at line 66 of file CPoseInterpolatorBase.h.

◆ UniquePtr

Definition at line 50 of file CPose3DInterpolator.h.

Member Function Documentation

◆ _GetBaseClass()

static const mrpt::rtti::TRuntimeClassId* mrpt::poses::CPose3DInterpolator::_GetBaseClass ( )
staticprotected

◆ begin() [1/2]

iterator mrpt::poses::CPoseInterpolatorBase< DIM >::begin ( )
inlineinherited

◆ begin() [2/2]

const_iterator mrpt::poses::CPoseInterpolatorBase< DIM >::begin ( ) const
inlineinherited

◆ cbegin()

const_iterator mrpt::poses::CPoseInterpolatorBase< DIM >::cbegin ( ) const
inlineinherited

◆ cend()

const_iterator mrpt::poses::CPoseInterpolatorBase< DIM >::cend ( ) const
inlineinherited

◆ clear()

void mrpt::poses::CPoseInterpolatorBase< DIM >::clear ( void  )
inherited

Clears the current sequence of poses.

Definition at line 32 of file CPoseInterpolatorBase.hpp.

◆ clone()

virtual mrpt::rtti::CObject* mrpt::poses::CPose3DInterpolator::clone ( ) const
overridevirtual

Returns a deep copy (clone) of the object, indepently of its class.

Implements mrpt::rtti::CObject.

◆ Create()

template<typename... Args>
static Ptr mrpt::poses::CPose3DInterpolator::Create ( Args &&...  args)
inlinestatic

Definition at line 50 of file CPose3DInterpolator.h.

◆ CreateObject()

static mrpt::rtti::CObject* mrpt::poses::CPose3DInterpolator::CreateObject ( )
static

◆ CreateUnique()

template<typename... Args>
static UniquePtr mrpt::poses::CPose3DInterpolator::CreateUnique ( Args &&...  args)
inlinestatic

Definition at line 50 of file CPose3DInterpolator.h.

◆ duplicateGetSmartPtr()

mrpt::rtti::CObject::Ptr CObject::duplicateGetSmartPtr ( ) const
inlineinherited

Returns a copy of the object, indepently of its class, as a smart pointer (the newly created object will exist as long as any copy of this smart pointer).

Definition at line 168 of file CObject.h.

References mrpt::rtti::CObject::clone().

Referenced by mrpt::obs::CRawlog::addActions(), and mrpt::obs::CRawlog::addObservations().

◆ empty()

bool mrpt::poses::CPoseInterpolatorBase< DIM >::empty ( ) const
inlineinherited

◆ end() [1/2]

◆ end() [2/2]

◆ erase()

iterator mrpt::poses::CPoseInterpolatorBase< DIM >::erase ( iterator  element_to_erase)
inlineinherited

◆ filter()

void mrpt::poses::CPoseInterpolatorBase< DIM >::filter ( unsigned int  component,
unsigned int  samples 
)
inherited

Filters by averaging one of the components of the pose data within the interpolator.

The width of the filter is set by the number of samples.

Parameters
component[IN] The index of the component to filter: 0 (x), 1 (y), 2 (z), 3 (yaw), 4 (pitch) or 5 (roll)
samples[IN] The width of the average filter.

Definition at line 346 of file CPoseInterpolatorBase.hpp.

References mrpt::poses::CPose3D::asTPose(), mrpt::math::distance(), mrpt::poses::CPose3DPDFParticles::getMean(), and mrpt::bayes::CParticleFilterData< T, STORAGE >::m_particles.

◆ find() [1/2]

◆ find() [2/2]

◆ getBoundingBox()

void mrpt::poses::CPoseInterpolatorBase< DIM >::getBoundingBox ( point_t minCorner,
point_t maxCorner 
) const
inherited

Computes the bounding box in all Euclidean coordinates of the whole path.

Exceptions
std::exceptionOn empty path

Definition at line 313 of file CPoseInterpolatorBase.hpp.

References ASSERT_, mrpt::keep_max(), mrpt::keep_min(), MRPT_END, MRPT_START, and static_size.

◆ getClassName()

static constexpr auto mrpt::poses::CPose3DInterpolator::getClassName ( )
inlinestatic

Definition at line 50 of file CPose3DInterpolator.h.

◆ getInterpolationMethod()

TInterpolatorMethod mrpt::poses::CPoseInterpolatorBase< DIM >::getInterpolationMethod ( ) const
inherited

Returns the currently set interpolation method.

See also
setInterpolationMethod()

Definition at line 340 of file CPoseInterpolatorBase.hpp.

◆ getMaxTimeInterpolation()

mrpt::Clock::duration mrpt::poses::CPoseInterpolatorBase< DIM >::getMaxTimeInterpolation ( )
inherited

Set value of the maximum time to consider interpolation.

Definition at line 207 of file CPoseInterpolatorBase.hpp.

◆ getPreviousPoseWithMinDistance() [1/2]

bool mrpt::poses::CPoseInterpolatorBase< DIM >::getPreviousPoseWithMinDistance ( const mrpt::Clock::time_point t,
double  distance,
pose_t out_pose 
)
inherited

Get the previous CPose3D in the map with a minimum defined distance.

Returns
true if pose was found, false otherwise

Definition at line 169 of file CPoseInterpolatorBase.hpp.

References mrpt::math::distance(), mrpt::poses::CPoseInterpolatorBase< DIM >::find(), and mrpt::math::norm().

◆ getPreviousPoseWithMinDistance() [2/2]

bool mrpt::poses::CPoseInterpolatorBase< DIM >::getPreviousPoseWithMinDistance ( const mrpt::Clock::time_point t,
double  distance,
cpose_t out_pose 
)
inherited

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 160 of file CPoseInterpolatorBase.hpp.

References mrpt::math::distance().

◆ GetRuntimeClass()

virtual const mrpt::rtti::TRuntimeClassId* mrpt::poses::CPose3DInterpolator::GetRuntimeClass ( ) const
overridevirtual

Returns information about the class of an object in runtime.

Reimplemented from mrpt::serialization::CSerializable.

◆ GetRuntimeClassIdStatic()

static const mrpt::rtti::TRuntimeClassId& mrpt::poses::CPose3DInterpolator::GetRuntimeClassIdStatic ( )
static

◆ impl_interpolation() [1/3]

◆ impl_interpolation() [2/3]

◆ impl_interpolation() [3/3]

void mrpt::poses::CPoseInterpolatorBase< DIM >::impl_interpolation ( const TTimePosePair p1,
const TTimePosePair p2,
const TTimePosePair p3,
const TTimePosePair p4,
const TInterpolatorMethod  method,
const mrpt::Clock::time_point td,
pose_t out_interp 
) const
protectedinherited

◆ insert() [1/2]

void mrpt::poses::CPoseInterpolatorBase< DIM >::insert ( const mrpt::Clock::time_point t,
const pose_t p 
)
inherited

Inserts a new pose in the sequence.

It overwrites any previously existing pose at exactly the same time.

Definition at line 43 of file CPoseInterpolatorBase.hpp.

◆ insert() [2/2]

void mrpt::poses::CPoseInterpolatorBase< DIM >::insert ( const mrpt::Clock::time_point t,
const cpose_t p 
)
inherited

Overload (slower)

Definition at line 38 of file CPoseInterpolatorBase.hpp.

◆ interpolate() [1/2]

CPoseInterpolatorBase< DIM >::pose_t & mrpt::poses::CPoseInterpolatorBase< DIM >::interpolate ( const mrpt::Clock::time_point t,
pose_t out_interp,
bool &  out_valid_interp 
) const
inherited

Returns the pose at a given time, or interpolates using splines if there is not an exact match.

Parameters
tThe time of the point to interpolate.
out_interpThe output interpolated pose.
out_valid_interpWhether there was information enough to compute the interpolation.
Returns
A reference to out_interp

Definition at line 61 of file CPoseInterpolatorBase.hpp.

References mrpt::poses::imLinear2Neig, mrpt::poses::imLinearSlerp, mrpt::poses::imSplineSlerp, and static_size.

◆ interpolate() [2/2]

CPoseInterpolatorBase< DIM >::cpose_t & mrpt::poses::CPoseInterpolatorBase< DIM >::interpolate ( const mrpt::Clock::time_point t,
cpose_t out_interp,
bool &  out_valid_interp 
) const
inherited

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 52 of file CPoseInterpolatorBase.hpp.

References mrpt::math::interpolate().

◆ loadFromTextFile()

bool mrpt::poses::CPoseInterpolatorBase< DIM >::loadFromTextFile ( const std::string s)
inherited

Loads from a text file, in the format described by saveToTextFile.

Returns
true on success, false on any error.
Exceptions
std::exceptionOn invalid file format

Definition at line 279 of file CPoseInterpolatorBase.hpp.

References ASSERT_, mrpt::containers::clear(), MRPT_END, MRPT_START, static_size, and mrpt::system::time_tToTimestamp().

◆ lower_bound() [1/2]

iterator mrpt::poses::CPoseInterpolatorBase< DIM >::lower_bound ( const mrpt::Clock::time_point t)
inlineinherited

◆ lower_bound() [2/2]

const_iterator mrpt::poses::CPoseInterpolatorBase< DIM >::lower_bound ( const mrpt::Clock::time_point t) const
inlineinherited

◆ operator delete() [1/3]

void mrpt::poses::CPose3DInterpolator::operator delete ( void ptr,
const std::nothrow_t &   
)
inlinenoexcept

Definition at line 50 of file CPose3DInterpolator.h.

◆ operator delete() [2/3]

void mrpt::poses::CPose3DInterpolator::operator delete ( void ptr)
inlinenoexcept

Definition at line 50 of file CPose3DInterpolator.h.

◆ operator delete() [3/3]

void mrpt::poses::CPose3DInterpolator::operator delete ( void memory,
void ptr 
)
inlinenoexcept

Definition at line 50 of file CPose3DInterpolator.h.

◆ operator delete[]()

void mrpt::poses::CPose3DInterpolator::operator delete[] ( void ptr)
inlinenoexcept

Definition at line 50 of file CPose3DInterpolator.h.

◆ operator new() [1/3]

void* mrpt::poses::CPose3DInterpolator::operator new ( size_t  size)
inline

Definition at line 50 of file CPose3DInterpolator.h.

◆ operator new() [2/3]

static void* mrpt::poses::CPose3DInterpolator::operator new ( size_t  size,
void ptr 
)
inlinestatic

Definition at line 50 of file CPose3DInterpolator.h.

◆ operator new() [3/3]

void* mrpt::poses::CPose3DInterpolator::operator new ( size_t  size,
const std::nothrow_t &   
)
inlinenoexcept

Definition at line 50 of file CPose3DInterpolator.h.

◆ operator new[]()

void* mrpt::poses::CPose3DInterpolator::operator new[] ( size_t  size)
inline

Definition at line 50 of file CPose3DInterpolator.h.

◆ rbegin() [1/2]

◆ rbegin() [2/2]

const_reverse_iterator mrpt::poses::CPoseInterpolatorBase< DIM >::rbegin ( ) const
inlineinherited

◆ rend() [1/2]

◆ rend() [2/2]

◆ saveInterpolatedToTextFile()

bool mrpt::poses::CPoseInterpolatorBase< DIM >::saveInterpolatedToTextFile ( const std::string s,
const mrpt::Clock::duration period 
) const
inherited

Saves the points in the interpolator to a text file, with the same format that saveToTextFile, but interpolating the path with the given period in seconds.

See also
loadFromTextFile
Returns
true on success, false on any error.

Definition at line 242 of file CPoseInterpolatorBase.hpp.

References mrpt::format(), mrpt::math::interpolate(), and mrpt::system::timestampTotime_t().

◆ saveToTextFile()

bool mrpt::poses::CPoseInterpolatorBase< DIM >::saveToTextFile ( const std::string s) const
inherited

Saves the points in the interpolator to a text file, with this format: Each row contains these elements separated by spaces:

Definition at line 213 of file CPoseInterpolatorBase.hpp.

References mrpt::format(), and mrpt::system::timestampTotime_t().

◆ serializeFrom()

void CPose3DInterpolator::serializeFrom ( mrpt::serialization::CArchive in,
uint8_t  serial_version 
)
overrideprotectedvirtual

Pure virtual method for reading (deserializing) from an abstract archive.

Users don't call this method directly. Instead, use stream >> object;.

Parameters
inThe input binary stream where the object data must read from.
versionThe version of the object stored in the stream: use this version number in your code to know how to read the incoming data.
Exceptions
std::exceptionOn any I/O error

Implements mrpt::serialization::CSerializable.

Definition at line 25 of file CPose3DInterpolator.cpp.

References mrpt::poses::CPoseInterpolatorBase< 3 >::m_path, and MRPT_THROW_UNKNOWN_SERIALIZATION_VERSION.

◆ serializeGetVersion()

uint8_t CPose3DInterpolator::serializeGetVersion ( ) const
overrideprotectedvirtual

Must return the current versioning number of the object.

Start in zero for new classes, and increments each time there is a change in the stored format.

Implements mrpt::serialization::CSerializable.

Definition at line 20 of file CPose3DInterpolator.cpp.

◆ serializeTo()

void CPose3DInterpolator::serializeTo ( mrpt::serialization::CArchive out) const
overrideprotectedvirtual

Pure virtual method for writing (serializing) to an abstract archive.

Users don't call this method directly. Instead, use stream << object;.

Exceptions
std::exceptionOn any I/O error

Implements mrpt::serialization::CSerializable.

Definition at line 21 of file CPose3DInterpolator.cpp.

References mrpt::poses::CPoseInterpolatorBase< 3 >::m_path.

◆ setInterpolationMethod()

void mrpt::poses::CPoseInterpolatorBase< DIM >::setInterpolationMethod ( TInterpolatorMethod  method)
inherited

Change the method used to interpolate the robot path.

The default method at construction is "imSpline".

See also
getInterpolationMethod()

Definition at line 334 of file CPoseInterpolatorBase.hpp.

◆ setMaxTimeInterpolation()

void mrpt::poses::CPoseInterpolatorBase< DIM >::setMaxTimeInterpolation ( const mrpt::Clock::duration time)
inherited

Set value of the maximum time to consider interpolation.

If set to a negative value, the check is disabled (default behavior).

Definition at line 200 of file CPoseInterpolatorBase.hpp.

References ASSERT_.

◆ size()

size_t mrpt::poses::CPoseInterpolatorBase< DIM >::size ( ) const
inlineinherited

◆ upper_bound() [1/2]

iterator mrpt::poses::CPoseInterpolatorBase< DIM >::upper_bound ( const mrpt::Clock::time_point t)
inlineinherited

◆ upper_bound() [2/2]

const_iterator mrpt::poses::CPoseInterpolatorBase< DIM >::upper_bound ( const mrpt::Clock::time_point t) const
inlineinherited

◆ writeToMatlab()

virtual mxArray* mrpt::serialization::CSerializable::writeToMatlab ( ) const
inlinevirtualinherited

Introduces a pure virtual method responsible for writing to a mxArray Matlab object, typically a MATLAB struct whose contents are documented in each derived class.

Returns
A new mxArray (caller is responsible of memory freeing) or nullptr is class does not support conversion to MATLAB.

Definition at line 68 of file CSerializable.h.

Member Data Documentation

◆ _init_CPose3DInterpolator

mrpt::rtti::CLASSINIT mrpt::poses::CPose3DInterpolator::_init_CPose3DInterpolator
staticprotected

Definition at line 50 of file CPose3DInterpolator.h.

◆ className

constexpr const char* mrpt::poses::CPose3DInterpolator::className = "CPose3DInterpolator"
static

Definition at line 50 of file CPose3DInterpolator.h.

◆ m_method

TInterpolatorMethod mrpt::poses::CPoseInterpolatorBase< DIM >::m_method
protectedinherited

Definition at line 206 of file CPoseInterpolatorBase.h.

◆ m_path

TPath mrpt::poses::CPoseInterpolatorBase< DIM >::m_path
protectedinherited

The sequence of poses.

Definition at line 201 of file CPoseInterpolatorBase.h.

Referenced by serializeFrom(), and serializeTo().

◆ maxTimeInterpolation

mrpt::Clock::duration mrpt::poses::CPoseInterpolatorBase< DIM >::maxTimeInterpolation
protectedinherited

Maximum time considered to interpolate.

If the difference between the desired timestamp where to interpolate and the next timestamp stored in the map is bigger than this value, the interpolation will not be done.

Definition at line 205 of file CPoseInterpolatorBase.h.

◆ runtimeClassId

const mrpt::rtti::TRuntimeClassId mrpt::poses::CPose3DInterpolator::runtimeClassId
staticprotected

Definition at line 50 of file CPose3DInterpolator.h.




Page generated by Doxygen 1.8.14 for MRPT 1.9.9 Git: 7d5e6d718 Fri Aug 24 01:51:28 2018 +0200 at lun nov 2 08:35:50 CET 2020