You’re reading an older version of the Slamcore SDK documenation. The latest one is 23.04.

Class slamcore::OptimisedTrajectorySubsystemInterface

class OptimisedTrajectorySubsystemInterface : public SubsystemInterface

Subsystem for accessing trajectories.

A common way of using this subsystem would be as follows:

// Get subsystem from the SLAM system
const auto subsystem = slam->getSubsystem<slamcore::OptimmisedTrajectorySubsystemInterface>();

// Fetch most recent trajectories

// You can retrieve some data
const auto optimisedTrajectory = subsystem->getTrajectory();


There are some positioning modes where the optimised trajectory is not produced. In these cases, getTrajectory will return nullptr.


Not thread safe.

Public Types

using Ptr = std::shared_ptr<OptimisedTrajectorySubsystemInterface>
using CPtr = std::shared_ptr<const OptimisedTrajectorySubsystemInterface>

Public Functions

virtual ~OptimisedTrajectorySubsystemInterface() = default
template<typename _Rep = int64_t, typename _Period = std::ratio<1>>
inline bool fetch(const std::chrono::duration<_Rep, _Period> &timeout = std::chrono::seconds(0))

Update the internal state with the most recent data.

virtual std::shared_ptr<const PoseListInterface<camera_clock>> getTrajectory() const = 0

Get Optimised Trajectory.


For some positioning modes this can return nullptr