Class slamcore::PoseInterface

template<typename ClockT>
class slamcore::PoseInterface : public ObjectInterface, public virtual slamcore::MeasurementPointInterface<ClockT>

Representing the 3D pose.

Note

Covariance information is not supported yet.

Subclassed by PoseWriteInterface< ClockT >

Public Types

using Ptr = std::shared_ptr<PoseInterface>
using CPtr = std::shared_ptr<const PoseInterface>
using MeasurementPointT = MeasurementPointInterface<ClockT>

Public Functions

inline virtual ObjectType type() const

Type of the object.

virtual ~PoseInterface() = default
virtual const VectorInterface &getRotation() const = 0

Returns the rotation part - Quaternion X,Y,Z,W.

virtual const VectorInterface &getTranslation() const = 0

Returns the translation vector part.

virtual bool haveCovarianceMatrix() const = 0

Check first if the covariance matrix is provided.

virtual const MatrixInterface &getCovariance() const = 0

Returns the covariance matrix - pose uncertainty.

virtual const ReferenceFrameInterface &getChildReferenceFrame() const = 0

Returns the frame of reference the pose defines