class ElementBase
- ElementBase是所有可更新的变量的基类。
- 需要传入一个模板类DERIVED, ElementBase继承于这个模板类。比如传入一个Eigen的Matrix,那么ElementBase就是一个Matrix。
- D_是变量的长度,如果变量是个vector的话。
- mtDifVec定义更新这个变量的误差值。
- 静态函数Identity()用于生成一个单位变量。
- boxPlus, boxMinus,boxMinusJac,setIdentity,print,setRandom,fix是需要自己实现的功能函数
- get函数用于返回转换成基类(比如egien类型嗯)的索引。
- registerCovarianceToPropertyHandler帮足版一个Eigen::Matrix存在配置系统里(PropertyHandler)。这个Eigen::Matrix作为这个变量的协方差矩阵。大小为D_×D_
- registerElementToPropertyHandler把变量值记录到PropertyHandler中。
- name_可以给这个类一个名字,用于基类中知道其真正的派生类。
class AuxiliaryBase
- 只实现了get函数的类,其他函数的实现都是空
class ScalarElement
- 单个值(double)的变量
- PropertyHandler用类名字加变量名来注册
class VectorElement
class QuaternionElement
class NormalVectorElement
- 欧拉角表示的