Пример

Этот модуль включает функции, управляющие экземпляром 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 .

Typedefs

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 .

Характеристики
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 сети потоков.

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 сети потоков изменен.

OT_CHANGED_THREAD_PARTITION_ID

ID раздела изменен.

OT_CHANGED_THREAD_RLOC_ADDED

Добавлен RLOC.

OT_CHANGED_THREAD_RLOC_REMOVED

RLOC был удален.

OT_CHANGED_THREAD_ROLE

Роль (отключена, отключена, дочерний элемент, маршрутизатор, лидер) изменена.

Typedefs

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 должна быть включена.

Строка соответствует формату " : : . "часы, минуты, секунды и миллисекунды (если время безотказной работы меньше одного дня) или"

d. : : . "(если больше суток).

Если полученная строка не помещается в aBuffer ( в пределах своей aSize символов), то строка будет усечена , но выводимая строка всегда оканчивается нуль.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[out] aBuffer
Указатель на массив символов для вывода строки.
[in] aSize
Размер aBuffer (в байтах). Рекомендуется использовать OT_UPTIME_STRING_SIZE .

otInstanceInit

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

Эта функция инициализирует библиотеку OpenThread.

Эта функция инициализирует OpenThread и подготавливает его для последующих вызовов API OpenThread. Эта функция должна вызываться перед любыми другими вызовами OpenThread.

Эта функция доступна и может использоваться, только если включена поддержка нескольких экземпляров OpenThread.

Подробности
Параметры
[in] aInstanceBuffer
Буфер, который OpenThread будет использовать для размещения структуры otInstance.
[in,out] aInstanceBufferSize
При вводе размер aInstanceBuffer. На выходе, если недостаточно места для otInstance, количество байтов, необходимых для otInstance.
Возврат
Указатель на новый экземпляр OpenThread.
Смотрите также:
otInstanceFinalize

otInstanceInitSingle

otInstance * otInstanceInitSingle(
  void
)

Эта функция инициализирует статический единственный экземпляр библиотеки OpenThread.

Эта функция инициализирует OpenThread и подготавливает его для последующих вызовов API OpenThread. Эта функция должна вызываться перед любыми другими вызовами OpenThread.

Эта функция доступна и может использоваться только при отключенной поддержке нескольких экземпляров OpenThread.

Подробности
Возврат
Указатель на единственный экземпляр OpenThread.

otInstanceIsInitialized

bool otInstanceIsInitialized(
  otInstance *aInstance
)

Эта функция указывает, является ли экземпляр действительным / инициализированным.

Экземпляр считается действительным , если он приобретается и инициализируется с использованием либо otInstanceInitSingle() (в один экземпляр дела) или otInstanceInit() (в многоканальном случае экземпляра). Последующее обращение к otInstanceFinalize() приводит к тому , экземпляр следует рассматривать как неинициализированным.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
Возврат
ИСТИНА, если данный экземпляр действителен / инициализирован, в противном случае - ЛОЖЬ.

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

Рекомендуемый размер для строкового представления времени безотказной работы.