gtsam
4.1.0
gtsam

A combined factor is assembled as one block of rows for each component factor.
In each rowblock (factor), some of the columnblocks (variables) may be empty since factors involving different sets of variables are interleaved.
VariableSlots describes the 2D block structure of the combined factor. It is a map<Key, vector<size_t> >. The Key is the real variable index of the combined factor slot. The vector<size_t> tells, for each rowblock (factor), which columnblock (variable slot) from the component factor appears in this block of the combined factor.
As an example, if the combined factor contains variables 1, 3, and 5, then "variableSlots[3][2] == 0" indicates that columnblock 1 (corresponding to variable index 3), rowblock 2 (also meaning component factor 2), comes from columnblock 0 of component factor 2.
Standard Constructors  
template<class FG >  
VariableSlots (const FG &factorGraph)  
Constructor from a set of factors to be combined. More...  
Testable  
GTSAM_EXPORT void  print (const std::string &str="VariableSlots: ") const 
print  
GTSAM_EXPORT bool  equals (const VariableSlots &rhs, double tol=0.0) const 
equals  
Static Public Attributes  
static GTSAM_EXPORT const size_t  Empty = numeric_limits<size_t>::max() 
Public Types  
typedef FastMap< Key, FastVector< size_t > >  Base 
Public Types inherited from gtsam::FastMap< Key, FastVector< size_t > >  
typedef std::map< Key, FastVector< size_t >, std::less< Key >, typename internal::FastDefaultAllocator< std::pair< const Key, FastVector< size_t > > >::type >  Base 
Additional Inherited Members  
Public Member Functions inherited from gtsam::FastMap< Key, FastVector< size_t > >  
FastMap ()  
Default constructor.  
FastMap (INPUTITERATOR first, INPUTITERATOR last)  
Constructor from a range, passes through to base class.  
FastMap (const FastMap< Key, FastVector< size_t > > &x)  
Copy constructor from another FastMap.  
FastMap (const Base &x)  
Copy constructor from the base map class.  
operator std::map< Key, FastVector< size_t > > () const  
Conversion to a standard STL container.  
bool  insert2 (const Key &key, const FastVector< size_t > &val) 
Handy 'insert' function for Matlab wrapper.  
bool  exists (const Key &e) const 
Handy 'exists' function.  
gtsam::VariableSlots::VariableSlots  (  const FG &  factorGraph  ) 
Constructor from a set of factors to be combined.
Sorts the variables and keeps track of which variable from each factor ends up in each slot of the combined factor, as described in the class comment.