![]() |
OrbbecSDK
1.5.7
OrbbecSDK: Software-Development-Kit for Orbbec 3D-Sensor devices
|
#include <Device.hpp>
Public 成员函数 | |
Device (std::unique_ptr< DeviceImpl > impl) | |
描述RGBD相机的实体,代表一个具体型号的RGBD相机 更多... | |
virtual | ~Device () noexcept |
std::shared_ptr< DeviceInfo > | getDeviceInfo () |
获取设备信息 更多... | |
std::shared_ptr< SensorList > | getSensorList () |
获取设备传感器列表 更多... | |
std::shared_ptr< Sensor > | getSensor (OBSensorType type) |
获取指定类型传感器 如果设备没有打开传感器,在SDK内部会自动打开设备并返回实例 更多... | |
void | setIntProperty (OBPropertyID propertyId, int32_t property) |
设置int类型的设备属性 更多... | |
void | setFloatProperty (OBPropertyID propertyId, float property) |
设置float类型的设备属性 更多... | |
void | setBoolProperty (OBPropertyID propertyId, bool property) |
设置bool类型的设备属性 更多... | |
int32_t | getIntProperty (OBPropertyID propertyId) |
获取int类型的设备属性 更多... | |
float | getFloatProperty (OBPropertyID propertyId) |
获取float类型的设备属性 更多... | |
bool | getBoolProperty (OBPropertyID propertyId) |
获取bool类型的设备属性 更多... | |
OBIntPropertyRange | getIntPropertyRange (OBPropertyID propertyId) |
获取int类型的设备属性的范围(包括当前值和默认值) 更多... | |
OBFloatPropertyRange | getFloatPropertyRange (OBPropertyID propertyId) |
获取float类型的设备属性的范围(包括当前值和默认值) 更多... | |
OBBoolPropertyRange | getBoolPropertyRange (OBPropertyID propertyId) |
获取bool类型的设备属性的范围(包括当前值和默认值) 更多... | |
void | writeAHB (uint32_t reg, uint32_t mask, uint32_t value) |
AHB写寄存器 更多... | |
void | readAHB (uint32_t reg, uint32_t mask, uint32_t *value) |
AHB读寄存器 更多... | |
void | writeI2C (uint32_t moduleId, uint32_t reg, uint32_t mask, uint32_t value) |
I2C写寄存器 更多... | |
void | readI2C (uint32_t moduleId, uint32_t reg, uint32_t mask, uint32_t *value) |
I2C读寄存器 更多... | |
void | writeFlash (uint32_t offset, const void *data, uint32_t dataSize, SetDataCallback callback, bool async=false) |
设置写入Flash的属性 更多... | |
void | readFlash (uint32_t offset, uint32_t dataSize, GetDataCallback callback, bool async=false) |
读取Flash的属性 更多... | |
void | setRawData (OBPropertyID propertyId, const void *data, uint32_t dataSize, SetDataCallback callback, bool async=false) |
设置raw data类型的设备属性数据[异步回调] 更多... | |
void | getRawData (OBPropertyID propertyId, GetDataCallback callback, bool async=false) |
获取raw data类型的设备属性数据[异步回调] 更多... | |
void | setStructuredData (OBPropertyID propertyId, const void *data, uint32_t dataSize) |
设置structured data类型的设备属性 更多... | |
void | getStructuredData (OBPropertyID propertyId, void *data, uint32_t *dataSize) |
获取structured data类型的设备属性 更多... | |
void | setStructuredDataExt (OBPropertyID propertyId, std::shared_ptr< OBDataBundle > dataBundle, SetDataCallback callback) |
Set the Structured Data Ext object. 更多... | |
std::shared_ptr< OBDataBundle > | getStructuredDataExt (OBPropertyID propertyId) |
获取structured data类型的数据 更多... | |
OBProtocolVersion | getProtocolVersion () |
获取设备的控制命令协议版本 更多... | |
OBCmdVersion | getCmdVersion (OBPropertyID propertyId) |
获取控制命令的版本号 更多... | |
uint32_t | getSupportedPropertyCount () |
获取设备支持的属性的数量 更多... | |
OBPropertyItem | getSupportedProperty (uint32_t index) |
获取设备支持的属性 更多... | |
bool | isPropertySupported (OBPropertyID propertyId, OBPermissionType permission) |
判断属性权限支持情况 更多... | |
uint64_t | syncDeviceTime () |
同步设备时间(向设备授时,同步本地系统时间到设备) 更多... | |
void | deviceUpgrade (const char *filePath, DeviceUpgradeCallback callback, bool async=true) |
升级设备固件 更多... | |
void | sendFile (const char *filePath, const char *dstPath, SendFileCallback callback, bool async=true) |
发送文件到设备端指定路径[异步回调] 更多... | |
OBDeviceState | getDeviceState () |
获取当前设备状态 更多... | |
void | setDeviceStateChangedCallback (DeviceStateChangedCallback callback) |
设置设备状态改变回调函数 更多... | |
bool | activateAuthorization (const char *authCode) |
验证设备授权码 更多... | |
void | writeAuthorizationCode (const char *authCodeStr) |
写入设备授权码 更多... | |
std::shared_ptr< CameraParamList > | getCalibrationCameraParamList () |
获取设备内保存的相机标定的原始参数列表,列表内参数不与当前开流配置相对应, 需要自行根据实际情况选用参数并可能需要做缩放、镜像等处理。非专业用户建议使用Pipeline::getCameraParam()接口。 更多... | |
OBDepthWorkMode | getCurrentDepthWorkMode () |
查询当前的相机深度模式 更多... | |
OBStatus | switchDepthWorkMode (const OBDepthWorkMode &workMode) |
切换相机深度模式(根据深度工作模式对象),如果知道设备支持的深度工作模式名称,那么推荐用switchDepthWorkMode(const char *modeName) 更多... | |
OBStatus | switchDepthWorkMode (const char *modeName) |
切换相机深度模式(根据深度工作模式名称) 更多... | |
std::shared_ptr< OBDepthWorkModeList > | getDepthWorkModeList () |
查询相机深度模式列表 更多... | |
void | reboot () |
设备重启 更多... | |
OBDeviceSyncConfig | getSyncConfig () |
获取当前设备同步配置 更多... | |
void | setSyncConfig (const OBDeviceSyncConfig &deviceSyncConfig) |
设置设备同步配置 更多... | |
友元 | |
class | Pipeline |
class | Recorder |
在文件 Device.hpp 第 33 行定义.
ob::Device::Device | ( | std::unique_ptr< DeviceImpl > | impl | ) |
描述RGBD相机的实体,代表一个具体型号的RGBD相机
|
virtualnoexcept |
std::shared_ptr<DeviceInfo> ob::Device::getDeviceInfo | ( | ) |
获取设备信息
std::shared_ptr<SensorList> ob::Device::getSensorList | ( | ) |
获取设备传感器列表
std::shared_ptr<Sensor> ob::Device::getSensor | ( | OBSensorType | type | ) |
获取指定类型传感器 如果设备没有打开传感器,在SDK内部会自动打开设备并返回实例
void ob::Device::setIntProperty | ( | OBPropertyID | propertyId, |
int32_t | property | ||
) |
设置int类型的设备属性
propertyId | 属性id |
property | 要设置的属性 |
void ob::Device::setFloatProperty | ( | OBPropertyID | propertyId, |
float | property | ||
) |
设置float类型的设备属性
propertyId | 属性id |
property | 要设置的属性 |
void ob::Device::setBoolProperty | ( | OBPropertyID | propertyId, |
bool | property | ||
) |
设置bool类型的设备属性
propertyId | 属性id |
property | 要设置的属性 |
int32_t ob::Device::getIntProperty | ( | OBPropertyID | propertyId | ) |
获取int类型的设备属性
propertyId | 属性id |
float ob::Device::getFloatProperty | ( | OBPropertyID | propertyId | ) |
获取float类型的设备属性
propertyId | 属性id |
bool ob::Device::getBoolProperty | ( | OBPropertyID | propertyId | ) |
获取bool类型的设备属性
propertyId | 属性id |
OBIntPropertyRange ob::Device::getIntPropertyRange | ( | OBPropertyID | propertyId | ) |
OBFloatPropertyRange ob::Device::getFloatPropertyRange | ( | OBPropertyID | propertyId | ) |
OBBoolPropertyRange ob::Device::getBoolPropertyRange | ( | OBPropertyID | propertyId | ) |
void ob::Device::writeAHB | ( | uint32_t | reg, |
uint32_t | mask, | ||
uint32_t | value | ||
) |
AHB写寄存器
reg | 要写入的寄存器 |
mask | 要写入的掩码 |
value | 要写入的值 |
void ob::Device::readAHB | ( | uint32_t | reg, |
uint32_t | mask, | ||
uint32_t * | value | ||
) |
AHB读寄存器
reg | 要读取的寄存器 |
mask | 要读取的掩码 |
value | 读取的值返回 |
void ob::Device::writeI2C | ( | uint32_t | moduleId, |
uint32_t | reg, | ||
uint32_t | mask, | ||
uint32_t | value | ||
) |
I2C写寄存器
reg | 要写入的I2C模块ID |
reg | 要写入的寄存器 |
mask | 要写入的掩码 |
value | 要写入的值 |
void ob::Device::readI2C | ( | uint32_t | moduleId, |
uint32_t | reg, | ||
uint32_t | mask, | ||
uint32_t * | value | ||
) |
I2C读寄存器
reg | 要读取的I2C模块ID |
reg | 要读取的寄存器 |
mask | 要读取的掩码 |
value | 读取的值返回 |
void ob::Device::writeFlash | ( | uint32_t | offset, |
const void * | data, | ||
uint32_t | dataSize, | ||
SetDataCallback | callback, | ||
bool | async = false |
||
) |
设置写入Flash的属性
offset | flash 偏移地址 |
data | 要写入的属性数据 |
dataSize | 要写入的属性大小 |
callback | 写flash进度回调 |
async | 是否异步执行 |
void ob::Device::readFlash | ( | uint32_t | offset, |
uint32_t | dataSize, | ||
GetDataCallback | callback, | ||
bool | async = false |
||
) |
读取Flash的属性
offset | flash 偏移地址 |
data | 读取的属性数据 |
dataSize | 获取的属性大小 |
callback | 读flash返回的数据及进度回调 |
async | 是否异步执行 |
void ob::Device::setRawData | ( | OBPropertyID | propertyId, |
const void * | data, | ||
uint32_t | dataSize, | ||
SetDataCallback | callback, | ||
bool | async = false |
||
) |
设置raw data类型的设备属性数据[异步回调]
propertyId | 属性id |
data | 要设置的属性数据 |
dataSize | 要设置的属性数据大小 |
callback | rawdata设置进度回调 |
async | 是否异步执行 |
void ob::Device::getRawData | ( | OBPropertyID | propertyId, |
GetDataCallback | callback, | ||
bool | async = false |
||
) |
获取raw data类型的设备属性数据[异步回调]
propertyId | 属性id |
data | 获取的属性数据 |
dataSize | 获取的属性大小 |
callback | 获取返回的数据及进度回调 |
async | 是否异步执行 |
void ob::Device::setStructuredData | ( | OBPropertyID | propertyId, |
const void * | data, | ||
uint32_t | dataSize | ||
) |
设置structured data类型的设备属性
propertyId | 属性id |
data | 要设置的属性数据 |
dataSize | 要设置的属性大小 |
void ob::Device::getStructuredData | ( | OBPropertyID | propertyId, |
void * | data, | ||
uint32_t * | dataSize | ||
) |
获取structured data类型的设备属性
propertyId | 属性id |
data | 获取的属性数据 |
dataSize | 获取的属性大小 |
void ob::Device::setStructuredDataExt | ( | OBPropertyID | propertyId, |
std::shared_ptr< OBDataBundle > | dataBundle, | ||
SetDataCallback | callback | ||
) |
Set the Structured Data Ext object.
propertyId | 属性id |
dataBundle | 设置的目标数据 |
callback | 设置数据回调 |
std::shared_ptr<OBDataBundle> ob::Device::getStructuredDataExt | ( | OBPropertyID | propertyId | ) |
获取structured data类型的数据
propertyId | 属性id |
OBProtocolVersion ob::Device::getProtocolVersion | ( | ) |
获取设备的控制命令协议版本
OBCmdVersion ob::Device::getCmdVersion | ( | OBPropertyID | propertyId | ) |
获取控制命令的版本号
propertyId | 属性id |
uint32_t ob::Device::getSupportedPropertyCount | ( | ) |
获取设备支持的属性的数量
OBPropertyItem ob::Device::getSupportedProperty | ( | uint32_t | index | ) |
bool ob::Device::isPropertySupported | ( | OBPropertyID | propertyId, |
OBPermissionType | permission | ||
) |
判断属性权限支持情况
propertyId | 属性id |
permission | 需要判读的读写权限类型 |
uint64_t ob::Device::syncDeviceTime | ( | ) |
同步设备时间(向设备授时,同步本地系统时间到设备)
void ob::Device::deviceUpgrade | ( | const char * | filePath, |
DeviceUpgradeCallback | callback, | ||
bool | async = true |
||
) |
升级设备固件
filePath | 固件的路径 |
callback | 固件升级进度及状态回调 |
async | 是否异步执行 |
void ob::Device::sendFile | ( | const char * | filePath, |
const char * | dstPath, | ||
SendFileCallback | callback, | ||
bool | async = true |
||
) |
发送文件到设备端指定路径[异步回调]
filePath | 原文件路径 |
dstPath | 设备端接受保存路径 |
callback | 文件传输回调 |
async | 是否异步执行 |
OBDeviceState ob::Device::getDeviceState | ( | ) |
获取当前设备状态
void ob::Device::setDeviceStateChangedCallback | ( | DeviceStateChangedCallback | callback | ) |
设置设备状态改变回调函数
callback | 设备状态改变(如,由于温度过高自动降低帧率或关流等)时触发的回调函数 |
bool ob::Device::activateAuthorization | ( | const char * | authCode | ) |
验证设备授权码
authCode | 授权码 |
void ob::Device::writeAuthorizationCode | ( | const char * | authCodeStr | ) |
写入设备授权码
authCode | 授权码 |
std::shared_ptr<CameraParamList> ob::Device::getCalibrationCameraParamList | ( | ) |
获取设备内保存的相机标定的原始参数列表,列表内参数不与当前开流配置相对应, 需要自行根据实际情况选用参数并可能需要做缩放、镜像等处理。非专业用户建议使用Pipeline::getCameraParam()接口。
OBDepthWorkMode ob::Device::getCurrentDepthWorkMode | ( | ) |
查询当前的相机深度模式
OBStatus ob::Device::switchDepthWorkMode | ( | const OBDepthWorkMode & | workMode | ) |
切换相机深度模式(根据深度工作模式对象),如果知道设备支持的深度工作模式名称,那么推荐用switchDepthWorkMode(const char *modeName)
workMode | 要切换的相机深度模式 |
OBStatus ob::Device::switchDepthWorkMode | ( | const char * | modeName | ) |
切换相机深度模式(根据深度工作模式名称)
workMode |
std::shared_ptr<OBDepthWorkModeList> ob::Device::getDepthWorkModeList | ( | ) |
查询相机深度模式列表
void ob::Device::reboot | ( | ) |
设备重启
OBDeviceSyncConfig ob::Device::getSyncConfig | ( | ) |
void ob::Device::setSyncConfig | ( | const OBDeviceSyncConfig & | deviceSyncConfig | ) |
设置设备同步配置
用于配置 单机内的不同 Sensor 的曝光同步功能 和 多机同步功能
[out] | deviceSyncConfig | 设备同步配置 |
|
friend |
在文件 Device.hpp 第 714 行定义.
|
friend |
在文件 Device.hpp 第 715 行定义.