EdgeKey wrapper

release/4.3a0
Frank Dellaert 2024-10-26 11:56:33 -07:00
parent 546c571218
commit e05a990d1c
2 changed files with 17 additions and 1 deletions

View File

@ -46,7 +46,10 @@ class GTSAM_EXPORT EdgeKey {
/// @{ /// @{
/// Cast to Key /// Cast to Key
operator Key() const { return ((std::uint64_t)i_ << 32) | j_; } Key key() const { return ((std::uint64_t)i_ << 32) | j_; }
/// Cast to Key
operator Key() const { return key(); }
/// Retrieve high 32 bits /// Retrieve high 32 bits
inline std::uint32_t i() const { return i_; } inline std::uint32_t i() const { return i_; }

View File

@ -96,6 +96,19 @@ unsigned char mrsymbolChr(size_t key);
unsigned char mrsymbolLabel(size_t key); unsigned char mrsymbolLabel(size_t key);
size_t mrsymbolIndex(size_t key); size_t mrsymbolIndex(size_t key);
#include <gtsam/inference/EdgeKey.h>
class EdgeKey {
EdgeKey(std::uint32_t i, std::uint32_t j);
EdgeKey(size_t key);
EdgeKey(const gtsam::EdgeKey& key);
std::uint32_t i() const;
std::uint32_t j() const;
size_t key() const;
void print(string s = "") const;
};
#include <gtsam/inference/Ordering.h> #include <gtsam/inference/Ordering.h>
class Ordering { class Ordering {
/// Type of ordering to use /// Type of ordering to use