GTSAM  4.0.2
C++ library for smoothing and mapping (SAM)
Classes | Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
gtsam::FixedLagSmoother Class Referenceabstract
Inheritance diagram for gtsam::FixedLagSmoother:
Inheritance graph
[legend]

Classes

struct  Result
 

Public Types

typedef std::shared_ptr< FixedLagSmoothershared_ptr
 Typedef for a shared pointer to an Incremental Fixed-Lag Smoother.
 
typedef std::map< Key, double > KeyTimestampMap
 Typedef for a Key-Timestamp map/database.
 
typedef std::multimap< double, KeyTimestampKeyMap
 

Public Member Functions

 FixedLagSmoother (double smootherLag=0.0)
 
virtual ~FixedLagSmoother ()
 
virtual void print (const std::string &s="FixedLagSmoother:\, const KeyFormatter &keyFormatter=DefaultKeyFormatter) const
 
virtual bool equals (const FixedLagSmoother &rhs, double tol=1e-9) const
 
double smootherLag () const
 
double & smootherLag ()
 
const KeyTimestampMaptimestamps () const
 
virtual Result update (const NonlinearFactorGraph &newFactors=NonlinearFactorGraph(), const Values &newTheta=Values(), const KeyTimestampMap &timestamps=KeyTimestampMap(), const FactorIndices &factorsToRemove=FactorIndices())=0
 
virtual Values calculateEstimate () const =0
 

Protected Member Functions

void updateKeyTimestampMap (const KeyTimestampMap &newTimestamps)
 
void eraseKeyTimestampMap (const KeyVector &keys)
 
double getCurrentTimestamp () const
 
KeyVector findKeysBefore (double timestamp) const
 
KeyVector findKeysAfter (double timestamp) const
 

Protected Attributes

double smootherLag_
 
TimestampKeyMap timestampKeyMap_
 
KeyTimestampMap keyTimestampMap_
 

Constructor & Destructor Documentation

◆ FixedLagSmoother()

gtsam::FixedLagSmoother::FixedLagSmoother ( double  smootherLag = 0.0)
inline

default constructor

◆ ~FixedLagSmoother()

virtual gtsam::FixedLagSmoother::~FixedLagSmoother ( )
inlinevirtual

destructor

Member Function Documentation

◆ calculateEstimate()

virtual Values gtsam::FixedLagSmoother::calculateEstimate ( ) const
pure virtual

Compute an estimate from the incomplete linear delta computed during the last update. This delta is incomplete because it was not updated below wildfire_threshold. If only a single variable is needed, it is faster to call calculateEstimate(const KEY&).

Implemented in gtsam::IncrementalFixedLagSmoother, and gtsam::BatchFixedLagSmoother.

◆ equals()

virtual bool gtsam::FixedLagSmoother::equals ( const FixedLagSmoother rhs,
double  tol = 1e-9 
) const
virtual

◆ eraseKeyTimestampMap()

void gtsam::FixedLagSmoother::eraseKeyTimestampMap ( const KeyVector keys)
protected

Erase keys from the Key-Timestamps database

◆ findKeysAfter()

KeyVector gtsam::FixedLagSmoother::findKeysAfter ( double  timestamp) const
protected

Find all of the keys associated with timestamps before the provided time

◆ findKeysBefore()

KeyVector gtsam::FixedLagSmoother::findKeysBefore ( double  timestamp) const
protected

Find all of the keys associated with timestamps before the provided time

◆ getCurrentTimestamp()

double gtsam::FixedLagSmoother::getCurrentTimestamp ( ) const
protected

Find the most recent timestamp of the system

◆ print()

virtual void gtsam::FixedLagSmoother::print ( )
virtual

Print the factor for debugging and testing (implementing Testable)

Reimplemented in gtsam::IncrementalFixedLagSmoother, and gtsam::BatchFixedLagSmoother.

◆ smootherLag() [1/2]

double gtsam::FixedLagSmoother::smootherLag ( ) const
inline

read the current smoother lag

◆ smootherLag() [2/2]

double& gtsam::FixedLagSmoother::smootherLag ( )
inline

write to the current smoother lag

◆ timestamps()

const KeyTimestampMap& gtsam::FixedLagSmoother::timestamps ( ) const
inline

Access the current set of timestamps associated with each variable

◆ update()

virtual Result gtsam::FixedLagSmoother::update ( const NonlinearFactorGraph newFactors = NonlinearFactorGraph(),
const Values newTheta = Values(),
const KeyTimestampMap timestamps = KeyTimestampMap(),
const FactorIndices factorsToRemove = FactorIndices() 
)
pure virtual

Add new factors, updating the solution and relinearizing as needed.

Implemented in gtsam::IncrementalFixedLagSmoother, and gtsam::BatchFixedLagSmoother.

◆ updateKeyTimestampMap()

void gtsam::FixedLagSmoother::updateKeyTimestampMap ( const KeyTimestampMap newTimestamps)
protected

Update the Timestamps associated with the keys

Member Data Documentation

◆ smootherLag_

double gtsam::FixedLagSmoother::smootherLag_
protected

The length of the smoother lag. Any variable older than this amount will be marginalized out.

◆ timestampKeyMap_

TimestampKeyMap gtsam::FixedLagSmoother::timestampKeyMap_
protected

The current timestamp associated with each tracked key


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