实例
此模块包含控制 OpenThread 实例的函数。
总结
类型定义符 |
|
---|---|
otChangedFlags
|
typedefuint32_t
表示位字段,指示已更改的特定状态/配置。 |
otInstance
|
typedefstruct otInstance
表示 OpenThread 实例结构。 |
otStateChangedCallback)(otChangedFlags aFlags, void *aContext)
|
typedefvoid(*
系统会调用指针来通知 OpenThread 中的某些配置或状态变化。 |
函数 |
|
---|---|
otGetRadioVersionString(otInstance *aInstance)
|
const char *
获取 OpenThread 无线装置版本字符串。
|
otGetVersionString(void)
|
const char *
获取 OpenThread 版本字符串。
|
otInstanceErasePersistentInfo(otInstance *aInstance)
|
清空存储在非易失性内存中的所有 OpenThread 永久性信息(网络设置)。
|
otInstanceFactoryReset(otInstance *aInstance)
|
void
删除存储在非易失性内存中的所有设置,然后触发平台重置。
|
otInstanceFinalize(otInstance *aInstance)
|
void
停用 OpenThread 库。
|
otInstanceGetId(otInstance *aInstance)
|
uint32_t
获取实例标识符。
|
otInstanceGetUptime(otInstance *aInstance)
|
uint64_t
返回当前实例正常运行时间(以毫秒为单位)。
|
otInstanceGetUptimeAsString(otInstance *aInstance, char *aBuffer, uint16_t aSize)
|
void
以直观易懂的字符串形式返回当前实例正常运行时间。
|
otInstanceInit(void *aInstanceBuffer, size_t *aInstanceBufferSize)
|
初始化 OpenThread 库。
|
otInstanceInitSingle(void)
|
初始化 OpenThread 库的静态单个实例。
|
otInstanceIsInitialized(otInstance *aInstance)
|
bool
指示实例是否有效/初始化。
|
otInstanceReset(otInstance *aInstance)
|
void
触发平台重置。
|
otInstanceResetRadioStack(otInstance *aInstance)
|
void
重置 OpenThread 无线装置堆栈的内部状态。
|
otRemoveStateChangeCallback(otInstance *aInstance, otStateChangedCallback aCallback, void *aContext)
|
void
移除回调,以指示 OpenThread 中的特定配置或状态何时发生变化。
|
otSetStateChangedCallback(otInstance *aInstance, otStateChangedCallback aCallback, void *aContext)
|
注册一个回调,以指示 OpenThread 中的某些配置或状态何时发生变化。
|
枚举
匿名枚举
anonymous enum
定义作为 otStateChangedCallback
的一部分传递的标志。
类型定义符
otChangedFlags
uint32_t otChangedFlags
表示位字段,指示已更改的特定状态/配置。
查看 OT_CHANGED_*
定义。
otStateChangedCallback
void(* otStateChangedCallback)(otChangedFlags aFlags, void *aContext)
系统会调用指针来通知 OpenThread 中的某些配置或状态变化。
详情 | |||||
---|---|---|---|---|---|
参数 |
|
函数
otGetRadioVersionString
const char * otGetRadioVersionString( otInstance *aInstance )
获取 OpenThread 无线装置版本字符串。
详情 | |||
---|---|---|---|
参数 |
|
||
返回 |
指向 OpenThread 无线装置版本的指针。
|
otGetVersionString
const char * otGetVersionString( void )
获取 OpenThread 版本字符串。
详情 | |
---|---|
返回 |
指向 OpenThread 版本的指针。
|
otInstanceErasePersistentInfo
otError otInstanceErasePersistentInfo( otInstance *aInstance )
清空存储在非易失性内存中的所有 OpenThread 永久性信息(网络设置)。
仅当设备处于 disabled
状态/角色时,才能成功清空设备。
详情 | |||||
---|---|---|---|---|---|
参数 |
|
||||
返回值 |
|
otInstanceFactoryReset
void otInstanceFactoryReset( otInstance *aInstance )
删除存储在非易失性内存中的所有设置,然后触发平台重置。
详情 | |||
---|---|---|---|
参数 |
|
otInstanceFinalize 测试
void otInstanceFinalize( otInstance *aInstance )
停用 OpenThread 库。
当 OpenThread 不再使用时,调用此函数。
详情 | |||
---|---|---|---|
参数 |
|
otInstanceGetId
uint32_t otInstanceGetId( otInstance *aInstance )
获取实例标识符。
在构建实例时,实例标识符会设置为随机值,并且其值在初始化后不会改变。
详情 | |
---|---|
返回 |
实例标识符。
|
otInstanceGetUptime
uint64_t otInstanceGetUptime( otInstance *aInstance )
返回当前实例正常运行时间(以毫秒为单位)。
需要启用 OPENTHREAD_CONFIG_UPTIME_ENABLE
。
正常运行时间数据指定为自 OpenThread 实例初始化后的毫秒数。
详情 | |||
---|---|---|---|
参数 |
|
||
返回 |
正常运行时间(毫秒)。
|
otInstanceGetUptimeAsString
void otInstanceGetUptimeAsString( otInstance *aInstance, char *aBuffer, uint16_t aSize )
以直观易懂的字符串形式返回当前实例正常运行时间。
需要启用 OPENTHREAD_CONFIG_UPTIME_ENABLE
。
该字符串使用“
如果生成的字符串不适合 aBuffer
(在其 aSize
字符内),则字符串会被截断,但输出的字符串始终以 null 终止。
详情 | |||||||
---|---|---|---|---|---|---|---|
参数 |
|
otInstanceInit
otInstance * otInstanceInit( void *aInstanceBuffer, size_t *aInstanceBufferSize )
初始化 OpenThread 库。
初始化 OpenThread,并使其为后续 OpenThread API 调用做好准备。必须先调用此函数,然后再调用 OpenThread。
可用,只有在支持多个 OpenThread 实例时才能使用。
详情 | |||||
---|---|---|---|---|---|
参数 |
|
||||
返回 |
指向新的 OpenThread 实例的指针。
|
otInstanceFinalize
otInstanceInitSingle
otInstance * otInstanceInitSingle( void )
初始化 OpenThread 库的静态单个实例。
初始化 OpenThread,并使其为后续 OpenThread API 调用做好准备。必须先调用此函数,然后再调用 OpenThread。
可用,只有在支持多个 OpenThread 实例时才能使用。
详情 | |
---|---|
返回 |
指向单个 OpenThread 实例的指针。
|
otInstanceIsInitialized
bool otInstanceIsInitialized( otInstance *aInstance )
指示实例是否有效/初始化。
如果该实例通过 otInstanceInitSingle()
(如果是单个实例的情况)或 otInstanceInit()
(如果是多个实例的情况)来获取和初始化,则会被视为有效。对 otInstanceFinalize()
的后续调用会导致实例被视为未初始化。
详情 | |||
---|---|---|---|
参数 |
|
||
返回 |
如果指定实例有效/初始化,则为 TRUE,否则为 FALSE。
|
otInstanceReset
void otInstanceReset( otInstance *aInstance )
触发平台重置。
重置过程可确保所有 OpenThread 状态/信息(存储在易变内存中)都被清空。请注意,otPlatformReset
不会清除保存在非易失性内存中的任何持久状态/信息。
详情 | |||
---|---|---|---|
参数 |
|
otInstanceResetRadioStack
void otInstanceResetRadioStack( otInstance *aInstance )
重置 OpenThread 无线装置堆栈的内部状态。
回调和配置会保留。
此 API 只能在电台 build (OPENTHREAD_RADIO = 1
) 中使用。
详情 | |||
---|---|---|---|
参数 |
|
otRemoveStateChangeCallback
void otRemoveStateChangeCallback( otInstance *aInstance, otStateChangedCallback aCallback, void *aContext )
移除回调,以指示 OpenThread 中的特定配置或状态何时发生变化。
详情 | |||||||
---|---|---|---|---|---|---|---|
参数 |
|
otSetStateChangedCallback
otError otSetStateChangedCallback( otInstance *aInstance, otStateChangedCallback aCallback, void *aContext )
注册一个回调,以指示 OpenThread 中的某些配置或状态何时发生变化。
详情 | |||||||
---|---|---|---|---|---|---|---|
参数 |
|
||||||
返回值 |
|
宏
OT_UPTIME_STRING_SIZE
OT_UPTIME_STRING_SIZE 24
建议采用正常运行时间表示字符串大小。
资源
OpenThread API 参考主题源自源代码,可在 GitHub 上获取。 如需了解详情或为我们的文档贡献内容,请参阅资源。