Private Attributes | List of all members
gtsam::HybridValues Class Reference

#include <HybridValues.h>

Public Member Functions

Standard Constructors
 HybridValues ()=default
 Default constructor creates an empty HybridValues. More...
 
 HybridValues (const VectorValues &cv, const DiscreteValues &dv)
 Construct from DiscreteValues and VectorValues. More...
 
 HybridValues (const VectorValues &cv, const DiscreteValues &dv, const Values &v)
 Construct from all values types. More...
 
Testable
void print (const std::string &s="HybridValues", const KeyFormatter &keyFormatter=DefaultKeyFormatter) const
 print required by Testable for unit testing More...
 
bool equals (const HybridValues &other, double tol=1e-9) const
 equals required by Testable for unit testing More...
 
Interface
const VectorValuescontinuous () const
 Return the multi-dimensional vector values. More...
 
const DiscreteValuesdiscrete () const
 Return the discrete values. More...
 
const Valuesnonlinear () const
 Return the nonlinear values. More...
 
bool existsVector (Key j)
 Check whether a variable with key j exists in VectorValues. More...
 
bool existsDiscrete (Key j)
 Check whether a variable with key j exists in DiscreteValues. More...
 
bool existsNonlinear (Key j)
 Check whether a variable with key j exists in values. More...
 
bool exists (Key j)
 Check whether a variable with key j exists. More...
 
void insert (Key j, const Vector &value)
 
void insert (Key j, size_t value)
 
void insert_or_assign (Key j, const Vector &value)
 insert_or_assign() , similar to Values.h More...
 
void insert_or_assign (Key j, size_t value)
 insert_or_assign() , similar to Values.h More...
 
HybridValuesinsert (const VectorValues &values)
 
HybridValuesinsert (const DiscreteValues &values)
 
HybridValuesinsert (const Values &values)
 
HybridValuesinsert (const HybridValues &values)
 
Vectorat (Key j)
 
size_tatDiscrete (Key j)
 
HybridValuesupdate (const VectorValues &values)
 
HybridValuesupdate (const DiscreteValues &values)
 
HybridValuesupdate (const HybridValues &values)
 
VectorValues continuousSubset (const KeyVector &keys) const
 Extract continuous values with given keys. More...
 
Wrapper support
std::string html (const KeyFormatter &keyFormatter=DefaultKeyFormatter) const
 Output as a html table. More...
 

Private Attributes

VectorValues continuous_
 
DiscreteValues discrete_
 
Values nonlinear_
 

Detailed Description

HybridValues represents a collection of DiscreteValues and VectorValues. It is typically used to store the variables of a HybridGaussianFactorGraph. Optimizing a HybridGaussianBayesNet returns this class.

Definition at line 38 of file HybridValues.h.

Constructor & Destructor Documentation

◆ HybridValues() [1/3]

gtsam::HybridValues::HybridValues ( )
default

Default constructor creates an empty HybridValues.

◆ HybridValues() [2/3]

gtsam::HybridValues::HybridValues ( const VectorValues cv,
const DiscreteValues dv 
)
inline

Construct from DiscreteValues and VectorValues.

Definition at line 57 of file HybridValues.h.

◆ HybridValues() [3/3]

gtsam::HybridValues::HybridValues ( const VectorValues cv,
const DiscreteValues dv,
const Values v 
)
inline

Construct from all values types.

Definition at line 61 of file HybridValues.h.

Member Function Documentation

◆ at()

Vector& gtsam::HybridValues::at ( Key  j)
inline

Read/write access to the vector value with key j, throws std::out_of_range if j does not exist.

Definition at line 169 of file HybridValues.h.

◆ atDiscrete()

size_t& gtsam::HybridValues::atDiscrete ( Key  j)
inline

Read/write access to the discrete value with key j, throws std::out_of_range if j does not exist.

Definition at line 175 of file HybridValues.h.

◆ continuous()

const VectorValues& gtsam::HybridValues::continuous ( ) const
inline

Return the multi-dimensional vector values.

Definition at line 89 of file HybridValues.h.

◆ continuousSubset()

VectorValues gtsam::HybridValues::continuousSubset ( const KeyVector keys) const
inline

Extract continuous values with given keys.

Definition at line 206 of file HybridValues.h.

◆ discrete()

const DiscreteValues& gtsam::HybridValues::discrete ( ) const
inline

Return the discrete values.

Definition at line 92 of file HybridValues.h.

◆ equals()

bool gtsam::HybridValues::equals ( const HybridValues other,
double  tol = 1e-9 
) const
inline

equals required by Testable for unit testing

Definition at line 79 of file HybridValues.h.

◆ exists()

bool gtsam::HybridValues::exists ( Key  j)
inline

Check whether a variable with key j exists.

Definition at line 109 of file HybridValues.h.

◆ existsDiscrete()

bool gtsam::HybridValues::existsDiscrete ( Key  j)
inline

Check whether a variable with key j exists in DiscreteValues.

Definition at line 101 of file HybridValues.h.

◆ existsNonlinear()

bool gtsam::HybridValues::existsNonlinear ( Key  j)
inline

Check whether a variable with key j exists in values.

Definition at line 104 of file HybridValues.h.

◆ existsVector()

bool gtsam::HybridValues::existsVector ( Key  j)
inline

Check whether a variable with key j exists in VectorValues.

Definition at line 98 of file HybridValues.h.

◆ html()

std::string gtsam::HybridValues::html ( const KeyFormatter keyFormatter = DefaultKeyFormatter) const
inline

Output as a html table.

Parameters
keyFormatterfunction that formats keys.
Returns
string html output.

Definition at line 224 of file HybridValues.h.

◆ insert() [1/6]

void gtsam::HybridValues::insert ( Key  j,
const Vector value 
)
inline

Insert a vector value with key j. Throws an invalid_argument exception if the key j is already used.

Parameters
valueThe vector to be inserted.
jThe index with which the value will be associated.

Definition at line 117 of file HybridValues.h.

◆ insert() [2/6]

void gtsam::HybridValues::insert ( Key  j,
size_t  value 
)
inline

Insert a discrete value with key j. Replaces the existing value if the key j is already used.

Parameters
valueThe vector to be inserted.
jThe index with which the value will be associated.

Definition at line 123 of file HybridValues.h.

◆ insert() [3/6]

HybridValues& gtsam::HybridValues::insert ( const VectorValues values)
inline

Insert all continuous values from values. Throws an invalid_argument exception if any keys to be inserted are already used.

Definition at line 137 of file HybridValues.h.

◆ insert() [4/6]

HybridValues& gtsam::HybridValues::insert ( const DiscreteValues values)
inline

Insert all discrete values from values. Throws an invalid_argument exception if any keys to be inserted are already used.

Definition at line 144 of file HybridValues.h.

◆ insert() [5/6]

HybridValues& gtsam::HybridValues::insert ( const Values values)
inline

Insert all values from values. Throws an invalid_argument exception if any keys to be inserted are already used.

Definition at line 151 of file HybridValues.h.

◆ insert() [6/6]

HybridValues& gtsam::HybridValues::insert ( const HybridValues values)
inline

Insert all values from values. Throws an invalid_argument exception if any keys to be inserted are already used.

Definition at line 158 of file HybridValues.h.

◆ insert_or_assign() [1/2]

void gtsam::HybridValues::insert_or_assign ( Key  j,
const Vector value 
)
inline

insert_or_assign() , similar to Values.h

Definition at line 126 of file HybridValues.h.

◆ insert_or_assign() [2/2]

void gtsam::HybridValues::insert_or_assign ( Key  j,
size_t  value 
)
inline

insert_or_assign() , similar to Values.h

Definition at line 131 of file HybridValues.h.

◆ nonlinear()

const Values& gtsam::HybridValues::nonlinear ( ) const
inline

Return the nonlinear values.

Definition at line 95 of file HybridValues.h.

◆ print()

void gtsam::HybridValues::print ( const std::string &  s = "HybridValues",
const KeyFormatter keyFormatter = DefaultKeyFormatter 
) const
inline

print required by Testable for unit testing

Definition at line 70 of file HybridValues.h.

◆ update() [1/3]

HybridValues& gtsam::HybridValues::update ( const VectorValues values)
inline

For all key/value pairs in values, replace continuous values with corresponding keys in this object with those in values. Throws std::out_of_range if any keys in values are not present in this object.

Definition at line 181 of file HybridValues.h.

◆ update() [2/3]

HybridValues& gtsam::HybridValues::update ( const DiscreteValues values)
inline

For all key/value pairs in values, replace discrete values with corresponding keys in this object with those in values. Throws std::out_of_range if any keys in values are not present in this object.

Definition at line 190 of file HybridValues.h.

◆ update() [3/3]

HybridValues& gtsam::HybridValues::update ( const HybridValues values)
inline

For all key/value pairs in values, replace all values with corresponding keys in this object with those in values. Throws std::out_of_range if any keys in values are not present in this object.

Definition at line 199 of file HybridValues.h.

Member Data Documentation

◆ continuous_

VectorValues gtsam::HybridValues::continuous_
private

Definition at line 41 of file HybridValues.h.

◆ discrete_

DiscreteValues gtsam::HybridValues::discrete_
private

Definition at line 44 of file HybridValues.h.

◆ nonlinear_

Values gtsam::HybridValues::nonlinear_
private

Definition at line 47 of file HybridValues.h.


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


gtsam
Author(s):
autogenerated on Tue Jul 4 2023 02:46:20