gtsam  4.0.0
gtsam
gtsam::ConcurrentFilter Class Referenceabstract

Detailed Description

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

+ Inheritance diagram for gtsam::ConcurrentFilter:

Public Member Functions

 ConcurrentFilter ()
 Default constructor.
 
virtual ~ConcurrentFilter ()
 Default destructor.
 
virtual void print (const std::string &s="Concurrent Filter:\n", const KeyFormatter &keyFormatter=DefaultKeyFormatter) const =0
 Implement a standard 'print' function.
 
virtual bool equals (const ConcurrentFilter &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 filter branch summarization needed by the smoother. More...
 
virtual void getSmootherFactors (NonlinearFactorGraph &smootherFactors, Values &smootherValues)=0
 Populate the provided containers with factors being sent to the smoother from the filter. More...
 
virtual void synchronize (const NonlinearFactorGraph &summarizedFactors, const Values &separatorValues)=0
 Apply the updated version of the smoother branch summarized factors. More...
 
virtual void postsync ()
 Perform any required operations after the synchronization process finishes. More...
 

Public Types

typedef boost::shared_ptr< ConcurrentFiltershared_ptr
 

Member Function Documentation

◆ getSmootherFactors()

virtual void gtsam::ConcurrentFilter::getSmootherFactors ( NonlinearFactorGraph smootherFactors,
Values smootherValues 
)
pure virtual

Populate the provided containers with factors being sent to the smoother from the filter.

These may be original nonlinear factors, or factors encoding a summarization of the filter information. The specifics will be implementation-specific for a given filter.

Parameters
smootherFactorsThe new factors to be added to the smoother
smootherValuesThe linearization points of any new variables

Implemented in gtsam::ConcurrentBatchFilter, and gtsam::ConcurrentIncrementalFilter.

◆ getSummarizedFactors()

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

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

Also, linearization points for the new root clique must be provided.

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

Implemented in gtsam::ConcurrentBatchFilter, and gtsam::ConcurrentIncrementalFilter.

◆ postsync()

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

Perform any required operations after the synchronization process finishes.

Called by 'synchronize'

Reimplemented in gtsam::ConcurrentBatchFilter, and gtsam::ConcurrentIncrementalFilter.

◆ presync()

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

Perform any required operations before the synchronization process starts.

Called by 'synchronize'

Reimplemented in gtsam::ConcurrentBatchFilter, and gtsam::ConcurrentIncrementalFilter.

◆ synchronize()

virtual void gtsam::ConcurrentFilter::synchronize ( const NonlinearFactorGraph summarizedFactors,
const Values separatorValues 
)
pure virtual

Apply the updated version of the smoother branch summarized factors.

Parameters
summarizedFactorsAn updated version of the smoother branch summarized factors
separatorValuesThe linearization points of the separator variables

Implemented in gtsam::ConcurrentBatchFilter, and gtsam::ConcurrentIncrementalFilter.


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