gtsam  4.1.0
gtsam
gtsam::ConcurrentSmoother Class Referenceabstract

Detailed Description

The interface for the 'Smoother' portion of the Concurrent Filtering and Smoother architecture.

+ Inheritance diagram for gtsam::ConcurrentSmoother:

Public Member Functions

 ConcurrentSmoother ()
 Default constructor.
 
virtual ~ConcurrentSmoother ()
 Default destructor.
 
virtual void print (const std::string &s="Concurrent Smoother:\n", const KeyFormatter &keyFormatter=DefaultKeyFormatter) const =0
 Implement a standard 'print' function.
 
virtual bool equals (const ConcurrentSmoother &rhs, double tol=1e-9) const =0
 Check if two Concurrent Smoothers are equal.
 
virtual void presync ()
 Perform any required operations before the synchronization process starts. More...
 
virtual void getSummarizedFactors (NonlinearFactorGraph &summarizedFactors, Values &separatorValues)=0
 Populate the provided containers with factors that constitute the smoother branch summarization needed by the filter. More...
 
virtual void synchronize (const NonlinearFactorGraph &smootherFactors, const Values &smootherValues, const NonlinearFactorGraph &summarizedFactors, const Values &rootValues)=0
 Apply the new smoother factors sent by the filter, and the updated version of the filter branch summarized factors. More...
 
virtual void postsync ()
 Perform any required operations after the synchronization process finishes. More...
 

Public Types

typedef boost::shared_ptr< ConcurrentSmoothershared_ptr
 

Member Function Documentation

◆ getSummarizedFactors()

virtual void gtsam::ConcurrentSmoother::getSummarizedFactors ( NonlinearFactorGraph summarizedFactors,
Values separatorValues 
)
pure virtual

Populate the provided containers with factors that constitute the smoother branch summarization needed by the filter.

Parameters
summarizedFactorsThe summarized factors for the filter branch
separatorValuesThe linearization points of the separator variables

Implemented in gtsam::ConcurrentIncrementalSmoother, and gtsam::ConcurrentBatchSmoother.

◆ postsync()

virtual void gtsam::ConcurrentSmoother::postsync ( )
inlinevirtual

Perform any required operations after the synchronization process finishes.

Called by 'synchronize'

Reimplemented in gtsam::ConcurrentIncrementalSmoother, and gtsam::ConcurrentBatchSmoother.

◆ presync()

virtual void gtsam::ConcurrentSmoother::presync ( )
inlinevirtual

Perform any required operations before the synchronization process starts.

Called by 'synchronize'

Reimplemented in gtsam::ConcurrentIncrementalSmoother, and gtsam::ConcurrentBatchSmoother.

◆ synchronize()

virtual void gtsam::ConcurrentSmoother::synchronize ( const NonlinearFactorGraph smootherFactors,
const Values smootherValues,
const NonlinearFactorGraph summarizedFactors,
const Values rootValues 
)
pure virtual

Apply the new smoother factors sent by the filter, and the updated version of the filter branch summarized factors.

Parameters
smootherFactorsA set of new factors added to the smoother from the filter
smootherValuesLinearization points for any new variables
summarizedFactorsAn updated version of the filter branch summarized factors
rootValuesThe linearization point of the root variables

Implemented in gtsam::ConcurrentIncrementalSmoother, and gtsam::ConcurrentBatchSmoother.


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