Geomi
LieGroupBase.hpp
1 #ifndef DEF_COMMON_LIEGROUPBASE
2 #define DEF_COMMON_LIEGROUPBASE
3 
9 template <typename T_DERIVED, unsigned int T_DOF>
10 class LieGroupBase : public CRTP<T_DERIVED>
11 {
12 public:
13  static const unsigned int DOF = T_DOF;
14 
15 public:
19  T_DERIVED
20  inverse ( ) const;
21 
25  void
27  { this->underlying() = this->underlying().inverse(); }
28 
32  static T_DERIVED
33  Identity ( );
34 
38  void
39  operator*= (T_DERIVED const& g);
40 
46  toNOXVector ( ) const;
47 
48  static const unsigned int
49  dof ()
50  { return DOF; }
51 };
52 
53 #endif
NOXVector< T_DOF > toNOXVector() const
T_DERIVED inverse() const
Definition: LieGroupBase.hpp:10
Definition: utils.hpp:42
static T_DERIVED Identity()
void inverted()
Definition: LieGroupBase.hpp:26
void operator*=(T_DERIVED const &g)
Definition: NOXVector.hpp:14