gtsam 4.2
gtsam
Loading...
Searching...
No Matches
gtsam::LabeledSymbol Class Reference

Detailed Description

Customized version of gtsam::Symbol for multi-robot use.

This variation of Symbol stores two char values in addition to an integer key, which is useful for encoding a group for a variable. This was originally designed for multi-robot systems, which allows expressing "Pose 7 from robot B" as "xB7".

Public Member Functions

 LabeledSymbol ()
 Default constructor.
 LabeledSymbol (const LabeledSymbol &key)
 Copy constructor.
 LabeledSymbol (unsigned char c, unsigned char label, std::uint64_t j)
 Constructor.
 LabeledSymbol (gtsam::Key key)
 Constructor that decodes an integer gtsam::Key.
 operator gtsam::Key () const
 Cast to integer.
void print (const std::string &s="") const
bool equals (const LabeledSymbol &expected, double tol=0.0) const
gtsam::Key key () const
 return the integer version
unsigned char label () const
 Retrieve label character.
unsigned char chr () const
 Retrieve key character.
size_t index () const
 Retrieve key index.
 operator std::string () const
 Create a string from the key.
bool operator< (const LabeledSymbol &comp) const
 Comparison for use in maps.
bool operator== (const LabeledSymbol &comp) const
bool operator== (gtsam::Key comp) const
bool operator!= (const LabeledSymbol &comp) const
bool operator!= (gtsam::Key comp) const
LabeledSymbol upper () const
LabeledSymbol lower () const
LabeledSymbol newChr (unsigned char c) const
LabeledSymbol newLabel (unsigned char label) const

Static Public Member Functions

static std::function< bool(gtsam::Key)> TypeTest (unsigned char c)
 Return a filter function that returns true when evaluated on a gtsam::Key whose character (when converted to a LabeledSymbol) matches c.
static std::function< bool(gtsam::Key)> LabelTest (unsigned char label)
static std::function< bool(gtsam::Key)> TypeLabelTest (unsigned char c, unsigned char label)

Protected Attributes

unsigned char c_
unsigned char label_
std::uint64_t j_

Friends

class boost::serialization::access
 Serialization function.
GTSAM_EXPORT std::ostream & operator<< (std::ostream &os, const LabeledSymbol &symbol)
 Output stream operator that can be used with key_formatter (see Key.h).

Member Function Documentation

◆ TypeTest()

std::function< bool(gtsam::Key)> gtsam::LabeledSymbol::TypeTest ( unsigned char c)
static

Return a filter function that returns true when evaluated on a gtsam::Key whose character (when converted to a LabeledSymbol) matches c.

Use this with the Values::filter() function to retrieve all key-value pairs with the requested character.


The documentation for this class was generated from the following files:
  • /tmp/gtsam-4.2-docs.H5EUbA/src/gtsam/inference/LabeledSymbol.h
  • /tmp/gtsam-4.2-docs.H5EUbA/src/gtsam/inference/LabeledSymbol.cpp