The class to represent the component doing the 6dof tracking with SLAM algorithm on host.
More...
|
virtual Mode | mode () const =0 |
| Get #Mode. More...
|
|
virtual bool | start () override=0 |
| Start slam of current mode.
|
|
virtual bool | start (Mode mode)=0 |
| Start slam of specific mode. More...
|
|
virtual bool | reset ()=0 |
| Reset the 6dof tracker (SLAM) More...
|
|
virtual bool | pause ()=0 |
| Pause the 6dof tracker (SLAM) More...
|
|
virtual bool | resume ()=0 |
| Resume the 6dof tracker (SLAM) More...
|
|
virtual bool | getPose (Pose &pose, double prediction=0.)=0 |
| Get the current 6dof pose of the device. More...
|
|
virtual bool | getPoseAt (Pose &pose, double timestamp)=0 |
| Get the 6dof pose of the device at a given timestamp. More...
|
|
virtual int | registerVisualPoseCallback (std::function< void(const Pose &)> lostCallback)=0 |
| Register a callback called when visual SLAM compute a new unfiltered pose. More...
|
|
virtual bool | unregisterVisualPoseCallback (int callbackId)=0 |
|
virtual int | registerLostCallback (std::function< void()> lostCallback)=0 |
| Register a callback called when SLAM is lost. More...
|
|
virtual bool | unregisterLostCallback (int callbackId)=0 |
|
virtual int | registerStereoPlanesCallback (std::function< void(std::shared_ptr< const std::vector< Plane >>)> planeCallback)=0 |
| Callback to get the detected planes using stereo cameras and SLAM. More...
|
|
virtual bool | unregisterStereoPlanesCallback (int callbackId)=0 |
|
virtual bool | clearStereoPlanes ()=0 |
|
virtual int | registerTofPlanesCallback (std::function< void(std::shared_ptr< const std::vector< Plane >>)> planeCallback)=0 |
| Callback to get the detected planes using ToF camera and SLAM. More...
|
|
virtual bool | unregisterTofPlanesCallback (int callbackId)=0 |
|
virtual bool | clearTofPlanes ()=0 |
|
virtual int | registerMapCallback (std::function< void(std::shared_ptr< const xv::SlamMap >)> mapCallback)=0 |
| Callback to get the SLAM map updates. More...
|
|
virtual bool | unregisterMapCallback (int callbackId)=0 |
|
virtual bool | loadMapAndSwitchToCslam (std::streambuf &mapStream, std::function< void(int)> done_callback, std::function< void(float)> localized_on_reference_map={})=0 |
| Load a SLAM map and use it as an immutable reference map. More...
|
|
virtual bool | saveMapAndSwitchToCslam (std::streambuf &mapStream, std::function< void(int, int)> done_callback, std::function< void(float)> localized_on_reference_map={})=0 |
| Save a SLAM map and use it as an immutable reference map. More...
|
|
virtual Pose | poseScaleCalibration (const Pose &pose)=0 |
| slam pose scale calibration. More...
|
|
virtual void | poseReset ()=0 |
| Reset the 6dof pose coordinate (SLAM)
|
|
virtual bool | stop ()=0 |
| stop streaming.
|
|
virtual int | registerCallback (std::function< void(Pose const &)>)=0 |
| Register callback to receive data.
|
|
virtual bool | unregisterCallback (int callbackId)=0 |
| Unregister callback.
|
|
The class to represent the component doing the 6dof tracking with SLAM algorithm on host.
For Mixed mode, callback will get the last computed SLAM pose. Callback is call on each IMU recieved because SLAM pose also use IMU for update.
virtual int xv::Slam::registerTofPlanesCallback |
( |
std::function< void(std::shared_ptr< const std::vector< Plane >>)> |
planeCallback | ) |
|
|
pure virtual |
Callback to get the detected planes using ToF camera and SLAM.
The vector contains the current planes with plane ID as key. Between mutiple calls new planes can be added, previous planes updated or merged. If a plane disappears from the vector, it means it was merged with another.
If the planes IDs start with "SRP", it means the update comes from the surface reconstruction mapping. If the planes IDs start with "SRIP", it means the update comes from the instantaneous plane detection algorithm. Otherwise the planes comes from the legacy plane detection algorithm.
- Returns
- Id of the callback (used to unregister the callback).