farm-ng-core
sophus::QuaternionImpl< TScalar > Class Template Reference

#include <quaternion.h>

Public Types

using Scalar = TScalar
 
using Params = Eigen::Vector< Scalar, kNumParams >
 
template<class TCompatibleScalar >
using ParamsReturn = Eigen::Vector< typename Eigen::ScalarBinaryOpTraits< Scalar, TCompatibleScalar >::ReturnType, 4 >
 

Static Public Member Functions

static auto zero () -> Eigen::Vector< Scalar, 4 >
 
static auto one () -> Eigen::Vector< Scalar, 4 >
 
static auto areParamsValid (Params const &) -> sophus::Expected< Success >
 
static auto paramsExamples () -> std::vector< Params >
 
static auto invalidParamsExamples () -> std::vector< Params >
 
template<class TCompatibleScalar >
static auto multiplication (Eigen::Vector< Scalar, 4 > const &lhs, Eigen::Vector< TCompatibleScalar, 4 > const &rhs) -> ParamsReturn< TCompatibleScalar >
 
template<class TCompatibleScalar >
static auto addition (Eigen::Vector< Scalar, 4 > const &a, Eigen::Vector< TCompatibleScalar, 4 > const &b) -> ParamsReturn< TCompatibleScalar >
 
static auto conjugate (Eigen::Vector< Scalar, 4 > const &a) -> Eigen::Vector< Scalar, 4 >
 
static auto inverse (Eigen::Vector< Scalar, 4 > const &q) -> Eigen::Vector< Scalar, 4 >
 
static auto norm (Eigen::Vector< Scalar, 4 > const &q) -> Scalar
 
static auto squaredNorm (Eigen::Vector< Scalar, 4 > const &q) -> Scalar
 

Static Public Attributes

static constexpr int kNumParams = 4
 
static constexpr bool kIsCommutative = false
 

Member Typedef Documentation

◆ Params

template<class TScalar >
using sophus::QuaternionImpl< TScalar >::Params = Eigen::Vector<Scalar, kNumParams>

◆ ParamsReturn

template<class TScalar >
template<class TCompatibleScalar >
using sophus::QuaternionImpl< TScalar >::ParamsReturn = Eigen::Vector< typename Eigen::ScalarBinaryOpTraits<Scalar, TCompatibleScalar>:: ReturnType, 4>

◆ Scalar

template<class TScalar >
using sophus::QuaternionImpl< TScalar >::Scalar = TScalar

Member Function Documentation

◆ addition()

template<class TScalar >
template<class TCompatibleScalar >
static auto sophus::QuaternionImpl< TScalar >::addition ( Eigen::Vector< Scalar, 4 > const &  a,
Eigen::Vector< TCompatibleScalar, 4 > const &  b 
) -> ParamsReturn<TCompatibleScalar>
inlinestatic

◆ areParamsValid()

template<class TScalar >
static auto sophus::QuaternionImpl< TScalar >::areParamsValid ( Params const &  ) -> sophus::Expected<Success>
inlinestatic

◆ conjugate()

template<class TScalar >
static auto sophus::QuaternionImpl< TScalar >::conjugate ( Eigen::Vector< Scalar, 4 > const &  a) -> Eigen::Vector<Scalar, 4>
inlinestatic

◆ invalidParamsExamples()

template<class TScalar >
static auto sophus::QuaternionImpl< TScalar >::invalidParamsExamples ( ) -> std::vector<Params>
inlinestatic

◆ inverse()

template<class TScalar >
static auto sophus::QuaternionImpl< TScalar >::inverse ( Eigen::Vector< Scalar, 4 > const &  q) -> Eigen::Vector<Scalar, 4>
inlinestatic

◆ multiplication()

template<class TScalar >
template<class TCompatibleScalar >
static auto sophus::QuaternionImpl< TScalar >::multiplication ( Eigen::Vector< Scalar, 4 > const &  lhs,
Eigen::Vector< TCompatibleScalar, 4 > const &  rhs 
) -> ParamsReturn<TCompatibleScalar>
inlinestatic

◆ norm()

template<class TScalar >
static auto sophus::QuaternionImpl< TScalar >::norm ( Eigen::Vector< Scalar, 4 > const &  q) -> Scalar
inlinestatic

◆ one()

template<class TScalar >
static auto sophus::QuaternionImpl< TScalar >::one ( ) -> Eigen::Vector<Scalar, 4>
inlinestatic

◆ paramsExamples()

template<class TScalar >
static auto sophus::QuaternionImpl< TScalar >::paramsExamples ( ) -> std::vector<Params>
inlinestatic

◆ squaredNorm()

template<class TScalar >
static auto sophus::QuaternionImpl< TScalar >::squaredNorm ( Eigen::Vector< Scalar, 4 > const &  q) -> Scalar
inlinestatic

◆ zero()

template<class TScalar >
static auto sophus::QuaternionImpl< TScalar >::zero ( ) -> Eigen::Vector<Scalar, 4>
inlinestatic

Member Data Documentation

◆ kIsCommutative

template<class TScalar >
constexpr bool sophus::QuaternionImpl< TScalar >::kIsCommutative = false
staticconstexpr

◆ kNumParams

template<class TScalar >
constexpr int sophus::QuaternionImpl< TScalar >::kNumParams = 4
staticconstexpr

The documentation for this class was generated from the following file: