Instancja
Ten moduł zawiera funkcje, które kontrolują instancję OpenThread.
Podsumowanie
Definicje typów |
|
---|---|
otChangedFlags
|
typedefuint32_t
Reprezentuje pole bitowe wskazujące określony stan lub konfigurację, która uległa zmianie. |
otInstance
|
typedefstruct otInstance
Reprezentuje strukturę instancji OpenThread. |
otStateChangedCallback)(otChangedFlags aFlags, void *aContext)
|
typedefvoid(*
Wskaźnik jest wywoływany w celu powiadomienia o określonych zmianach konfiguracji lub stanu w OpenThread. |
Funkcje |
|
---|---|
otGetRadioVersionString(otInstance *aInstance)
|
const char *
Pobiera ciąg znaków wersji radiowej OpenThread.
|
otGetVersionString(void)
|
const char *
Pobiera ciąg znaków wersji OpenThread.
|
otInstanceErasePersistentInfo(otInstance *aInstance)
|
Wymazuje wszystkie trwałe informacje OpenThread (ustawienia sieci) zapisane w pamięci nieulotnej.
|
otInstanceFactoryReset(otInstance *aInstance)
|
void
Usuwa wszystkie ustawienia zapisane w pamięci nieulotnej, a następnie aktywuje resetowanie platformy.
|
otInstanceFinalize(otInstance *aInstance)
|
void
Wyłącza bibliotekę OpenThread.
|
otInstanceGetId(otInstance *aInstance)
|
uint32_t
Pobiera identyfikator instancji.
|
otInstanceGetUptime(otInstance *aInstance)
|
uint64_t
Zwraca bieżącą dostępność instancji (w ms).
|
otInstanceGetUptimeAsString(otInstance *aInstance, char *aBuffer, uint16_t aSize)
|
void
Zwraca bieżącą dostępność instancji w postaci ciągu zrozumiałego dla człowieka.
|
otInstanceInit(void *aInstanceBuffer, size_t *aInstanceBufferSize)
|
Inicjuje bibliotekę OpenThread.
|
otInstanceInitMultiple(uint8_t aIdx)
|
Inicjuje instancję OpenThread.
|
otInstanceInitSingle(void)
|
Inicjuje statyczną pojedynczą instancję biblioteki OpenThread.
|
otInstanceIsInitialized(otInstance *aInstance)
|
bool
Wskazuje, czy instancja jest prawidłowa/zainicjowana.
|
otInstanceReset(otInstance *aInstance)
|
void
Wywołuje resetowanie platformy.
|
otInstanceResetRadioStack(otInstance *aInstance)
|
void
Resetuje wewnętrzne stany stosu radiowego OpenThread.
|
otInstanceResetToBootloader(otInstance *aInstance)
|
Wyzwala reset platformy do trybu programu rozruchowego (jeśli jest obsługiwany).
|
otRemoveStateChangeCallback(otInstance *aInstance, otStateChangedCallback aCallback, void *aContext)
|
void
Usuwa wywołanie zwrotne wskazujące, że w obrębie OpenThread zmieni się określona konfiguracja lub stan.
|
otSetStateChangedCallback(otInstance *aInstance, otStateChangedCallback aCallback, void *aContext)
|
Rejestruje wywołanie zwrotne wskazujące, że w obrębie OpenThread zmieni się określona konfiguracja lub stan.
|
Definicje typów
otChangedFlags
uint32_t otChangedFlags
Reprezentuje pole bitowe wskazujące określony stan lub konfigurację, która uległa zmianie.
Zobacz definicje (OT_CHANGED_*
).
otStateChangedCallback
void(* otStateChangedCallback)(otChangedFlags aFlags, void *aContext)
Wskaźnik jest wywoływany w celu powiadomienia o określonych zmianach konfiguracji lub stanu w OpenThread.
Szczegóły | |||||
---|---|---|---|---|---|
Parametry |
|
Funkcje
otGetRadioVersionString
const char * otGetRadioVersionString( otInstance *aInstance )
Pobiera ciąg znaków wersji radiowej OpenThread.
Szczegóły | |||
---|---|---|---|
Parametry |
|
||
Zwroty |
Wskaźnik wersji radiowej OpenThread.
|
otGetVersionString
const char * otGetVersionString( void )
Pobiera ciąg znaków wersji OpenThread.
Szczegóły | |
---|---|
Zwroty |
Wskaźnik wersji OpenThread.
|
otInstanceErasePersistentInfo
otError otInstanceErasePersistentInfo( otInstance *aInstance )
Wymazuje wszystkie trwałe informacje OpenThread (ustawienia sieci) zapisane w pamięci nieulotnej.
Wymazywanie jest udane tylko wtedy, gdy urządzenie ma przypisaną rolę lub stan disabled
.
Szczegóły | |||||
---|---|---|---|---|---|
Parametry |
|
||||
Zwracane wartości |
|
otInstanceFactoryReset
void otInstanceFactoryReset( otInstance *aInstance )
Usuwa wszystkie ustawienia zapisane w pamięci nieulotnej, a następnie aktywuje resetowanie platformy.
Szczegóły | |||
---|---|---|---|
Parametry |
|
otInstanceFinalize
void otInstanceFinalize( otInstance *aInstance )
Wyłącza bibliotekę OpenThread.
Wywołaj tę funkcję, gdy nie jest już używany OpenThread.
Szczegóły | |||
---|---|---|---|
Parametry |
|
otInstanceGetId
uint32_t otInstanceGetId( otInstance *aInstance )
Pobiera identyfikator instancji.
Podczas tworzenia instancji identyfikator instancji jest ustawiany na wartość losową, a jej wartość nie zmienia się po zainicjowaniu.
Szczegóły | |
---|---|
Zwroty |
Identyfikator instancji.
|
otInstanceGetUptime
uint64_t otInstanceGetUptime( otInstance *aInstance )
Zwraca bieżącą dostępność instancji (w ms).
Wymaga włączenia zasady OPENTHREAD_CONFIG_UPTIME_ENABLE
.
Czas działania jest określony jako liczba milisekund od zainicjowania instancji OpenThread.
Szczegóły | |||
---|---|---|---|
Parametry |
|
||
Zwroty |
Czas działania (liczba milisekund).
|
otInstanceGetUptimeAsString
void otInstanceGetUptimeAsString( otInstance *aInstance, char *aBuffer, uint16_t aSize )
Zwraca bieżącą dostępność instancji w postaci ciągu zrozumiałego dla człowieka.
Wymaga włączenia zasady OPENTHREAD_CONFIG_UPTIME_ENABLE
.
Ciąg ma format „
Jeśli powstały ciąg znaków nie mieści się w polu aBuffer
(łącznie ze znakami aSize
), zostanie on obcięty, ale wyjściowy ciąg będzie zawsze miał wartość null.
Szczegóły | |||||||
---|---|---|---|---|---|---|---|
Parametry |
|
otInstanceInit
otInstance * otInstanceInit( void *aInstanceBuffer, size_t *aInstanceBufferSize )
Inicjuje bibliotekę OpenThread.
Inicjuje OpenThread i przygotowuje ją do kolejnych wywołań interfejsu OpenThread API. Ta funkcja musi zostać wywołana przed innymi wywołaniami OpenThread.
Jest dostępna i można jej używać tylko wtedy, gdy włączona jest obsługa wielu instancji OpenThread.
Szczegóły | |||||
---|---|---|---|---|---|
Parametry |
|
||||
Zwroty |
Wskaźnik do nowej instancji OpenThread.
|
otInstanceFinalize
otInstanceInitMultiple
otInstance * otInstanceInitMultiple( uint8_t aIdx )
Inicjuje instancję OpenThread.
Ta funkcja inicjuje OpenThread i przygotowuje ją do kolejnych wywołań interfejsu API OpenThread. Ta funkcja musi zostać wywołana przed innymi wywołaniami OpenThread. Ta metoda inicjuje instancję OpenThread, korzystając z bufora statycznego.
Ta funkcja jest dostępna i można jej używać tylko wtedy, gdy włączona jest obsługa wielu instancji statycznych OpenThread (OPENTHREAD_CONFIG_MULTIPLE_STATIC_INSTANCE_ENABLE
)
Szczegóły | |||
---|---|---|---|
Parametry |
|
||
Zwroty |
Wskaźnik do nowej instancji OpenThread.
|
otInstanceInitSingle
otInstance * otInstanceInitSingle( void )
Inicjuje statyczną pojedynczą instancję biblioteki OpenThread.
Inicjuje OpenThread i przygotowuje ją do kolejnych wywołań interfejsu OpenThread API. Ta funkcja musi zostać wywołana przed innymi wywołaniami OpenThread.
Jest dostępna i można jej używać tylko wtedy, gdy obsługa wielu instancji OpenThread jest wyłączona.
Szczegóły | |
---|---|
Zwroty |
Wskaźnik do pojedynczej instancji OpenThread.
|
otInstanceIsInitialized
bool otInstanceIsInitialized( otInstance *aInstance )
Wskazuje, czy instancja jest prawidłowa/zainicjowana.
Instancja jest uznawana za prawidłową, jeśli została pozyskana i zainicjowana za pomocą polecenia otInstanceInitSingle()
(w pojedynczym przypadku) lub otInstanceInit()
(w przypadku wielu instancji). Kolejne wywołanie otInstanceFinalize()
powoduje, że instancja jest uznawana za niezainicjowaną.
Szczegóły | |||
---|---|---|---|
Parametry |
|
||
Zwroty |
Wartość TRUE, jeśli dana instancja jest prawidłowa/zainicjowana, lub wartość FALSE w przeciwnym razie.
|
otInstanceReset
void otInstanceReset( otInstance *aInstance )
Wywołuje resetowanie platformy.
Resetowanie powoduje wymazanie całego stanu/informacji OpenThread (przechowywanych w pamięci ulotnej). Pamiętaj, że otPlatformReset
nie usuwa żadnego trwałego stanu ani informacji zapisanych w pamięci nieulotnej.
Szczegóły | |||
---|---|---|---|
Parametry |
|
otInstanceResetRadioStack
void otInstanceResetRadioStack( otInstance *aInstance )
Resetuje wewnętrzne stany stosu radiowego OpenThread.
Wywołania zwrotne i konfiguracje są zachowywane.
Ten interfejs API jest dostępny tylko w kompilacjach radiowych (OPENTHREAD_RADIO = 1
).
Szczegóły | |||
---|---|---|---|
Parametry |
|
otInstanceResetToBootloader
otError otInstanceResetToBootloader( otInstance *aInstance )
Wyzwala reset platformy do trybu programu rozruchowego (jeśli jest obsługiwany).
Wymagana jest subskrypcja OPENTHREAD_CONFIG_PLATFORM_BOOTLOADER_MODE_ENABLE
.
Szczegóły | |||||||
---|---|---|---|---|---|---|---|
Parametry |
|
||||||
Zwracane wartości |
|
otRemoveStateChangeCallback
void otRemoveStateChangeCallback( otInstance *aInstance, otStateChangedCallback aCallback, void *aContext )
Usuwa wywołanie zwrotne wskazujące, że w obrębie OpenThread zmieni się określona konfiguracja lub stan.
Szczegóły | |||||||
---|---|---|---|---|---|---|---|
Parametry |
|
otSetStateChangedCallback
otError otSetStateChangedCallback( otInstance *aInstance, otStateChangedCallback aCallback, void *aContext )
Rejestruje wywołanie zwrotne wskazujące, że w obrębie OpenThread zmieni się określona konfiguracja lub stan.
Szczegóły | |||||||
---|---|---|---|---|---|---|---|
Parametry |
|
||||||
Zwracane wartości |
|
Makra
OT_CHANGED_ACTIVE_DATASET
OT_CHANGED_ACTIVE_DATASET (1U << 28)
Aktywny zbiór danych operacyjnych został zmieniony.
OT_CHANGED_CHANNEL_MANAGER_NEW_CHANNEL
OT_CHANGED_CHANNEL_MANAGER_NEW_CHANNEL (1U << 21)
Zmieniono oczekujący kanał w wątku menedżera kanału.
OT_CHANGED_COMMISSIONER_STATE
OT_CHANGED_COMMISSIONER_STATE (1U << 23)
Zmieniono stan komisarza.
OT_CHANGED_IP6_ADDRESS_ADDED
OT_CHANGED_IP6_ADDRESS_ADDED (1U << 0)
Adres IPv6 został dodany.
OT_CHANGED_IP6_ADDRESS_REMOVED
OT_CHANGED_IP6_ADDRESS_REMOVED (1U << 1)
Adres IPv6 został usunięty.
OT_CHANGED_IP6_MULTICAST_SUBSCRIBED
OT_CHANGED_IP6_MULTICAST_SUBSCRIBED (1U << 12)
Zasubskrybowano adres multiemisji IPv6.
OT_CHANGED_IP6_MULTICAST_UNSUBSCRIBED
OT_CHANGED_IP6_MULTICAST_UNSUBSCRIBED (1U << 13)
Anulowano subskrypcję adresu multiemisji IPv6.
OT_CHANGED_JOINER_STATE
OT_CHANGED_JOINER_STATE (1U << 27)
Zmieniono stan łączenia.
OT_CHANGED_NAT64_TRANSLATOR_STATE
OT_CHANGED_NAT64_TRANSLATOR_STATE (1U << 30)
Zmienił się stan tłumacza NAT64.
OT_CHANGED_NETWORK_KEY
OT_CHANGED_NETWORK_KEY (1U << 18)
Zmieniono klucz sieci.
OT_CHANGED_PARENT_LINK_QUALITY
OT_CHANGED_PARENT_LINK_QUALITY (1U << 31)
Jakość linku nadrzędnego została zmieniona.
OT_CHANGED_PENDING_DATASET
OT_CHANGED_PENDING_DATASET (1U << 29)
Zmieniono oczekujący zbiór danych operacyjnych.
OT_CHANGED_PSKC
OT_CHANGED_PSKC (1U << 19)
Klucz PSKc został zmieniony.
OT_CHANGED_SECURITY_POLICY
OT_CHANGED_SECURITY_POLICY (1U << 20)
Zasada zabezpieczeń została zmieniona.
OT_CHANGED_SUPPORTED_CHANNEL_MASK
OT_CHANGED_SUPPORTED_CHANNEL_MASK (1U << 22)
Zmieniono obsługiwaną maskę kanału.
OT_CHANGED_THREAD_BACKBONE_ROUTER_LOCAL
OT_CHANGED_THREAD_BACKBONE_ROUTER_LOCAL (1U << 26)
Zmieniono konfigurację lokalnego routera szkieletowego.
OT_CHANGED_THREAD_BACKBONE_ROUTER_STATE
OT_CHANGED_THREAD_BACKBONE_ROUTER_STATE (1U << 25)
Zmieniono stan routera szkieletowego.
OT_CHANGED_THREAD_CHANNEL
OT_CHANGED_THREAD_CHANNEL (1U << 14)
Kanał sieci w wątku został zmieniony.
OT_CHANGED_THREAD_CHILD_ADDED
OT_CHANGED_THREAD_CHILD_ADDED (1U << 10)
Dodano dziecko.
OT_CHANGED_THREAD_CHILD_REMOVED
OT_CHANGED_THREAD_CHILD_REMOVED (1U << 11)
Dziecko zostało usunięte.
OT_CHANGED_THREAD_EXT_PANID
OT_CHANGED_THREAD_EXT_PANID (1U << 17)
Identyfikator PAN rozszerzonej sieci typu Thread został zmieniony.
OT_CHANGED_THREAD_KEY_SEQUENCE_COUNTER
OT_CHANGED_THREAD_KEY_SEQUENCE_COUNTER (1U << 8)
Zmieniono sekwencję kluczy wątku.
OT_CHANGED_THREAD_LL_ADDR
OT_CHANGED_THREAD_LL_ADDR (1U << 3)
Zmieniono adres link-local.
OT_CHANGED_THREAD_ML_ADDR
OT_CHANGED_THREAD_ML_ADDR (1U << 4)
Zmienił się lokalny adres sieci typu mesh.
OT_CHANGED_THREAD_NETDATA
OT_CHANGED_THREAD_NETDATA (1U << 9)
Dane sieci typu Thread zostały zmienione.
OT_CHANGED_THREAD_NETIF_STATE
OT_CHANGED_THREAD_NETIF_STATE (1U << 24)
Zmieniono stan interfejsu sieci typu Thread.
OT_CHANGED_THREAD_NETWORK_NAME
OT_CHANGED_THREAD_NETWORK_NAME (1U << 16)
Nazwa sieci w wątku została zmieniona.
OT_CHANGED_THREAD_PANID
OT_CHANGED_THREAD_PANID (1U << 15)
Identyfikator PAN sieci typu Thread został zmieniony.
OT_CHANGED_THREAD_PARTITION_ID
OT_CHANGED_THREAD_PARTITION_ID (1U << 7)
Identyfikator partycji został zmieniony.
OT_CHANGED_THREAD_RLOC_ADDED
OT_CHANGED_THREAD_RLOC_ADDED (1U << 5)
Dodano RLOC.
OT_CHANGED_THREAD_RLOC_REMOVED
OT_CHANGED_THREAD_RLOC_REMOVED (1U << 6)
Usunięto RLOC.
OT_CHANGED_THREAD_ROLE
OT_CHANGED_THREAD_ROLE (1U << 2)
Zmieniono rolę (wyłączona, odłączona, podrzędna, router, replika wiodąca).
OT_UPTIME_STRING_SIZE
OT_UPTIME_STRING_SIZE 24
Zalecany rozmiar dostępności na potrzeby reprezentacji czasu działania w ciągu znaków.
Zasoby
Tematy referencyjne interfejsu OpenThread API pochodzą z kodu źródłowego dostępnego w GitHub. Aby dowiedzieć się więcej lub dołączyć do naszej dokumentacji, skorzystaj z sekcji Zasoby.