GTSAM  4.0.2
C++ library for smoothing and mapping (SAM)
Public Types | Static Public Member Functions | List of all members
gtsam::internal::LieGroupTraits< Class > Struct Template Reference

#include <Lie.h>

Inheritance diagram for gtsam::internal::LieGroupTraits< Class >:
Inheritance graph
[legend]
Collaboration diagram for gtsam::internal::LieGroupTraits< Class >:
Collaboration graph
[legend]

Public Types

typedef lie_group_tag structure_category
 

Static Public Member Functions

static int GetDimension (const Class &)
 
Lie Group
static TangentVector Logmap (const Class &m, ChartJacobian Hm={})
 
static Class Expmap (const TangentVector &v, ChartJacobian Hv={})
 
static Class Compose (const Class &m1, const Class &m2, ChartJacobian H1={}, ChartJacobian H2={})
 
static Class Between (const Class &m1, const Class &m2, ChartJacobian H1={}, ChartJacobian H2={})
 
static Class Inverse (const Class &m, ChartJacobian H={})
 

Group

typedef multiplicative_group_tag group_flavor
 
static Class Identity ()
 

Manifold

enum  { dimension = Class::dimension }
 
typedef Class ManifoldType
 
typedef Eigen::Matrix< double, dimension, 1 > TangentVector
 
typedef OptionalJacobian< dimension, dimension > ChartJacobian
 
static TangentVector Local (const Class &origin, const Class &other, ChartJacobian Horigin={}, ChartJacobian Hother={})
 
static Class Retract (const Class &origin, const TangentVector &v, ChartJacobian Horigin={}, ChartJacobian Hv={})
 

Detailed Description

template<class Class>
struct gtsam::internal::LieGroupTraits< Class >

A helper class that implements the traits interface for GTSAM lie groups. To use this for your gtsam type, define: template<> struct traits<Class> : public internal::LieGroupTraits<Class> {}; Assumes existence of: identity, dimension, localCoordinates, retract, and additionally Logmap, Expmap, compose, between, and inverse


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