Jafar
|
Base class for all landmarks defined in the module rtslam. More...
Base class for all landmarks defined in the module rtslam.
Definition at line 48 of file landmarkAbstract.hpp.
#include <landmarkAbstract.hpp>
Public Types | |
enum | geometry_t { POINT, LINE, PLANE, ELLIPSE } |
enum | type_enum { PNT_EUC, PNT_AH, LINE_AHPL } |
enum | killed_enum { kNo = 0, kDuplicate, kCellOverflow } |
enum | DecisionMethod { ANY, ALL, MAJORITY } |
Public Member Functions | |
LandmarkAbstract (const map_ptr_t &_mapPtr, const size_t _size, bool freeze_first=false) | |
constructor from map and size | |
LandmarkAbstract (const simulation_t dummy, const map_ptr_t &_mapPtr, const size_t _size, bool freeze_first=false) | |
LandmarkAbstract (const map_ptr_t &_mapPtr, const landmark_ptr_t &_prevLmk, const size_t _size, jblas::ind_array &_icomp, bool freeze_first=false) | |
Constructor by replacement: occupied the same filter state as a specified previous lmk. | |
virtual | ~LandmarkAbstract () |
Mandatory virtual destructor. | |
void | setId () |
std::string | categoryName () const |
geometry_t | getGeomType () const |
virtual std::string | typeName () const |
void | reparametrize (const landmark_ptr_t &lmkDestPtr) |
void | reparametrize (int size, vec &xNew, sym_mat &pNew) |
jblas::vec | reparametrized () const |
virtual vec | reparametrize_func (const vec &lmk) const =0 |
virtual void | reparametrize_func (const vec &lmk, vec &lnew, mat &LNEW_lmk) const =0 |
virtual jblas::ind_array | nobs ()=0 |
Indices of the state that are supposed to be non observable (typically inverse depth for points from camera ; if the sensor can observe depth, we won't use an inverse depth parametrization) | |
virtual size_t | mySize ()=0 |
Size of the landmark state. | |
virtual size_t | reparamSize ()=0 |
Size of the reparametrized landmark. | |
virtual jblas::vec3 | center ()=0 |
Position x,y,z of the center of the landmark. | |
virtual double | uncertainty ()=0 |
The max uncertainty of the landmark position (3 sigma in meters) | |
virtual void | setDescriptor (const descriptor_ptr_t &descPtr) |
virtual bool | needToDie () |
Evaluate the landmark's special need to die. | |
void | destroyDisplay () |
destroy the display data of itself and its children | |
void | suicide () |
Suicide. | |
virtual void | transferInfoLmk (landmark_ptr_t &lmkSourcePtr) |
void | fillEvents () |
unsigned | countObserved () |
Public Attributes | |
type_enum | type |
bool | converged |
bool | visible |
bool | updatable |
killed_enum | killed |
descriptor_ptr_t | descriptorPtr |
Landmark descriptor. | |
VisibilityMap | visibilityMap |
Gaussian | first_state |
jblas::mat | LNEW_lmk |
Jacobian comming from reparametrisation of old lmk wrt. new lmk. | |
Static Public Attributes | |
static IdFactory | landmarkIds |
Protected Attributes | |
geometry_t | geomType |
Friends | |
std::ostream & | operator<< (std::ostream &s, LandmarkAbstract const &obs) |
image::oimstream & | operator<< (image::oimstream &s, LandmarkAbstract const &lmk) |
jafar::rtslam::LandmarkAbstract::LandmarkAbstract | ( | const map_ptr_t & | _mapPtr, |
const landmark_ptr_t & | _prevLmk, | ||
const size_t | _size, | ||
jblas::ind_array & | _icomp, | ||
bool | freeze_first = false |
||
) |
Constructor by replacement: occupied the same filter state as a specified previous lmk.
_icomp is the complementary memory, to be relaxed by the user.
virtual jafar::rtslam::LandmarkAbstract::~LandmarkAbstract | ( | ) | [virtual] |
Mandatory virtual destructor.
We purposely kill all links from sensors to the observations depending on this landmark. This way, killing the landmark will kill all derived observations because all shared_ptr will be eliminated.
virtual bool jafar::rtslam::LandmarkAbstract::needToDie | ( | ) | [inline, virtual] |
Evaluate the landmark's special need to die.
Reimplemented in jafar::rtslam::LandmarkAnchoredHomogeneousPointsLine, and jafar::rtslam::LandmarkAnchoredHomogeneousPoint.
Definition at line 168 of file landmarkAbstract.hpp.
Suicide.
We cut the linik to parent and the object naturally dies.
Generated on Wed Oct 15 2014 00:37:45 for Jafar by doxygen 1.7.6.1 |