OrbbecSDK 2.5.5
OrbbecSDK: Software-Development-Kit for Orbbec 3D Cameras
Loading...
Searching...
No Matches
Device.h File Reference

Device-related functions, including operations such as obtaining and creating a device, setting and obtaining device property, and obtaining sensors. More...

#include "ObTypes.h"
#include "Property.h"
#include "MultipleDevices.h"
#include "Advanced.h"

Go to the source code of this file.

Macros

#define ob_device_list_device_count   ob_device_list_get_count
#define ob_device_list_get_extension_info   ob_device_info_get_extension_info
#define ob_device_upgrade   ob_device_update_firmware
#define ob_device_upgrade_from_data   ob_device_update_firmware_from_data
#define ob_device_get_supported_property   ob_device_get_supported_property_item
#define ob_device_state_changed   ob_device_set_state_changed_callback
#define ob_device_info_name   ob_device_info_get_name
#define ob_device_info_pid   ob_device_info_get_pid
#define ob_device_info_vid   ob_device_info_get_vid
#define ob_device_info_uid   ob_device_info_get_uid
#define ob_device_info_serial_number   ob_device_info_get_serial_number
#define ob_device_info_firmware_version   ob_device_info_get_firmware_version
#define ob_device_info_connection_type   ob_device_info_get_connection_type
#define ob_device_info_ip_address   ob_device_info_get_ip_address
#define ob_device_info_hardware_version   ob_device_info_get_hardware_version
#define ob_device_info_supported_min_sdk_version   ob_device_info_get_supported_min_sdk_version
#define ob_device_info_asicName   ob_device_info_get_asicName
#define ob_device_info_device_type   ob_device_info_get_device_type
#define ob_device_list_get_device_count   ob_device_list_get_count
#define ob_camera_param_list_count   ob_camera_param_list_get_count

Functions

OB_EXPORT void ob_delete_device (ob_device *device, ob_error **error)
 Delete a device.
OB_EXPORT ob_sensor_listob_device_get_sensor_list (const ob_device *device, ob_error **error)
 List all sensors.
OB_EXPORT ob_sensorob_device_get_sensor (ob_device *device, ob_sensor_type type, ob_error **error)
 Get a device's sensor.
OB_EXPORT void ob_device_set_int_property (ob_device *device, ob_property_id property_id, int32_t value, ob_error **error)
 Set an integer type of device property.
OB_EXPORT int32_t ob_device_get_int_property (ob_device *device, ob_property_id property_id, ob_error **error)
 Get an integer type of device property.
OB_EXPORT ob_int_property_range ob_device_get_int_property_range (ob_device *device, ob_property_id property_id, ob_error **error)
 Get the integer type of device property range.
OB_EXPORT void ob_device_set_float_property (ob_device *device, ob_property_id property_id, float value, ob_error **error)
 Set a float type of device property.
OB_EXPORT float ob_device_get_float_property (ob_device *device, ob_property_id property_id, ob_error **error)
 Get a float type of device property.
OB_EXPORT ob_float_property_range ob_device_get_float_property_range (ob_device *device, ob_property_id property_id, ob_error **error)
 Get the float type of device property range.
OB_EXPORT void ob_device_set_bool_property (ob_device *device, ob_property_id property_id, bool value, ob_error **error)
 Set a boolean type of device property.
OB_EXPORT bool ob_device_get_bool_property (ob_device *device, ob_property_id property_id, ob_error **error)
 Get a boolean type of device property.
OB_EXPORT ob_bool_property_range ob_device_get_bool_property_range (ob_device *device, ob_property_id property_id, ob_error **error)
 Get the boolean type of device property range.
OB_EXPORT void ob_device_set_structured_data (ob_device *device, ob_property_id property_id, const uint8_t *data, uint32_t data_size, ob_error **error)
 Set structured data.
OB_EXPORT void ob_device_get_structured_data (ob_device *device, ob_property_id property_id, uint8_t *data, uint32_t *data_size, ob_error **error)
 Get structured data of a device property.
OB_EXPORT void ob_device_get_raw_data (ob_device *device, ob_property_id property_id, ob_get_data_callback cb, void *user_data, ob_error **error)
 Get raw data of a device property.
OB_EXPORT void ob_device_write_customer_data (ob_device *device, const void *data, uint32_t data_size, ob_error **error)
 Set customer data.
OB_EXPORT void ob_device_read_customer_data (ob_device *device, void *data, uint32_t *data_size, ob_error **error)
 Get customer data of a device property.
OB_EXPORT uint32_t ob_device_get_supported_property_count (const ob_device *device, ob_error **error)
 Get the number of properties supported by the device.
OB_EXPORT ob_property_item ob_device_get_supported_property_item (const ob_device *device, uint32_t index, ob_error **error)
 Get the type of property supported by the device.
OB_EXPORT bool ob_device_is_property_supported (const ob_device *device, ob_property_id property_id, ob_permission_type permission, ob_error **error)
 Check if a device property permission is supported.
OB_EXPORT bool ob_device_is_global_timestamp_supported (const ob_device *device, ob_error **error)
 Check if the device supports global timestamp.
OB_EXPORT void ob_device_enable_global_timestamp (ob_device *device, bool enable, ob_error **error)
 Enable or disable global timestamp.
OB_EXPORT void ob_device_update_firmware (ob_device *device, const char *path, ob_device_fw_update_callback callback, bool async, void *user_data, ob_error **error)
 Update the device firmware.
OB_EXPORT void ob_device_update_firmware_from_data (ob_device *device, const uint8_t *data, uint32_t data_size, ob_device_fw_update_callback callback, bool async, void *user_data, ob_error **error)
 Update the device firmware from data.
OB_EXPORT void ob_device_update_optional_depth_presets (ob_device *device, const char file_path_list[][OB_PATH_MAX], uint8_t path_count, ob_device_fw_update_callback callback, void *user_data, ob_error **error)
 Update the device optional depth presets.
OB_EXPORT void ob_device_reboot (ob_device *device, ob_error **error)
 Device reboot.
OB_EXPORT ob_device_state ob_device_get_device_state (const ob_device *device, ob_error **error)
 Get the current device status.
OB_EXPORT void ob_device_set_state_changed_callback (ob_device *device, ob_device_state_callback callback, void *user_data, ob_error **error)
 Set the device state changed callback.
OB_EXPORT void ob_device_enable_heartbeat (ob_device *device, bool enable, ob_error **error)
 Enable or disable the device heartbeat.
OB_EXPORT void ob_device_send_and_receive_data (ob_device *device, const uint8_t *send_data, uint32_t send_data_size, uint8_t *receive_data, uint32_t *receive_data_size, ob_error **error)
 Send data to the device and receive data from the device.
OB_EXPORT ob_device_infoob_device_get_device_info (const ob_device *device, ob_error **error)
 Get device information.
OB_EXPORT void ob_delete_device_info (ob_device_info *info, ob_error **error)
 Delete device information.
OB_EXPORT const char * ob_device_info_get_name (const ob_device_info *info, ob_error **error)
 Get device name.
OB_EXPORT int ob_device_info_get_pid (const ob_device_info *info, ob_error **error)
 Get device pid.
OB_EXPORT int ob_device_info_get_vid (const ob_device_info *info, ob_error **error)
 Get device vid.
OB_EXPORT const char * ob_device_info_get_uid (const ob_device_info *info, ob_error **error)
 Get device uid.
OB_EXPORT const char * ob_device_info_get_serial_number (const ob_device_info *info, ob_error **error)
 Get device serial number.
OB_EXPORT const char * ob_device_info_get_firmware_version (const ob_device_info *info, ob_error **error)
 Get the firmware version number.
OB_EXPORT const char * ob_device_info_get_connection_type (const ob_device_info *info, ob_error **error)
 Get the device connection type.
OB_EXPORT const char * ob_device_info_get_ip_address (const ob_device_info *info, ob_error **error)
 Get the device IP address.
OB_EXPORT const char * ob_device_info_get_subnet_mask (const ob_device_info *info, ob_error **error)
 Get the network device subnet mask.
OB_EXPORT const char * ob_device_info_get_gateway (const ob_device_info *info, ob_error **error)
 Get the network device gateway address.
OB_EXPORT const char * ob_device_info_get_hardware_version (const ob_device_info *info, ob_error **error)
 Get the hardware version number.
OB_EXPORT bool ob_device_is_extension_info_exist (const ob_device *device, const char *info_key, ob_error **error)
 Check if the device extension information exists.
OB_EXPORT const char * ob_device_get_extension_info (const ob_device *device, const char *info_key, ob_error **error)
 Get the device extension information.
OB_EXPORT const char * ob_device_info_get_supported_min_sdk_version (const ob_device_info *info, ob_error **error)
 Get the minimum SDK version number supported by the device.
OB_EXPORT const char * ob_device_info_get_asicName (const ob_device_info *info, ob_error **error)
 Get the chip name.
OB_EXPORT ob_device_type ob_device_info_get_device_type (const ob_device_info *info, ob_error **error)
 Get the device type.
OB_EXPORT void ob_delete_device_list (ob_device_list *list, ob_error **error)
 Delete a device list.
OB_EXPORT uint32_t ob_device_list_get_count (const ob_device_list *list, ob_error **error)
 Get the number of devices.
OB_EXPORT const char * ob_device_list_get_device_name (const ob_device_list *list, uint32_t index, ob_error **error)
 Get device name.
OB_EXPORT int ob_device_list_get_device_pid (const ob_device_list *list, uint32_t index, ob_error **error)
 Get the pid of the specified device.
OB_EXPORT int ob_device_list_get_device_vid (const ob_device_list *list, uint32_t index, ob_error **error)
 Get the vid of the specified device.
OB_EXPORT const char * ob_device_list_get_device_uid (const ob_device_list *list, uint32_t index, ob_error **error)
 Get the uid of the specified device.
OB_EXPORT const char * ob_device_list_get_device_serial_number (const ob_device_list *list, uint32_t index, ob_error **error)
 Get the serial number of the specified device.
OB_EXPORT const char * ob_device_list_get_device_connection_type (const ob_device_list *list, uint32_t index, ob_error **error)
 Get device connection type.
OB_EXPORT const char * ob_device_list_get_device_ip_address (const ob_device_list *list, uint32_t index, ob_error **error)
 Get device ip address.
OB_EXPORT const char * ob_device_list_get_device_subnet_mask (const ob_device_list *list, uint32_t index, ob_error **error)
 Get device subnet mask.
OB_EXPORT const char * ob_device_list_get_device_gateway (const ob_device_list *list, uint32_t index, ob_error **error)
 Get device gateway.
OB_EXPORT const char * ob_device_list_get_device_local_mac (const ob_device_list *list, uint32_t index, ob_error **error)
 Get the MAC address of the host network interface corresponding to the network device.
OB_EXPORT const char * ob_device_list_get_device_local_ip (const ob_device_list *list, uint32_t index, ob_error **error)
 Get the IP address of the host network interface corresponding to the network device.
OB_EXPORT uint8_t ob_device_list_get_device_local_subnet_length (const ob_device_list *list, uint32_t index, ob_error **error)
 Get the subnet length of the host network interface corresponding to the network device.
OB_EXPORT const char * ob_device_list_get_device_local_gateway (const ob_device_list *list, uint32_t index, ob_error **error)
 Get the gateway of the host network interface corresponding to the network device.
OB_EXPORT ob_deviceob_device_list_get_device (const ob_device_list *list, uint32_t index, ob_error **error)
 Create a device.
OB_EXPORT ob_deviceob_device_list_get_device_by_serial_number (const ob_device_list *list, const char *serial_number, ob_error **error)
 Create a device.
OB_EXPORT ob_deviceob_device_list_get_device_by_uid (const ob_device_list *list, const char *uid, ob_error **error)
 Create device by uid.
OB_EXPORT ob_camera_param_listob_device_get_calibration_camera_param_list (ob_device *device, ob_error **error)
 Get the original parameter list of camera calibration saved on the device.
OB_EXPORT uint32_t ob_camera_param_list_get_count (ob_camera_param_list *param_list, ob_error **error)
 Get the number of camera parameter lists.
OB_EXPORT ob_camera_param ob_camera_param_list_get_param (ob_camera_param_list *param_list, uint32_t index, ob_error **error)
 Get camera parameters from the camera parameter list.
OB_EXPORT void ob_delete_camera_param_list (ob_camera_param_list *param_list, ob_error **error)
 Delete the camera parameter list.

Detailed Description

Device-related functions, including operations such as obtaining and creating a device, setting and obtaining device property, and obtaining sensors.

Definition in file Device.h.

Macro Definition Documentation

◆ ob_device_list_device_count

#define ob_device_list_device_count   ob_device_list_get_count

Definition at line 745 of file Device.h.

◆ ob_device_list_get_extension_info

#define ob_device_list_get_extension_info   ob_device_info_get_extension_info

Definition at line 746 of file Device.h.

◆ ob_device_upgrade

#define ob_device_upgrade   ob_device_update_firmware

Definition at line 747 of file Device.h.

◆ ob_device_upgrade_from_data

#define ob_device_upgrade_from_data   ob_device_update_firmware_from_data

Definition at line 748 of file Device.h.

◆ ob_device_get_supported_property

#define ob_device_get_supported_property   ob_device_get_supported_property_item

Definition at line 749 of file Device.h.

◆ ob_device_state_changed

#define ob_device_state_changed   ob_device_set_state_changed_callback

Definition at line 750 of file Device.h.

◆ ob_device_info_name

#define ob_device_info_name   ob_device_info_get_name

Definition at line 751 of file Device.h.

◆ ob_device_info_pid

#define ob_device_info_pid   ob_device_info_get_pid

Definition at line 752 of file Device.h.

◆ ob_device_info_vid

#define ob_device_info_vid   ob_device_info_get_vid

Definition at line 753 of file Device.h.

◆ ob_device_info_uid

#define ob_device_info_uid   ob_device_info_get_uid

Definition at line 754 of file Device.h.

◆ ob_device_info_serial_number

#define ob_device_info_serial_number   ob_device_info_get_serial_number

Definition at line 755 of file Device.h.

◆ ob_device_info_firmware_version

#define ob_device_info_firmware_version   ob_device_info_get_firmware_version

Definition at line 756 of file Device.h.

◆ ob_device_info_connection_type

#define ob_device_info_connection_type   ob_device_info_get_connection_type

Definition at line 757 of file Device.h.

◆ ob_device_info_ip_address

#define ob_device_info_ip_address   ob_device_info_get_ip_address

Definition at line 758 of file Device.h.

◆ ob_device_info_hardware_version

#define ob_device_info_hardware_version   ob_device_info_get_hardware_version

Definition at line 759 of file Device.h.

◆ ob_device_info_supported_min_sdk_version

#define ob_device_info_supported_min_sdk_version   ob_device_info_get_supported_min_sdk_version

Definition at line 760 of file Device.h.

◆ ob_device_info_asicName

#define ob_device_info_asicName   ob_device_info_get_asicName

Definition at line 761 of file Device.h.

◆ ob_device_info_device_type

#define ob_device_info_device_type   ob_device_info_get_device_type

Definition at line 762 of file Device.h.

◆ ob_device_list_get_device_count

#define ob_device_list_get_device_count   ob_device_list_get_count

Definition at line 763 of file Device.h.

◆ ob_camera_param_list_count

#define ob_camera_param_list_count   ob_camera_param_list_get_count

Definition at line 764 of file Device.h.

Function Documentation

◆ ob_delete_device()

OB_EXPORT void ob_delete_device ( ob_device * device,
ob_error ** error )

Delete a device.

Parameters
[in]deviceThe device to be deleted.
[out]errorPointer to an error object that will be set if an error occurs.

Referenced by ob::Device::operator=(), and ob::Device::~Device().

◆ ob_device_get_sensor_list()

OB_EXPORT ob_sensor_list * ob_device_get_sensor_list ( const ob_device * device,
ob_error ** error )

List all sensors.

Parameters
[in]deviceThe device object.
[out]errorPointer to an error object that will be set if an error occurs.
Returns
ob_sensor_list* The list of all sensors.

Referenced by ob::Device::getSensorList().

◆ ob_device_get_sensor()

OB_EXPORT ob_sensor * ob_device_get_sensor ( ob_device * device,
ob_sensor_type type,
ob_error ** error )

Get a device's sensor.

Parameters
[in]deviceThe device object.
[in]typeThe type of sensor to get.
[out]errorPointer to an error object that will be set if an error occurs.
Returns
ob_sensor* The acquired sensor.

Referenced by ob::Device::getSensor().

◆ ob_device_set_int_property()

OB_EXPORT void ob_device_set_int_property ( ob_device * device,
ob_property_id property_id,
int32_t value,
ob_error ** error )

Set an integer type of device property.

Parameters
[in]deviceThe device object.
[in]property_idThe ID of the property to be set.
[in]valueThe property value to be set.
[out]errorPointer to an error object that will be set if an error occurs.

Referenced by ob::Device::setIntProperty().

◆ ob_device_get_int_property()

OB_EXPORT int32_t ob_device_get_int_property ( ob_device * device,
ob_property_id property_id,
ob_error ** error )

Get an integer type of device property.

Parameters
[in]deviceThe device object.
[in]property_idThe property ID.
[out]errorPointer to an error object that will be set if an error occurs.
Returns
int32_t The property value.

Referenced by ob::Device::getIntProperty().

◆ ob_device_get_int_property_range()

OB_EXPORT ob_int_property_range ob_device_get_int_property_range ( ob_device * device,
ob_property_id property_id,
ob_error ** error )

Get the integer type of device property range.

Parameters
[in]deviceThe device object.
[in]property_idThe property id.
[out]errorPointer to an error object that will be set if an error occurs.
Returns
The property range.

Referenced by ob::Device::getIntPropertyRange().

◆ ob_device_set_float_property()

OB_EXPORT void ob_device_set_float_property ( ob_device * device,
ob_property_id property_id,
float value,
ob_error ** error )

Set a float type of device property.

Parameters
[in]deviceThe device object.
[in]property_idThe ID of the property to be set.
[in]valueThe property value to be set.
[out]errorPointer to an error object that will be set if an error occurs.

Referenced by ob::Device::setFloatProperty().

◆ ob_device_get_float_property()

OB_EXPORT float ob_device_get_float_property ( ob_device * device,
ob_property_id property_id,
ob_error ** error )

Get a float type of device property.

Parameters
[in]deviceThe device object.
[in]property_idThe property ID.
[out]errorPointer to an error object that will be set if an error occurs.
Returns
float The property value.

Referenced by ob::Device::getFloatProperty().

◆ ob_device_get_float_property_range()

OB_EXPORT ob_float_property_range ob_device_get_float_property_range ( ob_device * device,
ob_property_id property_id,
ob_error ** error )

Get the float type of device property range.

Parameters
[in]deviceThe device object.
[in]property_idThe property id.
[out]errorPointer to an error object that will be set if an error occurs.
Returns
The property range.

Referenced by ob::Device::getFloatPropertyRange().

◆ ob_device_set_bool_property()

OB_EXPORT void ob_device_set_bool_property ( ob_device * device,
ob_property_id property_id,
bool value,
ob_error ** error )

Set a boolean type of device property.

Parameters
[in]deviceThe device object.
[in]property_idThe ID of the property to be set.
[in]valueThe property value to be set.
[out]errorPointer to an error object that will be set if an error occurs.

Referenced by ob::Device::setBoolProperty().

◆ ob_device_get_bool_property()

OB_EXPORT bool ob_device_get_bool_property ( ob_device * device,
ob_property_id property_id,
ob_error ** error )

Get a boolean type of device property.

Parameters
[in]deviceThe device object.
[in]property_idThe property ID.
[out]errorPointer to an error object that will be set if an error occurs.
Returns
bool The property value.

Referenced by ob::Device::getBoolProperty().

◆ ob_device_get_bool_property_range()

OB_EXPORT ob_bool_property_range ob_device_get_bool_property_range ( ob_device * device,
ob_property_id property_id,
ob_error ** error )

Get the boolean type of device property range.

Parameters
[in]deviceThe device object.
[in]property_idThe property id.
[out]errorPointer to an error object that will be set if an error occurs.
Returns
The property range.

Referenced by ob::Device::getBoolPropertyRange().

◆ ob_device_set_structured_data()

OB_EXPORT void ob_device_set_structured_data ( ob_device * device,
ob_property_id property_id,
const uint8_t * data,
uint32_t data_size,
ob_error ** error )

Set structured data.

Parameters
[in]deviceThe device object.
[in]property_idThe ID of the property to be set.
[in]dataThe property data to be set.
[in]data_sizeThe size of the property to be set.
[out]errorPointer to an error object that will be set if an error occurs.

Referenced by ob::Device::setStructuredData().

◆ ob_device_get_structured_data()

OB_EXPORT void ob_device_get_structured_data ( ob_device * device,
ob_property_id property_id,
uint8_t * data,
uint32_t * data_size,
ob_error ** error )

Get structured data of a device property.

Parameters
[in]deviceThe device object.
[in]property_idThe ID of the property.
[out]dataThe obtained property data.
[out]data_sizeThe size of the obtained property data.
[out]errorPointer to an error object that will be set if an error occurs.

Referenced by ob::Device::getStructuredData().

◆ ob_device_get_raw_data()

OB_EXPORT void ob_device_get_raw_data ( ob_device * device,
ob_property_id property_id,
ob_get_data_callback cb,
void * user_data,
ob_error ** error )

Get raw data of a device property.

Parameters
[in]deviceThe device object.
[in]property_idThe ID of the property.
[out]cbThe get data callback.
[out]user_dataUser-defined data that will be returned in the callback.
[out]errorPointer to an error object that will be set if an error occurs.

◆ ob_device_write_customer_data()

OB_EXPORT void ob_device_write_customer_data ( ob_device * device,
const void * data,
uint32_t data_size,
ob_error ** error )

Set customer data.

Parameters
[in]deviceThe device object.
[in]dataThe property data to be set.
[in]data_sizeThe size of the property to be set,the maximum length cannot exceed 65532 bytes.
[out]errorLog error messages.

Referenced by ob::Device::writeCustomerData().

◆ ob_device_read_customer_data()

OB_EXPORT void ob_device_read_customer_data ( ob_device * device,
void * data,
uint32_t * data_size,
ob_error ** error )

Get customer data of a device property.

Parameters
[in]deviceThe device object.
[out]dataThe obtained property data.
[out]data_sizeThe size of the obtained property data.
[out]errorLog error messages.

Referenced by ob::Device::readCustomerData().

◆ ob_device_get_supported_property_count()

OB_EXPORT uint32_t ob_device_get_supported_property_count ( const ob_device * device,
ob_error ** error )

Get the number of properties supported by the device.

Parameters
[in]deviceThe device object.
[out]errorPointer to an error object that will be set if an error occurs.
Returns
The number of properties supported by the device.

Referenced by ob::Device::getSupportedPropertyCount().

◆ ob_device_get_supported_property_item()

OB_EXPORT ob_property_item ob_device_get_supported_property_item ( const ob_device * device,
uint32_t index,
ob_error ** error )

Get the type of property supported by the device.

Parameters
[in]deviceThe device object.
[in]indexThe property index.
[out]errorPointer to an error object that will be set if an error occurs.
Returns
The type of property supported by the device.

Referenced by ob::Device::getSupportedProperty().

◆ ob_device_is_property_supported()

OB_EXPORT bool ob_device_is_property_supported ( const ob_device * device,
ob_property_id property_id,
ob_permission_type permission,
ob_error ** error )

Check if a device property permission is supported.

Parameters
[in]deviceThe device object.
[in]property_idThe property id.
[in]permissionThe type of permission that needs to be interpreted.
[out]errorPointer to an error object that will be set if an error occurs.
Returns
Whether the property permission is supported.

Referenced by ob::Device::isPropertySupported().

◆ ob_device_is_global_timestamp_supported()

OB_EXPORT bool ob_device_is_global_timestamp_supported ( const ob_device * device,
ob_error ** error )

Check if the device supports global timestamp.

Parameters
[in]deviceThe device object.
[out]errorPointer to an error object that will be set if an error occurs.
Returns
bool Whether the device supports global timestamp.

Referenced by ob::Device::isGlobalTimestampSupported().

◆ ob_device_enable_global_timestamp()

OB_EXPORT void ob_device_enable_global_timestamp ( ob_device * device,
bool enable,
ob_error ** error )

Enable or disable global timestamp.

Parameters
deviceThe device object.
enableWhether to enable global timestamp.
errorPointer to an error object that will be set if an error occurs.

Referenced by ob::Device::enableGlobalTimestamp().

◆ ob_device_update_firmware()

OB_EXPORT void ob_device_update_firmware ( ob_device * device,
const char * path,
ob_device_fw_update_callback callback,
bool async,
void * user_data,
ob_error ** error )

Update the device firmware.

Parameters
[in]deviceThe device object.
[in]pathThe firmware path.
[in]callbackThe firmware upgrade progress callback.
[in]asyncWhether to execute asynchronously.
[in]user_dataUser-defined data that will be returned in the callback.
[out]errorPointer to an error object that will be set if an error occurs.

Referenced by ob::Device::updateFirmware().

◆ ob_device_update_firmware_from_data()

OB_EXPORT void ob_device_update_firmware_from_data ( ob_device * device,
const uint8_t * data,
uint32_t data_size,
ob_device_fw_update_callback callback,
bool async,
void * user_data,
ob_error ** error )

Update the device firmware from data.

Parameters
[in]deviceThe device object.
[in]dataThe firmware file data.
[in]data_sizeThe firmware file size.
[in]callbackThe firmware upgrade progress callback.
[in]asyncWhether to execute asynchronously.
[in]user_dataUser-defined data that will be returned in the callback.
[out]errorPointer to an error object that will be set if an error occurs.

Referenced by ob::Device::updateFirmwareFromData().

◆ ob_device_update_optional_depth_presets()

OB_EXPORT void ob_device_update_optional_depth_presets ( ob_device * device,
const char file_path_list[][OB_PATH_MAX],
uint8_t path_count,
ob_device_fw_update_callback callback,
void * user_data,
ob_error ** error )

Update the device optional depth presets.

Parameters
[in]deviceThe device object.
[in]file_path_listA list(2D array) of preset file paths, each up to OB_PATH_MAX characters.
[in]path_countThe number of the preset file paths.
[in]callbackThe preset upgrade progress callback.
[in]user_dataUser-defined data that will be returned in the callback.
[out]errorPointer to an error object that will be set if an error occurs.

Referenced by ob::Device::updateOptionalDepthPresets().

◆ ob_device_reboot()

OB_EXPORT void ob_device_reboot ( ob_device * device,
ob_error ** error )

Device reboot.

Attention
The device will be disconnected and reconnected. After the device is disconnected, the interface access to the device handle may be abnormal. Please use the ob_delete_device interface to delete the handle directly. After the device is reconnected, it can be obtained again.
Parameters
[in]deviceDevice object
[out]errorPointer to an error object that will be set if an error occurs.

Referenced by ob::Device::reboot().

◆ ob_device_get_device_state()

OB_EXPORT ob_device_state ob_device_get_device_state ( const ob_device * device,
ob_error ** error )

Get the current device status.

Parameters
[in]deviceThe device object.
[out]errorPointer to an error object that will be set if an error occurs.
Returns
ob_device_state The device state information.

Referenced by ob::Device::getDeviceState().

◆ ob_device_set_state_changed_callback()

OB_EXPORT void ob_device_set_state_changed_callback ( ob_device * device,
ob_device_state_callback callback,
void * user_data,
ob_error ** error )

Set the device state changed callback.

Parameters
[in]deviceThe device object.
[in]callbackThe callback function to be called when the device status changes.
[in]user_dataUser-defined data that will be returned in the callback.
[out]errorPointer to an error object that will be set if an error occurs.

Referenced by ob::Device::setDeviceStateChangedCallback().

◆ ob_device_enable_heartbeat()

OB_EXPORT void ob_device_enable_heartbeat ( ob_device * device,
bool enable,
ob_error ** error )

Enable or disable the device heartbeat.

After enable the device heartbeat, the sdk will start a thread to send heartbeat signal to the device error every 3 seconds.

Attention
If the device does not receive the heartbeat signal for a long time, it will be disconnected and rebooted.
Parameters
[in]deviceThe device object.
[in]enableWhether to enable the device heartbeat.
errorPointer to an error object that will be set if an error occurs.

Referenced by ob::Device::enableHeartbeat().

◆ ob_device_send_and_receive_data()

OB_EXPORT void ob_device_send_and_receive_data ( ob_device * device,
const uint8_t * send_data,
uint32_t send_data_size,
uint8_t * receive_data,
uint32_t * receive_data_size,
ob_error ** error )

Send data to the device and receive data from the device.

This is a factory and debug function, which can be used to send and receive data from the device. The data format is secret and belongs to the device vendor.

Parameters
[in]deviceThe device object.
[in]send_dataThe data to be sent to the device.
[in]send_data_sizeThe size of the data to be sent to the device.
[out]receive_dataThe data received from the device.
[in,out]receive_data_sizePass in the expected size of the receive data, and return the actual size of the received data.
errorPointer to an error object that will be set if an error occurs.

Referenced by ob::Device::sendAndReceiveData().

◆ ob_device_get_device_info()

OB_EXPORT ob_device_info * ob_device_get_device_info ( const ob_device * device,
ob_error ** error )

Get device information.

Parameters
[in]deviceThe device to obtain information from.
[out]errorPointer to an error object that will be set if an error occurs.
Returns
ob_device_info* The device information.

Referenced by ob::Device::getDeviceInfo().

◆ ob_delete_device_info()

OB_EXPORT void ob_delete_device_info ( ob_device_info * info,
ob_error ** error )

Delete device information.

Parameters
[in]infoThe device information to be deleted.
[out]errorPointer to an error object that will be set if an error occurs.

Referenced by ob::DeviceInfo::~DeviceInfo().

◆ ob_device_info_get_name()

OB_EXPORT const char * ob_device_info_get_name ( const ob_device_info * info,
ob_error ** error )

Get device name.

Parameters
[in]infoDevice Information
[out]errorPointer to an error object that will be set if an error occurs.
Returns
const char* return the device name

Referenced by ob::DeviceInfo::getName().

◆ ob_device_info_get_pid()

OB_EXPORT int ob_device_info_get_pid ( const ob_device_info * info,
ob_error ** error )

Get device pid.

Parameters
[in]infoDevice Information
[out]errorPointer to an error object that will be set if an error occurs.
Returns
int return the device pid

Referenced by ob::DeviceInfo::getPid().

◆ ob_device_info_get_vid()

OB_EXPORT int ob_device_info_get_vid ( const ob_device_info * info,
ob_error ** error )

Get device vid.

Parameters
[in]infoDevice Information
[out]errorPointer to an error object that will be set if an error occurs.
Returns
int return device vid

Referenced by ob::DeviceInfo::getVid().

◆ ob_device_info_get_uid()

OB_EXPORT const char * ob_device_info_get_uid ( const ob_device_info * info,
ob_error ** error )

Get device uid.

Parameters
[in]infoDevice Information
[out]errorPointer to an error object that will be set if an error occurs.
Returns
const char* return device uid

Referenced by ob::DeviceInfo::getUid().

◆ ob_device_info_get_serial_number()

OB_EXPORT const char * ob_device_info_get_serial_number ( const ob_device_info * info,
ob_error ** error )

Get device serial number.

Parameters
[in]infoDevice Information
[out]errorPointer to an error object that will be set if an error occurs.
Returns
const char* return device serial number

Referenced by ob::DeviceInfo::getSerialNumber().

◆ ob_device_info_get_firmware_version()

OB_EXPORT const char * ob_device_info_get_firmware_version ( const ob_device_info * info,
ob_error ** error )

Get the firmware version number.

Parameters
[in]infoDevice Information
[out]errorPointer to an error object that will be set if an error occurs.
Returns
int return the firmware version number

Referenced by ob::DeviceInfo::getFirmwareVersion().

◆ ob_device_info_get_connection_type()

OB_EXPORT const char * ob_device_info_get_connection_type ( const ob_device_info * info,
ob_error ** error )

Get the device connection type.

Parameters
[in]infoDevice Information
[out]errorPointer to an error object that will be set if an error occurs.
Returns
const char* The connection type, currently supports: "USB", "USB1.0", "USB1.1", "USB2.0", "USB2.1", "USB3.0", "USB3.1", "USB3.2", "Ethernet"

Referenced by ob::DeviceInfo::getConnectionType().

◆ ob_device_info_get_ip_address()

OB_EXPORT const char * ob_device_info_get_ip_address ( const ob_device_info * info,
ob_error ** error )

Get the device IP address.

Attention
Only valid for network devices, otherwise it will return "0.0.0.0"
Parameters
infoDevice Information
errorPointer to an error object that will be set if an error occurs.
Returns
const char* The IP address, such as "192.168.1.10"

Referenced by ob::DeviceInfo::getIpAddress().

◆ ob_device_info_get_subnet_mask()

OB_EXPORT const char * ob_device_info_get_subnet_mask ( const ob_device_info * info,
ob_error ** error )

Get the network device subnet mask.

Parameters
[in]infoDevice information
[out]errorPointer to an error object that will be set if an error occurs.
Returns
const char* The subnet mask, such as "255.255.255.0"

Referenced by ob::DeviceInfo::getDeviceSubnetMask().

◆ ob_device_info_get_gateway()

OB_EXPORT const char * ob_device_info_get_gateway ( const ob_device_info * info,
ob_error ** error )

Get the network device gateway address.

Parameters
[in]infoDevice information
[out]errorPointer to an error object that will be set if an error occurs.
Returns
const char* The gateway address, such as "192.168.1.1"

Referenced by ob::DeviceInfo::getDevicegateway().

◆ ob_device_info_get_hardware_version()

OB_EXPORT const char * ob_device_info_get_hardware_version ( const ob_device_info * info,
ob_error ** error )

Get the hardware version number.

Parameters
[in]infoDevice Information
[out]errorPointer to an error object that will be set if an error occurs.
Returns
const char* The hardware version number

Referenced by ob::DeviceInfo::getHardwareVersion().

◆ ob_device_is_extension_info_exist()

OB_EXPORT bool ob_device_is_extension_info_exist ( const ob_device * device,
const char * info_key,
ob_error ** error )

Check if the device extension information exists.

Parameters
deviceThe device object.
info_keyThe key of the device extension information.
errorPointer to an error object that will be set if an error occurs.
Returns
bool Whether the device extension information exists.

Referenced by ob::Device::isExtensionInfoExist().

◆ ob_device_get_extension_info()

OB_EXPORT const char * ob_device_get_extension_info ( const ob_device * device,
const char * info_key,
ob_error ** error )

Get the device extension information.

Extension information is a set of key-value pair of string, user cat get the information by the key.

Parameters
[in]deviceThe device object.
[in]info_keyThe key of the device extension information.
[out]errorPointer to an error object that will be set if an error occurs.
Returns
const char* The device extension information

Referenced by ob::Device::getExtensionInfo().

◆ ob_device_info_get_supported_min_sdk_version()

OB_EXPORT const char * ob_device_info_get_supported_min_sdk_version ( const ob_device_info * info,
ob_error ** error )

Get the minimum SDK version number supported by the device.

Parameters
[in]infoDevice Information
[out]errorPointer to an error object that will be set if an error occurs.
Returns
const char* The minimum SDK version number supported by the device

Referenced by ob::DeviceInfo::getSupportedMinSdkVersion().

◆ ob_device_info_get_asicName()

OB_EXPORT const char * ob_device_info_get_asicName ( const ob_device_info * info,
ob_error ** error )

Get the chip name.

Parameters
[in]infoDevice Information
[out]errorPointer to an error object that will be set if an error occurs.
Returns
const char* The ASIC name

Referenced by ob::DeviceInfo::getAsicName().

◆ ob_device_info_get_device_type()

OB_EXPORT ob_device_type ob_device_info_get_device_type ( const ob_device_info * info,
ob_error ** error )

Get the device type.

Parameters
[in]infoDevice Information
[out]errorPointer to an error object that will be set if an error occurs.
Returns
ob_device_type The device type

Referenced by ob::DeviceInfo::getDeviceType().

◆ ob_delete_device_list()

OB_EXPORT void ob_delete_device_list ( ob_device_list * list,
ob_error ** error )

Delete a device list.

Parameters
[in]listThe device list object to be deleted.
[out]errorPointer to an error object that will be set if an error occurs.

Referenced by ob::DeviceList::~DeviceList().

◆ ob_device_list_get_count()

OB_EXPORT uint32_t ob_device_list_get_count ( const ob_device_list * list,
ob_error ** error )

Get the number of devices.

Parameters
[in]listDevice list object
[out]errorPointer to an error object that will be set if an error occurs.
Returns
uint32_t return the number of devices

Referenced by ob::DeviceList::getCount().

◆ ob_device_list_get_device_name()

OB_EXPORT const char * ob_device_list_get_device_name ( const ob_device_list * list,
uint32_t index,
ob_error ** error )

Get device name.

Parameters
[in]listDevice list object
[in]indexDevice index
[out]errorPointer to an error object that will be set if an error occurs.
Returns
const char* return device name

Referenced by ob::DeviceList::getName().

◆ ob_device_list_get_device_pid()

OB_EXPORT int ob_device_list_get_device_pid ( const ob_device_list * list,
uint32_t index,
ob_error ** error )

Get the pid of the specified device.

Parameters
[in]listDevice list object
[in]indexDevice index
[out]errorPointer to an error object that will be set if an error occurs.
Returns
int return the device pid

Referenced by ob::DeviceList::getPid().

◆ ob_device_list_get_device_vid()

OB_EXPORT int ob_device_list_get_device_vid ( const ob_device_list * list,
uint32_t index,
ob_error ** error )

Get the vid of the specified device.

Parameters
[in]listDevice list object
[in]indexDevice index
[out]errorPointer to an error object that will be set if an error occurs.
Returns
int return device vid

Referenced by ob::DeviceList::getVid().

◆ ob_device_list_get_device_uid()

OB_EXPORT const char * ob_device_list_get_device_uid ( const ob_device_list * list,
uint32_t index,
ob_error ** error )

Get the uid of the specified device.

Parameters
[in]listDevice list object
[in]indexDevice index
[out]errorPointer to an error object that will be set if an error occurs.
Returns
const char* return the device uid

Referenced by ob::DeviceList::getUid().

◆ ob_device_list_get_device_serial_number()

OB_EXPORT const char * ob_device_list_get_device_serial_number ( const ob_device_list * list,
uint32_t index,
ob_error ** error )

Get the serial number of the specified device.

Parameters
[in]listDevice list object.
[in]indexDevice index.
[out]errorPointer to an error object that will be set if an error occurs.
Returns
const char* The device UID.

Referenced by ob::DeviceList::getSerialNumber().

◆ ob_device_list_get_device_connection_type()

OB_EXPORT const char * ob_device_list_get_device_connection_type ( const ob_device_list * list,
uint32_t index,
ob_error ** error )

Get device connection type.

Parameters
[in]listDevice list object
[in]indexDevice index
[out]errorPointer to an error object that will be set if an error occurs.
Returns
const char* returns the device connection type, currently supports: "USB", "USB1.0", "USB1.1", "USB2.0", "USB2.1", "USB3.0", "USB3.1", "USB3.2", "Ethernet"

Referenced by ob::DeviceList::getConnectionType().

◆ ob_device_list_get_device_ip_address()

OB_EXPORT const char * ob_device_list_get_device_ip_address ( const ob_device_list * list,
uint32_t index,
ob_error ** error )

Get device ip address.

Attention
Only valid for network devices, otherwise it will return "0.0.0.0".
Parameters
listDevice list object
indexDevice index
errorPointer to an error object that will be set if an error occurs.
Returns
const char* returns the device ip address, such as "192.168.1.10"

Referenced by ob::DeviceList::getIpAddress().

◆ ob_device_list_get_device_subnet_mask()

OB_EXPORT const char * ob_device_list_get_device_subnet_mask ( const ob_device_list * list,
uint32_t index,
ob_error ** error )

Get device subnet mask.

Attention
Only valid for network devices, otherwise it will return "0.0.0.0".
Parameters
[in]listDevice list object
[in]indexDevice index
[out]errorPointer to an error object that will be set if an error occurs.
Returns
const char* returns the device subnet mask, such as "255.255.255.0"

Referenced by ob::DeviceList::getSubnetMask().

◆ ob_device_list_get_device_gateway()

OB_EXPORT const char * ob_device_list_get_device_gateway ( const ob_device_list * list,
uint32_t index,
ob_error ** error )

Get device gateway.

Attention
Only valid for network devices, otherwise it will return "0.0.0.0".
Parameters
[in]listDevice list object
[in]indexDevice index
[out]errorPointer to an error object that will be set if an error occurs.
Returns
const char* returns the device gateway, such as "192.168.1.1"

Referenced by ob::DeviceList::getGateway().

◆ ob_device_list_get_device_local_mac()

OB_EXPORT const char * ob_device_list_get_device_local_mac ( const ob_device_list * list,
uint32_t index,
ob_error ** error )

Get the MAC address of the host network interface corresponding to the network device.

Attention
Only valid for network devices. Returns "0:0:0:0:0:0" for non-network devices.
Parameters
listDevice list object
indexDevice index
errorPointer to an error object that will be set if an error occurs.
Returns
const char* The MAC address of the host network interface associated with the device.

Referenced by ob::DeviceList::getLocalMacAddress().

◆ ob_device_list_get_device_local_ip()

OB_EXPORT const char * ob_device_list_get_device_local_ip ( const ob_device_list * list,
uint32_t index,
ob_error ** error )

Get the IP address of the host network interface corresponding to the network device.

Attention
Only valid for network devices. Returns "0.0.0.0" for non-network devices.
Parameters
[in]listDevice list object
[in]indexDevice index
[out]errorPointer to an error object that will be set if an error occurs.
Returns
const char* The IP address of the host network interface associated with the device.

Referenced by ob::DeviceList::getLocalIP().

◆ ob_device_list_get_device_local_subnet_length()

OB_EXPORT uint8_t ob_device_list_get_device_local_subnet_length ( const ob_device_list * list,
uint32_t index,
ob_error ** error )

Get the subnet length of the host network interface corresponding to the network device.

Attention
Only valid for network devices. Returns 0 for non-network devices.
Parameters
[in]listDevice list object
[in]indexDevice index
[out]errorPointer to an error object that will be set if an error occurs.
Returns
const uint8_t The subnet length (0~32) of the host network interface associated with the device.

Referenced by ob::DeviceList::getLocalSubnetLength().

◆ ob_device_list_get_device_local_gateway()

OB_EXPORT const char * ob_device_list_get_device_local_gateway ( const ob_device_list * list,
uint32_t index,
ob_error ** error )

Get the gateway of the host network interface corresponding to the network device.

Attention
Only valid for network devices. Returns "0.0.0.0" for non-network devices.
Parameters
[in]listDevice list object
[in]indexDevice index
[out]errorPointer to an error object that will be set if an error occurs.
Returns
const char* The gateway of the host network interface associated with the device.

Referenced by ob::DeviceList::getLocalGateway().

◆ ob_device_list_get_device()

OB_EXPORT ob_device * ob_device_list_get_device ( const ob_device_list * list,
uint32_t index,
ob_error ** error )

Create a device.

Attention
If the device has already been acquired and created elsewhere, repeated acquisitions will return an error.
Parameters
[in]listDevice list object.
[in]indexThe index of the device to create.
[out]errorPointer to an error object that will be set if an error occurs.
Returns
ob_device* The created device.

Referenced by ob::DeviceList::getDevice().

◆ ob_device_list_get_device_by_serial_number()

OB_EXPORT ob_device * ob_device_list_get_device_by_serial_number ( const ob_device_list * list,
const char * serial_number,
ob_error ** error )

Create a device.

Attention
If the device has already been acquired and created elsewhere, repeated acquisitions will return an error.
Parameters
[in]listDevice list object.
[in]serial_numberThe serial number of the device to create.
[out]errorPointer to an error object that will be set if an error occurs.
Returns
ob_device* The created device.

Referenced by ob::DeviceList::getDeviceBySN().

◆ ob_device_list_get_device_by_uid()

OB_EXPORT ob_device * ob_device_list_get_device_by_uid ( const ob_device_list * list,
const char * uid,
ob_error ** error )

Create device by uid.

On Linux platform, for usb device, the uid of the device is composed of bus-port-dev, for example 1-1.2-1. But the SDK will remove the dev number and only keep the bus-port as the uid to create the device, for example 1-1.2, so that we can create a device connected to the specified USB port. Similarly, users can also directly pass in bus-port as uid to create device.

For GMSL device, the uid is GMSL port with "gmsl2-" prefix, for example gmsl2-1.

Attention
If the device has already been acquired and created elsewhere, repeated acquisitions will return an error.
Parameters
[in]listDevice list object.
[in]uidThe UID of the device to create.
[out]errorPointer to an error object that will be set if an error occurs.
Returns
ob_device* The created device.

Referenced by ob::DeviceList::getDeviceByUid().

◆ ob_device_get_calibration_camera_param_list()

OB_EXPORT ob_camera_param_list * ob_device_get_calibration_camera_param_list ( ob_device * device,
ob_error ** error )

Get the original parameter list of camera calibration saved on the device.

Attention
The parameters in the list do not correspond to the current open-stream configuration.You need to select the parameters according to the actual situation, and may need to do scaling, mirroring and other processing. Non-professional users are recommended to use the ob_pipeline_get_camera_param() interface.
Parameters
[in]deviceThe device object.
[out]errorLog error messages.
Returns
ob_camera_param_list The camera parameter list.

Referenced by ob::Device::getCalibrationCameraParamList().

◆ ob_camera_param_list_get_count()

OB_EXPORT uint32_t ob_camera_param_list_get_count ( ob_camera_param_list * param_list,
ob_error ** error )

Get the number of camera parameter lists.

Parameters
[in]param_listCamera parameter list
[out]errorLog error messages
Returns
uint32_t The number of lists

Referenced by ob::CameraParamList::getCount().

◆ ob_camera_param_list_get_param()

OB_EXPORT ob_camera_param ob_camera_param_list_get_param ( ob_camera_param_list * param_list,
uint32_t index,
ob_error ** error )

Get camera parameters from the camera parameter list.

Parameters
[in]param_listCamera parameter list
[in]indexParameter index
[out]errorLog error messages
Returns
ob_camera_param The camera parameters. Since it returns the structure object directly, there is no need to provide a delete interface.

Referenced by ob::CameraParamList::getCameraParam().

◆ ob_delete_camera_param_list()

OB_EXPORT void ob_delete_camera_param_list ( ob_camera_param_list * param_list,
ob_error ** error )

Delete the camera parameter list.

Parameters
[in]param_listCamera parameter list
[out]errorLog error messages

Referenced by ob::CameraParamList::~CameraParamList().