The controller class for communicating with the remote device.
More...
#include <slamtec_remote_public.hxx>
|
size_t | getDiscoveredServers (std::vector< SDKServerConnectionDesc > &serverList, size_t maxFetchCount=32) |
| Get the discovered server list. More...
|
|
bool | connect (const SDKServerConnectionDesc &serverDesc, slamtec_aurora_sdk_errorcode_t *errCode=nullptr) |
| Connect to the remote device. More...
|
|
void | disconnect () |
| Disconnect from the remote device.
|
|
bool | isConnected () |
| Check if the controller is connected to the remote device. More...
|
|
void | setLowRateMode (bool enable) |
| Set the low rate mode. More...
|
|
void | setMapDataSyncing (bool enable) |
| Set the map data syncing mode. More...
|
|
void | resyncMapData (bool invalidateCache=false) |
| Resync the map data. More...
|
|
void | setRawDataSubscription (bool enable) |
| Set the raw data subscription mode. More...
|
|
bool | isRawDataSubscribed () |
| Check if the raw data subscription is enabled. More...
|
|
bool | requireMapReset (uint64_t timeout_ms=SLAMTEC_AURORA_SDK_REMOTE_SERVER_DEFAULT_TIMEOUT, slamtec_aurora_sdk_errorcode_t *errcode=nullptr) |
| Require the remote device to perform the map reset. More...
|
|
bool | requirePureLocalizationMode (uint64_t timeout_ms=SLAMTEC_AURORA_SDK_REMOTE_SERVER_DEFAULT_TIMEOUT, slamtec_aurora_sdk_errorcode_t *errcode=nullptr) |
| Require the remote device to enter the pure localization mode. More...
|
|
bool | requireMappingMode (uint64_t timeout_ms=SLAMTEC_AURORA_SDK_REMOTE_SERVER_DEFAULT_TIMEOUT, slamtec_aurora_sdk_errorcode_t *errcode=nullptr) |
| Require the remote device to enter the mapping mode. More...
|
|
bool | requireRelocalization (uint64_t timeout_ms=SLAMTEC_AURORA_SDK_REMOTE_SERVER_DEFAULT_TIMEOUT, slamtec_aurora_sdk_errorcode_t *errcode=nullptr) |
| Require the remote device to perform the relocalization. More...
|
|
bool | cancelRelocalization (uint64_t timeout_ms=SLAMTEC_AURORA_SDK_REMOTE_SERVER_DEFAULT_TIMEOUT, slamtec_aurora_sdk_errorcode_t *errcode=nullptr) |
| Cancel the relocalization. More...
|
|
bool | setLoopClosure (bool enable, uint64_t timeout_ms=SLAMTEC_AURORA_SDK_REMOTE_SERVER_DEFAULT_TIMEOUT, slamtec_aurora_sdk_errorcode_t *errcode=nullptr) |
| Set the loop closure flag. More...
|
|
bool | sendCustomCommand (uint64_t timeout_ms, uint64_t cmd, const void *data=nullptr, size_t data_size=0, void *response=nullptr, size_t response_buffer_size=0, size_t *response_retrieved_size=nullptr, slamtec_aurora_sdk_errorcode_t *errcode=nullptr) |
| Send a custom command to the remote device. More...
|
|
The controller class for communicating with the remote device.
◆ cancelRelocalization()
bool rp::standalone::aurora::RemoteController::cancelRelocalization |
( |
uint64_t |
timeout_ms = SLAMTEC_AURORA_SDK_REMOTE_SERVER_DEFAULT_TIMEOUT , |
|
|
slamtec_aurora_sdk_errorcode_t * |
errcode = nullptr |
|
) |
| |
|
inline |
Cancel the relocalization.
- Parameters
-
[in] | timeout_ms | The timeout in milliseconds, default is 5000ms |
[out] | errcode | The error code, set to nullptr if not interested |
- Returns
- True if the relocalization is canceled successfully, false otherwise
◆ connect()
Connect to the remote device.
- Parameters
-
[in] | serverDesc | The server description to connect to |
[out] | errCode | The error code, set to nullptr if not interested |
- Returns
- True if the connection is successful, false otherwise
◆ getDiscoveredServers()
size_t rp::standalone::aurora::RemoteController::getDiscoveredServers |
( |
std::vector< SDKServerConnectionDesc > & |
serverList, |
|
|
size_t |
maxFetchCount = 32 |
|
) |
| |
|
inline |
Get the discovered server list.
Get the discovered remote devices, the SDK continuously performs the discovery process to update the server list in the background
- Parameters
-
[out] | serverList | The output server list to store the discovered servers |
[in] | maxFetchCount | The maximum number of servers to fetch, default is 32 |
- Returns
- The number of servers fetched
◆ isConnected()
bool rp::standalone::aurora::RemoteController::isConnected |
( |
| ) |
|
|
inline |
Check if the controller is connected to the remote device.
- Returns
- True if the controller is connected, false otherwise
◆ isRawDataSubscribed()
bool rp::standalone::aurora::RemoteController::isRawDataSubscribed |
( |
| ) |
|
|
inline |
Check if the raw data subscription is enabled.
- Returns
- True if the raw data subscription is enabled, false otherwise
◆ requireMappingMode()
bool rp::standalone::aurora::RemoteController::requireMappingMode |
( |
uint64_t |
timeout_ms = SLAMTEC_AURORA_SDK_REMOTE_SERVER_DEFAULT_TIMEOUT , |
|
|
slamtec_aurora_sdk_errorcode_t * |
errcode = nullptr |
|
) |
| |
|
inline |
Require the remote device to enter the mapping mode.
- Parameters
-
[in] | timeout_ms | The timeout in milliseconds, default is 5000ms |
[out] | errcode | The error code, set to nullptr if not interested |
- Returns
- True if the mapping request is sent and performed successfully, false otherwise
◆ requireMapReset()
bool rp::standalone::aurora::RemoteController::requireMapReset |
( |
uint64_t |
timeout_ms = SLAMTEC_AURORA_SDK_REMOTE_SERVER_DEFAULT_TIMEOUT , |
|
|
slamtec_aurora_sdk_errorcode_t * |
errcode = nullptr |
|
) |
| |
|
inline |
Require the remote device to perform the map reset.
- Parameters
-
[in] | timeout_ms | The timeout in milliseconds, default is 5000ms |
[out] | errcode | The error code, set to nullptr if not interested |
- Returns
- True if the map reset request is sent and performed successfully, false otherwise
◆ requirePureLocalizationMode()
bool rp::standalone::aurora::RemoteController::requirePureLocalizationMode |
( |
uint64_t |
timeout_ms = SLAMTEC_AURORA_SDK_REMOTE_SERVER_DEFAULT_TIMEOUT , |
|
|
slamtec_aurora_sdk_errorcode_t * |
errcode = nullptr |
|
) |
| |
|
inline |
Require the remote device to enter the pure localization mode.
- Parameters
-
[in] | timeout_ms | The timeout in milliseconds, default is 5000ms |
[out] | errcode | The error code, set to nullptr if not interested |
- Returns
- True if the pure localization request is sent and performed successfully, false otherwise
◆ requireRelocalization()
bool rp::standalone::aurora::RemoteController::requireRelocalization |
( |
uint64_t |
timeout_ms = SLAMTEC_AURORA_SDK_REMOTE_SERVER_DEFAULT_TIMEOUT , |
|
|
slamtec_aurora_sdk_errorcode_t * |
errcode = nullptr |
|
) |
| |
|
inline |
Require the remote device to perform the relocalization.
- Parameters
-
[in] | timeout_ms | The timeout in milliseconds, default is 5000ms |
[out] | errcode | The error code, set to nullptr if not interested |
- Returns
- True if the relocalization request is sent and performed successfully, false otherwise
◆ resyncMapData()
void rp::standalone::aurora::RemoteController::resyncMapData |
( |
bool |
invalidateCache = false | ) |
|
|
inline |
Resync the map data.
Ask the SDK to refetch all the map data from the remote device
- Parameters
-
[in] | invalidateCache | True to invalidate the cached map data, false to keep the cached map data |
◆ sendCustomCommand()
bool rp::standalone::aurora::RemoteController::sendCustomCommand |
( |
uint64_t |
timeout_ms, |
|
|
uint64_t |
cmd, |
|
|
const void * |
data = nullptr , |
|
|
size_t |
data_size = 0 , |
|
|
void * |
response = nullptr , |
|
|
size_t |
response_buffer_size = 0 , |
|
|
size_t * |
response_retrieved_size = nullptr , |
|
|
slamtec_aurora_sdk_errorcode_t * |
errcode = nullptr |
|
) |
| |
|
inline |
Send a custom command to the remote device.
- Parameters
-
[in] | timeout_ms | The timeout in milliseconds, default is 5000ms |
[in] | cmd | The command to send |
[in] | data | The data to send, set to nullptr if not interested |
[in] | data_size | The size of the data to send, default is 0 |
[out] | response | The response from the remote device, set to nullptr if not interested |
[in] | response_buffer_size | The size of the response buffer, default is 0 |
[out] | response_retrieved_size | The size of the response retrieved, set to nullptr if not interested |
[out] | errcode | The error code, set to nullptr if not interested |
- Returns
- True if the custom command is sent and performed successfully, false otherwise
◆ setLoopClosure()
bool rp::standalone::aurora::RemoteController::setLoopClosure |
( |
bool |
enable, |
|
|
uint64_t |
timeout_ms = SLAMTEC_AURORA_SDK_REMOTE_SERVER_DEFAULT_TIMEOUT , |
|
|
slamtec_aurora_sdk_errorcode_t * |
errcode = nullptr |
|
) |
| |
|
inline |
Set the loop closure flag.
- Parameters
-
[in] | enable | True to enable the loop closure, false to disable |
[in] | timeout_ms | The timeout in milliseconds, default is 5000ms |
[out] | errcode | The error code, set to nullptr if not interested |
- Returns
- True if the loop closure is set successfully, false otherwise
◆ setLowRateMode()
void rp::standalone::aurora::RemoteController::setLowRateMode |
( |
bool |
enable | ) |
|
|
inline |
Set the low rate mode.
Once the low rate mode is enabled, the SDK will disable the IMU data and Raw image data subscription to reduce the data traffic
Some SDK operations like map streaming will automatically set the low rate mode to true, and the mode will be automatically disabled after the map streaming operation is done
- Parameters
-
[in] | enable | True to enable the low rate mode, false to disable |
◆ setMapDataSyncing()
void rp::standalone::aurora::RemoteController::setMapDataSyncing |
( |
bool |
enable | ) |
|
|
inline |
Set the map data syncing mode.
Once the map data syncing is enabled, the SDK will start a background thread to sync the map data from the remote device
The synced map data will be cached in the local device.
The map data can be accessed via the map data access function
NOTICE: the synced map data is only for visualization, it should not be used for localization or other high-precision requirements
- Parameters
-
[in] | enable | True to enable the map data syncing, false to disable |
◆ setRawDataSubscription()
void rp::standalone::aurora::RemoteController::setRawDataSubscription |
( |
bool |
enable | ) |
|
|
inline |
Set the raw data subscription mode.
Once the raw data subscription is enabled, the SDK will subscribe the raw image data
- Parameters
-
[in] | enable | True to enable the raw data subscription, false to disable |
The documentation for this class was generated from the following file: