File types.hpp¶
Types used across the API.
Helper functions for slamcore::SensorType
-
template<class Archive>
static inline void load_minimal(const Archive&, SensorType &obj, const std::string &value)¶
-
template<class Archive>
static inline std::string save_minimal(const Archive&, const SensorType &obj)¶
-
static inline std::ostream &operator<<(std::ostream &os, const SensorType obj)¶
Helper functions for slamcore::ImageFormat
-
template<class Archive>
static inline void load_minimal(const Archive&, ImageFormat &obj, const std::string &value)¶
-
template<class Archive>
static inline std::string save_minimal(const Archive&, const ImageFormat &obj)¶
-
static inline std::ostream &operator<<(std::ostream &os, const ImageFormat obj)¶
Helper conversion methods
slamcore::ImageFormat \(\leftrightarrow\) BytesPerPixel
-
template<ImageFormat fmt>
static inline std::size_t ImageFormatToBytesPerPixel()¶
-
static inline std::size_t ImageFormatToBytesPerPixel(const ImageFormat fmt)¶
Helper functions for slamcore::MetaDataID
-
template<class Archive>
static inline void load_minimal(const Archive&, MetaDataID &obj, const std::string &value)¶
-
template<class Archive>
static inline std::string save_minimal(const Archive&, const MetaDataID &obj)¶
-
static inline std::ostream &operator<<(std::ostream &os, const MetaDataID obj)¶
Typedefs
-
using ScalarT = double¶
Default scalar type.
-
using EnumBaseT = uint16_t¶
Enum underlying integer type.
-
using IDT = uint64_t¶
Generic ID type.
-
using SessionIDT = uint64_t¶
Session ID type.
-
using SensorIndexT = uint16_t¶
Sensor Index type.
-
using SensorIDT = std::pair<SensorType, SensorIndexT>¶
Sensor ID type.
SensorType and Sensor Index.
Enums
-
enum SensorType¶
Possible Sensor Types.
Values:
-
enumerator SLAM¶
Outputs from SLAM.
-
enumerator Visible¶
Standard Visible (Grey/RGB) Sensor (Camera).
-
enumerator Depth¶
Standard Depth Sensor (Camera).
-
enumerator Infrared¶
Standard Infrared Sensor (Camera).
-
enumerator Confidence¶
For time-of-flight Sensors (Camera).
-
enumerator Phase¶
For time-of-flight Sensors (Camera).
-
enumerator Accelerometer¶
Inertial Accelerometer Sensor (IMU).
-
enumerator Gyroscope¶
Inertial Gyroscope Sensor (IMU).
-
enumerator Magnetometer¶
Inertial Magnetometer Sensor (IMU).
-
enumerator GPS¶
GPS Sensor.
-
enumerator Odometry¶
Odometry Sensor.
-
enumerator Encoder¶
Encoder, for wheel ticks.
-
enumerator Pose¶
Pose “Sensor”, e.g. ground truth.
-
enumerator Bumper¶
Bumper
-
enumerator Proximity¶
Proximity sensor.
-
enumerator LIDAR¶
LIDAR (2D).
-
enumerator Count¶
-
enumerator SLAM¶
-
enum ImageFormat¶
Various internal image formats.
Values:
-
enumerator Custom¶
Undefined.
-
enumerator Mono_8¶
8 bit per pixel
-
enumerator Mono_16¶
16 bit per pixel
-
enumerator Mono_F¶
32 bit float per pixel
-
enumerator RGB_8¶
8 bit per component, RGB
-
enumerator RGBA_8¶
8 bit per component, RGBA
-
enumerator RGB_F¶
32 bit float per component, RGB
-
enumerator RGBA_F¶
32 bit float per component, RGBA
-
enumerator JPEG¶
Binary JPEG data.
-
enumerator Mono_32¶
32 bit per pixel
-
enumerator Mono_64¶
64 bit per pixel
-
enumerator Count¶
-
enumerator Custom¶
-
enum MetaDataID¶
Various supported MetaData variables.
Values:
-
enumerator TrackingStatus¶
-
enumerator NumFeatures¶
-
enumerator TrackedFeatures¶
-
enumerator DistanceTravelled¶
-
enumerator ProcessedFrameRate¶
-
enumerator TotalDroppedFrames¶
-
enumerator Count¶
-
enumerator TrackingStatus¶
-
enum TrackingStatus
Enumerate for the Tracking status.
Values:
-
enumerator NOT_INITIALISED¶
System is not initialised (waiting for initialisation)
-
enumerator OK¶
System is initialised and we are tracking.
-
enumerator LOST¶
System is lost and we are in relocalisation mode.
-
enumerator RELOCALISED¶
System has just relocalised.
-
enumerator LOOP_CLOSURE¶
A loop closure event has been triggered.
-
enumerator Count¶
-
enumerator NOT_INITIALISED¶
-
enum PositioningMode
Type of positioning mode.
Values:
-
enumerator ODOMETRY_ONLY¶
Visual-only or visual inertial odometry.
-
enumerator SLAM¶
SLAM mode enables relocalisation and loop-closure.
-
enumerator MULTISESSION_LOCALISATION¶
Bootstrap from pure_relocalisation and then VIO and reuse of old landmarks with the Visibility Classifier.
-
enumerator Count¶
-
enumerator ODOMETRY_ONLY¶
Functions
-
static inline bool strcasecmp(const std::string &str1, const std::string &str2)¶
Static insensitive comparison of two strings.
-
template<class Archive>
std::string save_minimal(const Archive&, const TrackingStatus &obj)¶
-
template<class Archive>
void load_minimal(const Archive&, TrackingStatus &obj, const std::string &value)¶
-
static inline std::ostream &operator<<(std::ostream &os, const TrackingStatus &obj)¶
-
template<class Archive>
std::string save_minimal(const Archive&, const PositioningMode &obj)¶
-
template<class Archive>
void load_minimal(const Archive&, PositioningMode &obj, const std::string &value)¶
-
static inline std::ostream &operator<<(std::ostream &os, const PositioningMode &obj)¶
-
template<>
struct slamcore::ImageFormatTraits<ImageFormat::Mono_8>¶ - #include <types.hpp>
Public Types
-
using ChannelType = uint8_t¶
-
using ChannelType = uint8_t¶
-
template<>
struct slamcore::ImageFormatTraits<ImageFormat::Mono_16>¶ - #include <types.hpp>
Public Types
-
using ChannelType = uint16_t¶
-
using ChannelType = uint16_t¶
-
template<>
struct slamcore::ImageFormatTraits<ImageFormat::Mono_F>¶ - #include <types.hpp>
Public Types
-
using ChannelType = float¶
-
using ChannelType = float¶
-
template<>
struct slamcore::ImageFormatTraits<ImageFormat::RGB_8>¶ - #include <types.hpp>
Public Types
-
using ChannelType = uint8_t¶
-
using ChannelType = uint8_t¶
-
template<>
struct slamcore::ImageFormatTraits<ImageFormat::RGBA_8>¶ - #include <types.hpp>
Public Types
-
using ChannelType = uint8_t¶
-
using ChannelType = uint8_t¶
-
template<>
struct slamcore::ImageFormatTraits<ImageFormat::RGB_F>¶ - #include <types.hpp>
Public Types
-
using ChannelType = float¶
-
using ChannelType = float¶
-
template<>
struct slamcore::ImageFormatTraits<ImageFormat::RGBA_F>¶ - #include <types.hpp>
Public Types
-
using ChannelType = float¶
-
using ChannelType = float¶
-
template<>
struct slamcore::ImageFormatTraits<ImageFormat::Mono_32>¶ - #include <types.hpp>
Public Types
-
using ChannelType = uint32_t¶
-
using ChannelType = uint32_t¶
-
template<>
struct slamcore::ImageFormatTraits<ImageFormat::Mono_64>¶ - #include <types.hpp>
Public Types
-
using ChannelType = uint64_t¶
-
using ChannelType = uint64_t¶
-
namespace slamcore
Main namespace for the SLAMcore public API
Get information about the client library
Helper functions for slamcore::SensorType
-
template<class Archive>
static inline void load_minimal(const Archive&, SensorType &obj, const std::string &value)¶
-
template<class Archive>
static inline std::string save_minimal(const Archive&, const SensorType &obj)¶
-
static inline std::ostream &operator<<(std::ostream &os, const SensorType obj)¶
Helper functions for slamcore::ImageFormat
-
template<class Archive>
static inline void load_minimal(const Archive&, ImageFormat &obj, const std::string &value)¶
-
template<class Archive>
static inline std::string save_minimal(const Archive&, const ImageFormat &obj)¶
-
static inline std::ostream &operator<<(std::ostream &os, const ImageFormat obj)¶
Helper conversion methods
slamcore::ImageFormat \(\leftrightarrow\) BytesPerPixel
-
template<ImageFormat fmt>
static inline std::size_t ImageFormatToBytesPerPixel()¶
-
static inline std::size_t ImageFormatToBytesPerPixel(const ImageFormat fmt)¶
Helper functions for slamcore::MetaDataID
-
template<class Archive>
static inline void load_minimal(const Archive&, MetaDataID &obj, const std::string &value)¶
-
template<class Archive>
static inline std::string save_minimal(const Archive&, const MetaDataID &obj)¶
-
static inline std::ostream &operator<<(std::ostream &os, const MetaDataID obj)¶
Typedefs
-
using ScalarT = double¶
Default scalar type.
-
using EnumBaseT = uint16_t¶
Enum underlying integer type.
-
using IDT = uint64_t¶
Generic ID type.
-
using SessionIDT = uint64_t¶
Session ID type.
-
using SensorIndexT = uint16_t¶
Sensor Index type.
-
using SensorIDT = std::pair<SensorType, SensorIndexT>¶
Sensor ID type.
SensorType and Sensor Index.
Enums
-
enum SensorType¶
Possible Sensor Types.
Values:
-
enumerator SLAM¶
Outputs from SLAM.
-
enumerator Visible¶
Standard Visible (Grey/RGB) Sensor (Camera).
-
enumerator Depth¶
Standard Depth Sensor (Camera).
-
enumerator Infrared¶
Standard Infrared Sensor (Camera).
-
enumerator Confidence¶
For time-of-flight Sensors (Camera).
-
enumerator Phase¶
For time-of-flight Sensors (Camera).
-
enumerator Accelerometer¶
Inertial Accelerometer Sensor (IMU).
-
enumerator Gyroscope¶
Inertial Gyroscope Sensor (IMU).
-
enumerator Magnetometer¶
Inertial Magnetometer Sensor (IMU).
-
enumerator GPS¶
GPS Sensor.
-
enumerator Odometry¶
Odometry Sensor.
-
enumerator Encoder¶
Encoder, for wheel ticks.
-
enumerator Pose¶
Pose “Sensor”, e.g. ground truth.
-
enumerator Bumper¶
Bumper
-
enumerator Proximity¶
Proximity sensor.
-
enumerator LIDAR¶
LIDAR (2D).
-
enumerator Count¶
-
enumerator SLAM¶
-
enum ImageFormat¶
Various internal image formats.
Values:
-
enumerator Custom¶
Undefined.
-
enumerator Mono_8¶
8 bit per pixel
-
enumerator Mono_16¶
16 bit per pixel
-
enumerator Mono_F¶
32 bit float per pixel
-
enumerator RGB_8¶
8 bit per component, RGB
-
enumerator RGBA_8¶
8 bit per component, RGBA
-
enumerator RGB_F¶
32 bit float per component, RGB
-
enumerator RGBA_F¶
32 bit float per component, RGBA
-
enumerator JPEG¶
Binary JPEG data.
-
enumerator Mono_32¶
32 bit per pixel
-
enumerator Mono_64¶
64 bit per pixel
-
enumerator Count¶
-
enumerator Custom¶
-
enum MetaDataID¶
Various supported MetaData variables.
Values:
-
enumerator TrackingStatus¶
-
enumerator NumFeatures¶
-
enumerator TrackedFeatures¶
-
enumerator DistanceTravelled¶
-
enumerator ProcessedFrameRate¶
-
enumerator TotalDroppedFrames¶
-
enumerator Count¶
-
enumerator TrackingStatus¶
-
enum TrackingStatus
Enumerate for the Tracking status.
Values:
-
enumerator NOT_INITIALISED¶
System is not initialised (waiting for initialisation)
-
enumerator OK¶
System is initialised and we are tracking.
-
enumerator LOST¶
System is lost and we are in relocalisation mode.
-
enumerator RELOCALISED¶
System has just relocalised.
-
enumerator LOOP_CLOSURE¶
A loop closure event has been triggered.
-
enumerator Count¶
-
enumerator NOT_INITIALISED¶
-
enum PositioningMode
Type of positioning mode.
Values:
-
enumerator ODOMETRY_ONLY¶
Visual-only or visual inertial odometry.
-
enumerator SLAM¶
SLAM mode enables relocalisation and loop-closure.
-
enumerator MULTISESSION_LOCALISATION¶
Bootstrap from pure_relocalisation and then VIO and reuse of old landmarks with the Visibility Classifier.
-
enumerator Count¶
-
enumerator ODOMETRY_ONLY¶
Functions
-
static inline bool strcasecmp(const std::string &str1, const std::string &str2)¶
Static insensitive comparison of two strings.
-
template<class Archive>
std::string save_minimal(const Archive&, const TrackingStatus &obj)¶
-
template<class Archive>
void load_minimal(const Archive&, TrackingStatus &obj, const std::string &value)¶
-
static inline std::ostream &operator<<(std::ostream &os, const TrackingStatus &obj)¶
-
template<class Archive>
std::string save_minimal(const Archive&, const PositioningMode &obj)¶
-
template<class Archive>
void load_minimal(const Archive&, PositioningMode &obj, const std::string &value)¶
-
static inline std::ostream &operator<<(std::ostream &os, const PositioningMode &obj)¶
-
template<ImageFormat fmt>
struct ImageFormatTraits¶ - #include <types.hpp>
Traits specific to the corresponding slamcore::ImageFormat they are templated for Supports storing information for the following properties:
Channels
- numbers of associated channelsChannelType
- e.g., float / double, …
- template<> Mono_16 >
- #include <types.hpp>
Public Types
-
using ChannelType = uint16_t¶
-
using ChannelType = uint16_t¶
- template<> Mono_32 >
- #include <types.hpp>
Public Types
-
using ChannelType = uint32_t
Public Static Attributes
-
static constexpr std::size_t Channels = 1
-
using ChannelType = uint32_t
- template<> Mono_64 >
- #include <types.hpp>
Public Types
-
using ChannelType = uint64_t
Public Static Attributes
-
static constexpr std::size_t Channels = 1
-
using ChannelType = uint64_t
- template<> Mono_8 >
- #include <types.hpp>
Public Types
-
using ChannelType = uint8_t
Public Static Attributes
-
static constexpr std::size_t Channels = 1
-
using ChannelType = uint8_t
- template<> Mono_F >
- #include <types.hpp>
Public Types
-
using ChannelType = float
Public Static Attributes
-
static constexpr std::size_t Channels = 1
-
using ChannelType = float
- template<> RGB_8 >
- #include <types.hpp>
Public Types
-
using ChannelType = uint8_t
Public Static Attributes
-
static constexpr std::size_t Channels = 3
-
using ChannelType = uint8_t
- template<> RGB_F >
- #include <types.hpp>
Public Types
-
using ChannelType = float
Public Static Attributes
-
static constexpr std::size_t Channels = 3
-
using ChannelType = float
- template<> RGBA_8 >
- #include <types.hpp>
Public Types
-
using ChannelType = uint8_t
Public Static Attributes
-
static constexpr std::size_t Channels = 4
-
using ChannelType = uint8_t
- template<> RGBA_F >
- #include <types.hpp>
Public Types
-
using ChannelType = float
Public Static Attributes
-
static constexpr std::size_t Channels = 4
-
using ChannelType = float
-
struct MultiSessionID¶
- #include <types.hpp>
ID for objects that can come from different sessions.
Public Types
-
using ValueT = int64_t¶
Public Functions
-
inline MultiSessionID()¶
-
inline MultiSessionID(const SessionIDT sid, const ValueT id)¶
-
MultiSessionID(const MultiSessionID &rhs) = default¶
-
MultiSessionID(MultiSessionID &&rhs) = default¶
-
MultiSessionID &operator=(MultiSessionID &&rhs) = default¶
-
MultiSessionID &operator=(const MultiSessionID &rhs) = default¶
-
inline SessionIDT session() const¶
Get the session ID.
Public Static Attributes
-
static constexpr SessionIDT s_invalidSession = std::numeric_limits<SessionIDT>::max()¶
Friends
- friend struct MultiSessionIDAccess
- inline friend friend std::ostream & operator<< (std::ostream &os, const MultiSessionID &v)
-
using ValueT = int64_t¶
-
template<typename ContainerT>
class RangeIterator - #include <types.hpp>
Simple indexing iterator. Needs operator()[] in the container.
Public Types
-
using value_type = typename ContainerT::value_type
Public Functions
-
inline RangeIterator(const ContainerT &c, std::size_t idx = 0)
-
inline bool operator!=(const RangeIterator &other) const
-
inline const RangeIterator &operator++() const
-
value_type &operator*()
-
const value_type &operator*() const
-
using value_type = typename ContainerT::value_type
-
struct ReferenceFrameInterface¶
- #include <types.hpp>
Interface representing a coordinate system frame of reference
Public Functions
-
virtual ~ReferenceFrameInterface() = default¶
-
inline bool operator==(const ReferenceFrameInterface &other) const¶
-
inline bool operator!=(const ReferenceFrameInterface &other) const¶
-
virtual ~ReferenceFrameInterface() = default¶
-
template<class Archive>