template<typename _Derived>
manif::BundleTangentBase struct

The base class of the Bundle tangent.

Base classes

template<class _Derived>
struct TangentBase<_Derived>
Base class for Lie groups' tangents. Defines the minimum common API.

Public types

using Elements = typename internal::traits<_Derived>::Elements
template<int Idx>
using Element = typename internal::traits<_Derived>::template Element<Idx>
template<int Idx>
using MapElement = typename internal::traits<_Derived>::template MapElement<Idx>
template<int Idx>
using MapConstElement = typename internal::traits<_Derived>::template MapConstElement<Idx>

Public static variables

static std::size_t BundleSize constexpr
Number of elements in the BundleTangent.

Public functions

auto hat() const -> LieAlg
Hat operator.
auto exp(OptJacobianRef J_m_t = {}) const -> LieGroup
Exponential operator.
auto retract(OptJacobianRef J_m_t = {}) const -> MANIF_DEPRECATED LieGroup
This function is deprecated. Please considere using exp instead.
auto rjac() const -> Jacobian
Get the right Jacobian.
auto ljac() const -> Jacobian
Get the left Jacobian.
auto rjacinv() const -> Jacobian
Get the inverse of the right Jacobian.
auto ljacinv() const -> Jacobian
Get the inverse of the left Jacobian.
auto smallAdj() const -> Jacobian
template<int _Idx>
auto element() -> MapElement<_Idx>
Access BundleTangent element as Map.
template<int _Idx>
auto element() const -> MapConstElement<_Idx>
Access BundleTangent element as Map to const.
template<int _Idx>
auto element() -> MapElement< _Idx > -> auto
template<int _Idx>
auto element() const -> MapConstElement< _Idx > -> auto
auto data() -> Scalar*
Access the underlying data by pointer.
auto data() const -> const Scalar*
Access the underlying data by const pointer.
auto coeffs() -> DataType&
Access the underlying data by reference.
auto coeffs() const -> const DataType&
Access the underlying data by const reference.

Protected functions

template<int ... _Idx>
auto hat_impl(internal::intseq<_Idx...>) const -> LieAlg
template<int ... _Idx>
auto exp_impl(OptJacobianRef J_m_t, internal::intseq<_Idx...>) const -> LieGroup
template<int ... _Idx>
auto rjac_impl(internal::intseq<_Idx...>) const -> Jacobian
template<int ... _Idx>
auto ljac_impl(internal::intseq<_Idx...>) const -> Jacobian
template<int ... _Idx>
auto rjacinv_impl(internal::intseq<_Idx...>) const -> Jacobian
template<int ... _Idx>
auto ljacinv_impl(internal::intseq<_Idx...>) const -> Jacobian
template<int ... _Idx>
auto smallAdj_impl(internal::intseq<_Idx...>) const -> Jacobian
auto derived() & -> _Derived& noexcept
auto derived() const & -> const _Derived& noexcept

Function documentation

template<typename _Derived>
LieAlg manif::BundleTangentBase<_Derived>::hat() const

Hat operator.

Returns An element of the Lie algebra.

template<typename _Derived>
LieGroup manif::BundleTangentBase<_Derived>::exp(OptJacobianRef J_m_t = {}) const

Exponential operator.

Returns An element of the Lie Group.

template<typename _Derived> template<int _Idx>
MapElement<_Idx> manif::BundleTangentBase<_Derived>::element()

Access BundleTangent element as Map.

Template parameters
_Idx element index

template<typename _Derived> template<int _Idx>
MapConstElement<_Idx> manif::BundleTangentBase<_Derived>::element() const

Access BundleTangent element as Map to const.

Template parameters
_Idx element index