Google は、黒人コミュニティのための人種的公平の促進に取り組んでいます。詳細をご覧ください。

インスタンス

このモジュールには、OpenThread インスタンスを制御する関数が含まれています。

概要

列挙型

anonymous enum{
  OT_CHANGED_IP6_ADDRESS_ADDED = 1 << 0,
  OT_CHANGED_IP6_ADDRESS_REMOVED = 1 << 1,
  OT_CHANGED_THREAD_ROLE = 1 << 2,
  OT_CHANGED_THREAD_LL_ADDR = 1 << 3,
  OT_CHANGED_THREAD_ML_ADDR = 1 << 4,
  OT_CHANGED_THREAD_RLOC_ADDED = 1 << 5,
  OT_CHANGED_THREAD_RLOC_REMOVED = 1 << 6,
  OT_CHANGED_THREAD_PARTITION_ID = 1 << 7,
  OT_CHANGED_THREAD_KEY_SEQUENCE_COUNTER = 1 << 8,
  OT_CHANGED_THREAD_NETDATA = 1 << 9,
  OT_CHANGED_THREAD_CHILD_ADDED = 1 << 10,
  OT_CHANGED_THREAD_CHILD_REMOVED = 1 << 11,
  OT_CHANGED_IP6_MULTICAST_SUBSCRIBED = 1 << 12,
  OT_CHANGED_IP6_MULTICAST_UNSUBSCRIBED = 1 << 13,
  OT_CHANGED_THREAD_CHANNEL = 1 << 14,
  OT_CHANGED_THREAD_PANID = 1 << 15,
  OT_CHANGED_THREAD_NETWORK_NAME = 1 << 16,
  OT_CHANGED_THREAD_EXT_PANID = 1 << 17,
  OT_CHANGED_NETWORK_KEY = 1 << 18,
  OT_CHANGED_PSKC = 1 << 19,
  OT_CHANGED_SECURITY_POLICY = 1 << 20,
  OT_CHANGED_CHANNEL_MANAGER_NEW_CHANNEL = 1 << 21,
  OT_CHANGED_SUPPORTED_CHANNEL_MASK = 1 << 22,
  OT_CHANGED_COMMISSIONER_STATE = 1 << 23,
  OT_CHANGED_THREAD_NETIF_STATE = 1 << 24,
  OT_CHANGED_THREAD_BACKBONE_ROUTER_STATE = 1 << 25,
  OT_CHANGED_THREAD_BACKBONE_ROUTER_LOCAL = 1 << 26,
  OT_CHANGED_JOINER_STATE = 1 << 27,
  OT_CHANGED_ACTIVE_DATASET = 1 << 28,
  OT_CHANGED_PENDING_DATASET = 1 << 29
}
列挙型
この列挙型は、otStateChangedCallback の一部として渡されるフラグを定義します。

Typedef

otChangedFlags typedef
uint32_t
この型は、変更された特定の状態や設定を示すビット フィールドを表します。
otInstance typedef
struct otInstance
この構造は、OpenThread インスタンス構造を表します。
otStateChangedCallback)(otChangedFlags aFlags, void *aContext) typedef
void(*
この関数ポインタは、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 ライブラリを無効にします。
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 の一部として渡されるフラグを定義します。

Properties
OT_CHANGED_ACTIVE_DATASET

アクティブ オペレーション データセットが変更されました。

OT_CHANGED_CHANNEL_MANAGER_NEW_CHANNEL

保留中の新しいスレッド チャンネルを変更しました。

OT_CHANGED_COMMISSIONER_STATE

コミッショナーの状態が変更されました。

OT_CHANGED_IP6_ADDRESS_ADDED

IPv6 アドレスが追加されました。

OT_CHANGED_IP6_ADDRESS_REMOVED

IPv6 アドレスが削除されました。

OT_CHANGED_IP6_MULTICAST_SUBSCRIBED

IPv6 マルチキャスト アドレスに登録されます。

OT_CHANGED_IP6_MULTICAST_UNSUBSCRIBED

IPv6 マルチキャスト アドレスへの登録を解除しました。

OT_CHANGED_JOINER_STATE

参加ユーザーのステータスが変更されました。

OT_CHANGED_NETWORK_KEY

ネットワーク キーが変更されました。

OT_CHANGED_PENDING_DATASET

保留中のオペレーション データセットが変更されました。

OT_CHANGED_PSKC

PSKc が変更されました。

OT_CHANGED_SECURITY_POLICY

セキュリティ ポリシーが変更されました。

OT_CHANGED_SUPPORTED_CHANNEL_MASK

サポートされているチャンネル マスクが変更されました。

OT_CHANGED_THREAD_BACKBONE_ROUTER_LOCAL

ローカル バックボーン ルーターの構成を変更しました。

OT_CHANGED_THREAD_BACKBONE_ROUTER_STATE

バックボーン ルーターの状態を変更しました。

OT_CHANGED_THREAD_CHANNEL

スレッド ネットワーク チャネルが変更されました。

OT_CHANGED_THREAD_CHILD_ADDED

子を追加しました。

OT_CHANGED_THREAD_CHILD_REMOVED

子どもを削除しました。

OT_CHANGED_THREAD_EXT_PANID

スレッド ネットワークの拡張 PAN ID が変更されました。

OT_CHANGED_THREAD_KEY_SEQUENCE_COUNTER

スレッドキーのシーケンスが変更されました。

OT_CHANGED_THREAD_LL_ADDR

リンクローカル アドレスが変更されました。

OT_CHANGED_THREAD_ML_ADDR

メッシュローカル アドレスを変更しました。

OT_CHANGED_THREAD_NETDATA

スレッド ネットワーク データが変更されました。

OT_CHANGED_THREAD_NETIF_STATE

スレッド ネットワーク インターフェースの状態が変更されました。

OT_CHANGED_THREAD_NETWORK_NAME

スレッド ネットワークの名前が変更されました。

OT_CHANGED_THREAD_PANID

スレッド ネットワークの PAN ID が変更されました。

OT_CHANGED_THREAD_PARTITION_ID

パーティション ID が変更されました。

OT_CHANGED_THREAD_RLOC_ADDED

RLOC が追加されました。

OT_CHANGED_THREAD_RLOC_REMOVED

RLOC を削除しました。

OT_CHANGED_THREAD_ROLE

ロール(無効、接続解除、子、ルーター、リーダー)が変更されました。

Typedef

otChangedFlags

uint32_t otChangedFlags

この型は、変更された特定の状態や設定を示すビット フィールドを表します。

OT_CHANGED_* の定義をご覧ください。

otInstance

struct otInstance otInstance

この構造は、OpenThread インスタンス構造を表します。

otStateChangedCallback

void(* otStateChangedCallback)(otChangedFlags aFlags, void *aContext)

この関数ポインタは、OpenThread 内の特定の構成または状態の変化を通知するために呼び出されます。

詳細
パラメータ
[in] aFlags
変更された特定の状態を示すビットフィールド。OT_CHANGED_* の定義をご覧ください。
[in] aContext
アプリケーション固有のコンテキストへのポインタ。

関数

otGetRadioVersionString

const char * otGetRadioVersionString(
  otInstance *aInstance
)

この関数は、OpenThread 無線バージョンの文字列を取得します。

詳細
パラメータ
[in] aInstance
OpenThread インスタンスへのポインタ。
戻り値
OpenThread ラジオ バージョンへのポインタ。

otGetVersionString

const char * otGetVersionString(
  void
)

この関数は、OpenThread バージョン文字列を取得します。

詳細
戻り値
OpenThread バージョンへのポインタ。

otInstanceErasePersistentInfo

otError otInstanceErasePersistentInfo(
  otInstance *aInstance
)

この関数は、非揮発性メモリに保存されている OpenThread 永続情報(ネットワーク設定)をすべて消去します。

消去が成功するのは、デバイスが disabled 状態/ロールにある場合のみです。

詳細
パラメータ
[in] aInstance
OpenThread インスタンスへのポインタ。
戻り値
OT_ERROR_NONE
永続的な情報や状態をすべて消去しました。
OT_ERROR_INVALID_STATE
デバイスが disabled ステータス/ロールではありません。

otInstanceFactoryReset

void otInstanceFactoryReset(
  otInstance *aInstance
)

このメソッドは、不揮発性メモリに保存されているすべての設定を削除してから、プラットフォームのリセットをトリガーします。

詳細
パラメータ
[in] aInstance
OpenThread インスタンスへのポインタ。

otInstanceFinalize

void otInstanceFinalize(
  otInstance *aInstance
)

この関数は、OpenThread ライブラリを無効にします。

OpenThread が使用されなくなったときに、この関数を呼び出します。

詳細
パラメータ
[in] aInstance
OpenThread インスタンスへのポインタ。

otInstanceGetUptime

uint64_t otInstanceGetUptime(
  otInstance *aInstance
)

この関数は、現在のインスタンスの稼働時間をミリ秒で返します。

この関数で OPENTHREAD_CONFIG_UPTIME_ENABLE を有効にする必要があります。

稼働時間は、OpenThread インスタンスが初期化されてからのミリ秒数で指定されます。

詳細
パラメータ
[in] aInstance
OpenThread インスタンスへのポインタ。
戻り値
稼働時間(ミリ秒)。

otInstanceGetUptimeAsString

void otInstanceGetUptimeAsString(
  otInstance *aInstance,
  char *aBuffer,
  uint16_t aSize
)

この関数は、現在のインスタンスの稼働時間を人が読める文字列として返します。

この関数で OPENTHREAD_CONFIG_UPTIME_ENABLE を有効にする必要があります。

この文字列は::の各行を理解してください。時間、分、秒、ミリ秒(稼働時間が 1 日未満の場合)または

d.::(1 日を超える場合)。

生成された文字列が aBufferaSize 文字)内に収まらない場合、文字列は切り捨てられますが、出力される文字列は常に null で終了します。

詳細
パラメータ
[in] aInstance
OpenThread インスタンスへのポインタ。
[out] aBuffer
文字列を出力する char 配列へのポインタ。
[in] aSize
aBuffer のサイズ(バイト単位)。OT_UPTIME_STRING_SIZE の使用をおすすめします。

otInstanceInit

otInstance * otInstanceInit(
  void *aInstanceBuffer,
  size_t *aInstanceBufferSize
)

この関数は、OpenThread ライブラリを初期化します。

この関数は、OpenThread を初期化し、後続の OpenThread API 呼び出しに備えています。この関数は、OpenThread の他の呼び出しの前に呼び出す必要があります。

この関数は、複数の OpenThread インスタンスのサポートが有効になっている場合にのみ使用できます。

詳細
パラメータ
[in] aInstanceBuffer
OTInstance 構造の割り当てに使用する OpenThread のバッファ。
[in,out] aInstanceBufferSize
入力時の aInstanceBuffer のサイズ。出力時に、otInstance に十分なスペースがない場合、otInstance に必要なバイト数。
戻り値
新しい OpenThread インスタンスへのポインタ。
関連項目:
otInstanceFinalize

otInstanceInitSingle

otInstance * otInstanceInitSingle(
  void
)

この関数は、OpenThread ライブラリの静的単一インスタンスを初期化します。

この関数は、OpenThread を初期化し、後続の OpenThread API 呼び出しに備えています。この関数は、OpenThread の他の呼び出しの前に呼び出す必要があります。

この関数は、複数の OpenThread インスタンスのサポートが無効になっている場合にのみ使用できます。

詳細
戻り値
単一の OpenThread インスタンスへのポインタ。

otInstanceIsInitialized

bool otInstanceIsInitialized(
  otInstance *aInstance
)

この関数は、インスタンスが有効か初期化されているかどうかを示します。

otInstanceInitSingle()(単一インスタンスの場合)または otInstanceInit()(複数インスタンスの場合)のいずれかを使用して取得と初期化が行われた場合、インスタンスは有効とみなされます。その後 otInstanceFinalize() を呼び出すと、インスタンスは初期化されていないと見なされます。

詳細
パラメータ
[in] aInstance
OpenThread インスタンスへのポインタ。
戻り値
指定されたインスタンスが有効/初期化されている場合は TRUE、それ以外の場合は FALSE。

otInstanceReset

void otInstanceReset(
  otInstance *aInstance
)

このメソッドにより、プラットフォームのリセットがトリガーされます。

リセット プロセスにより、(揮発性メモリに保存されている)OpenThread の状態/情報がすべて消去されます。otPlatformReset は、不揮発性メモリに保存されている永続状態/情報を消去しません。

詳細
パラメータ
[in] aInstance
OpenThread インスタンスへのポインタ。

otInstanceResetRadioStack

void otInstanceResetRadioStack(
  otInstance *aInstance
)

このメソッドは、OpenThread 無線スタックの内部状態をリセットします。

コールバックと構成は保持されます。

この API は、無線ビルド(OPENTHREAD_RADIO = 1)でのみ使用できます。

詳細
パラメータ
[in] aInstance
OpenThread インスタンスへのポインタ。

otRemoveStateChangeCallback

void otRemoveStateChangeCallback(
  otInstance *aInstance,
  otStateChangedCallback aCallback,
  void *aContext
)

この関数は、OpenThread 内の特定の構成または状態が変化したことを示すコールバックを削除します。

詳細
パラメータ
[in] aInstance
OpenThread インスタンスへのポインタ。
[in] aCallback
特定の構成または状態の変更に対して呼び出される関数へのポインタ。
[in] aContext
アプリケーション固有のコンテキストへのポインタ。

otSetStateChangedCallback

otError otSetStateChangedCallback(
  otInstance *aInstance,
  otStateChangedCallback aCallback,
  void *aContext
)

この関数は、OpenThread 内の特定の構成または状態が変化したことを示すコールバックを登録します。

詳細
パラメータ
[in] aInstance
OpenThread インスタンスへのポインタ。
[in] aCallback
特定の構成または状態の変更に対して呼び出される関数へのポインタ。
[in] aContext
アプリケーション固有のコンテキストへのポインタ。
戻り値
OT_ERROR_NONE
コールバックのリストにコールバックを追加しました。
OT_ERROR_ALREADY
このコールバックはすでに登録されています。
OT_ERROR_NO_BUFS
リソースの制約により、コールバックを追加できませんでした。

マクロ

OT_UPTIME_STRING_SIZE

 OT_UPTIME_STRING_SIZE 24

稼働時間の文字列表現に推奨されるサイズ。

リソース

OpenThread API リファレンスのトピックは、GitHub で入手できるソースコードに基づいています。 詳細については、ドキュメントをご覧ください。