nl::Weave::Warm

Ta przestrzeń nazw zawiera interfejsy Weave Address (Adres) i Routing Module (przenośny moduł do konfigurowania adresów IP i tras Weave).

Podsumowanie

Wyliczenia

ActionType{
  kActionTypeWiFiHostAddress = (1 << 0),
  kActionTypeThreadHostAddress = (1 << 1),
  kActionTypeThreadThreadAddress = (1 << 2),
  kActionTypeLegacy6LoWPANHostAddress = (1 << 3),
  kActionTypeLegacy6LoWPANThreadAddress = (1 << 4),
  kActionTypeHostRouteThread = (1 << 5),
  kActionTypeThreadAdvertisement = (1 << 6),
  kActionTypeThreadRoute = (1 << 7),
  kActionTypeTunnelHostAddress = (1 << 8),
  kActionTypeTunnelHostRoute = (1 << 9),
  kActionTypeThreadRoutePriority = (1 << 10),
  kActionTypeTunnelServiceRoute = (1 << 11),
  kActionTypeMax = (1 << 16)
}
enum | typ wyliczeniowy
InitState{
  kInitStateNotInitialized = 0
}
enum | typ wyliczeniowy
InterfaceState enum | typ wyliczeniowy
Wyliczenie możliwych wartości stanu interfejsu.
InterfaceType{
  kInterfaceTypeLegacy6LoWPAN = 0,
  kInterfaceTypeThread,
  kInterfaceTypeWiFi,
  kInterfaceTypeTunnel,
  kInterfaceTypeCellular
}
enum | typ wyliczeniowy
Wyliczenie możliwych typów interfejsów.
PlatformActionExecution{
  kPlatformActionExecutionContinue = false,
  kPlatformActionExecutionSuspendForAsynchOpCompletion = true
}
enum | typ wyliczeniowy
PlatformResult{
  kPlatformResultSuccess = 0,
  kPlatformResultFailure,
  kPlatformResultInProgress
}
enum | typ wyliczeniowy
Enum możliwych wartości zwracanych przez interfejs API platformy.
RoutePriority enum | typ wyliczeniowy
Enum możliwych priorytetów tras, dzięki którym jedna trasa może otrzymać priorytet nad inną.
SystemFeatureType{
  kSystemFeatureTypeIsFabricMember = (1 << 0),
  kSystemFeatureTypeWiFiConnected = (1 << 1),
  kSystemFeatureTypeThreadConnected = (1 << 2),
  kSystemFeatureTypeThreadRoutingEnabled = (1 << 3),
  kSystemFeatureTypeBorderRoutingEnabled = (1 << 4),
  kSystemFeatureTypeTunnelInterfaceEnabled = (1 << 5),
  kSystemFeatureTypeTunnelState = (1 << 6),
  kSystemFeatureTypeCellularConnected = (1 << 7),
  kSystemFeatureTypeMax = (1 << 16)
}
enum | typ wyliczeniowy

Definiuje typ

ActionFunction)(ActionType inAction, bool inActivate, const uint64_t &inGlobalId, const uint64_t &inInterfaceId) typedef
FlagsType typedef
uint16_t

Zmienne

kGlobalULAPrefixLength = 48
const uint8_t
kLegacy6LoWPANULAAddressPrefixLength = 64
const uint8_t
kThreadULAAddressPrefixLength = 64
const uint8_t
kTunnelAddressPrefixLength = 128
const uint8_t
kWiFiULAAddressPrefixLength = 64
const uint8_t
sFabricStateDelegate
sState

Funkcje

BorderRouterStateChange(InterfaceState inState)
void
Wywołano interfejs WARM API w celu ogłoszenia zmiany stanu funkcji routera granicznego.
CellularInterfaceStateChange(InterfaceState inState)
void
Wywołano interfejs WARM API w celu ogłoszenia zmiany stanu interfejsu sieci komórkowej.
FabricStateChange(InterfaceState inState)
void
Funkcja wywoływana w celu ogłoszenia zmiany stanu funkcji Weave Fabric.
GetCurrentActionState(ActionType inAction)
bool
Funkcja statyczna, która zwraca bieżący stan określonego działania.
GetFabricState(const WeaveFabricState *& outFabricState)
Interfejs WARM API do pozyskania obiektu FabricState przekazany do Warm podczas inicjowania.
GetSystemFeatureState(SystemFeatureType inSystemFeature)
bool
Funkcja statyczna, która pobiera bieżący stan funkcji systemu.
GetULA(InterfaceType inInterfaceType, Inet::IPAddress & outAddress)
Interfejs WARM API do pobierania ULA dla określonego typu interfejsu.
Init(WeaveFabricState & inFabricState)
Interfejs WARM API do jednorazowego inicjowania modułu.
InvokeActions(void)
void
Interfejs WARM API wywoływany przez specjalne zadanie do wykonywania różnych działań interfejsu API platformy.
LegacyHostAddressAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
Jedna z metod działań.
LegacyThreadAddressAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
Jedna z metod działań.
MakePrefix(const uint64_t & inGlobalID, const uint16_t subnetId, const uint8_t inPrefixLen, Inet::IPPrefix & outPrefix)
void
Narzędzie do tworzenia 48-bitowego prefiksu na podstawie identyfikatora globalnego.
MapAvailabilityToPriority(Profiles::WeaveTunnel::Platform::TunnelAvailabilityMode inAvailability)
Funkcja statyczna, która zwraca mapowanie z TunnelAvailability na RoutePriority.
RecordPlatformResult(PlatformResult inResult, ActionType inAction, bool inActionState)
Funkcja statyczna, która rejestruje wynik wywołania działania interfejsu API platformy.
ReportActionComplete(PlatformResult inResult)
void
Wywołano interfejs WARM API z informacją o zakończeniu poprzedniego wywołania interfejsu API platformy asynchronicznej.
SetCurrentActionState(ActionType inAction, bool inValue)
void
Funkcja statyczna, która ustawia bieżący stan określonego działania.
SetSystemFeatureState(SystemFeatureType inSystemFeature, bool inValue)
bool
Funkcja statyczna, która ustawia bieżący stan funkcji systemowej.
ShouldPerformAction(ActionType inAction, FlagsType inNecessarySystemFeatureState, bool & outActivate)
bool
Funkcja statyczna, która określa, czy należy wykonać określone działanie.
SystemFeatureStateChangeHandler(SystemFeatureType inSystemFeatureType, bool inState)
void
Funkcja statyczna, która ustawia stan funkcji systemowej i powiadamia platformę o zmianie stanu zdarzenia.
TakeActions(void)
void
Funkcja statyczna, która testuje stan każdego działania i w razie potrzeby wywołuje wywołanie interfejsu API platformy, aby zmienić stan działania.
ThreadAdvertisementAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
Jedna z metod działań.
ThreadHostAddressAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
Jedna z metod działań.
ThreadHostRouteAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
Jedna z metod działań.
ThreadInterfaceStateChange(InterfaceState inState)
void
Wywołano interfejs WARM API w celu ogłoszenia zmiany stanu interfejsu Thread.
ThreadRoutePriorityAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
Jedna z metod działań.
ThreadRoutingStateChange(InterfaceState inState)
void
Wywołano interfejs WARM API z informacją o zmianie stanu funkcji Thread Routing.
ThreadThreadAddressAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
Jedna z metod działań.
ThreadThreadRouteAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
Jedna z metod działań.
TunnelHostAddressAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
Jedna z metod działań.
TunnelHostRouteAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
Jedna z metod działań.
TunnelInterfaceStateChange(InterfaceState inState)
void
Wywołano interfejs WARM API w celu ogłoszenia zmiany stanu interfejsu Weave Tunnel.
TunnelPriorityStateChange(nl::Weave::Profiles::WeaveTunnel::Platform::TunnelAvailabilityMode inAvailability)
void
Wywołano interfejs WARM API w celu aktualizacji priorytetu usługi tunelu.
TunnelServiceStateChange(InterfaceState inState, nl::Weave::Profiles::WeaveTunnel::Platform::TunnelAvailabilityMode inAvailability)
void
Wywołano interfejs WARM API w celu ogłoszenia zmiany stanu interfejsu Weave Tunnel.
WiFiHostAddressAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
Jedna z metod działań.
WiFiInterfaceStateChange(InterfaceState inState)
void
Wywołano interfejs WARM API w celu ogłoszenia zmiany stanu interfejsu Wi-Fi.

Zajęcia

nl::Weave::Warm::WarmFabricStateDelegate

To jest klasa wewnętrzna WarmCore.

Struktura

nl::Weave::Warm::ActionEntry
nl::Weave::Warm::ModuleState

Przestrzenie nazw

nl::Weave::Warm::Platform

Wyliczenia

ActionType

 ActionType
Właściwości
kActionTypeHostRouteThread

Dodaj | Usuń trasę IP dla interfejsu Thread API w stosie IP hosta.

kActionTypeLegacy6LoWPANHostAddress

Dodaj | Usuń adres IP starszego interfejsu 6LowPAN w stosie IP hosta.

kActionTypeLegacy6LoWPANThreadAddress

Dodaj | Usuń adres IP starszego interfejsu 6LowPAN w stosie IP modułu wątków.

kActionTypeMax

NIE PRZEKRACZAJ; zarezerwowane do oznaczenia maksymalnej liczby dostępnych bitów.

kActionTypeThreadAdvertisement

Rozpocznij | Przerwij reklamowanie trasy przez moduł Thread.

kActionTypeThreadHostAddress

Dodaj | Usuń adres IP interfejsu Thread API ze stosu IP hosta.

kActionTypeThreadRoute

Dodaj | Usuń trasę IP z modułu Thread na potrzeby obsługi tras granicznych.

kActionTypeThreadRoutePriority

Zmień priorytet trasy wątku w module wątku.

kActionTypeThreadThreadAddress

Dodaj | Usuń adres IP interfejsu Thread ze stosu IP modułu wątków.

kActionTypeTunnelHostAddress

Dodaj | Usuń adres IP interfejsu tunelu w stosie IP hosta.

kActionTypeTunnelHostRoute

Dodaj | Usuń trasę IP interfejsu tunelu w stosie IP hosta.

kActionTypeTunnelServiceRoute

Dodaj | Usuń 64-bitową trasę IP dla podsieci usługi w stosie IP hosta.

kActionTypeWiFiHostAddress

Dodaj | Usuń adres IP interfejsu Wi-Fi w stosie IP hosta.

InitState

 InitState
Właściwości
kInitStateNotInitialized

Musi to być 0, aby początkowa wartość mInitState miała wartość kInitStateNotInitialized.

InterfaceState

 InterfaceState

Wyliczenie możliwych wartości stanu interfejsu.

InterfaceType

 InterfaceType

Wyliczenie możliwych typów interfejsów.

.

Właściwości
kInterfaceTypeCellular

Interfejs sieci komórkowej.

kInterfaceTypeLegacy6LoWPAN

Interfejs alarmu Thread.

kInterfaceTypeThread

Interfejs Thread.

kInterfaceTypeTunnel

Interfejs tunelu.

kInterfaceTypeWiFi

Interfejs Wi-Fi.

PlatformActionExecution

 PlatformActionExecution
Właściwości
kPlatformActionExecutionContinue

kontynuuj wykonywanie działania.

kPlatformActionExecutionSuspendForAsynchOpCompletion

Zawieś wykonanie działania, aby zakończyć operację asynchroniczną.

PlatformResult

 PlatformResult

Enum możliwych wartości zwracanych przez interfejs API platformy.

Właściwości
kPlatformResultFailure

Nie udało się wykonać interfejsu API.

kPlatformResultInProgress

Operacja jest w toku i zakończy się asynchronicznie.

kPlatformResultSuccess

Interfejs API został wykonany.

RoutePriority

 RoutePriority

Enum możliwych priorytetów tras, dzięki którym jedna trasa może otrzymać priorytet nad inną.

SystemFeatureType

 SystemFeatureType
Właściwości
kSystemFeatureTypeBorderRoutingEnabled

Systemowa funkcja wyznaczania granic | NIE jest włączone.

kSystemFeatureTypeCellularConnected

Interfejs sieci komórkowej systemu IS | NIE jest połączona.

kSystemFeatureTypeIsFabricMember

Moduł Weave systemu | NIE jest elementem tkaniny.

kSystemFeatureTypeMax

NIE PRZEKRACZAJ; zarezerwowane do oznaczenia maksymalnej liczby dostępnych bitów.

kSystemFeatureTypeThreadConnected

Interfejs Thread systemu TO IS | NIE jest połączony.

kSystemFeatureTypeThreadRoutingEnabled

Systemowa funkcja routingu wątków IS | NIE jest włączone.

kSystemFeatureTypeTunnelInterfaceEnabled

Interfejs tunelu systemu IS | NIE jest włączone.

kSystemFeatureTypeTunnelState

Usługa tunelu systemu | NIE ustalono.

kSystemFeatureTypeWiFiConnected

Interfejs Wi-Fi systemu | NIE jest połączona.

Definiuje typ

ActionFunction

PlatformResult(* ActionFunction)(ActionType inAction, bool inActivate, const uint64_t &inGlobalId, const uint64_t &inInterfaceId)

FlagsType

uint16_t FlagsType

Zmienne

kGlobalULAPrefixLength

const uint8_t kGlobalULAPrefixLength = 48

Długość prefiksu Adresów

const uint8_t kLegacy6LoWPANULAAddressPrefixLength = 64

kThreadULAAddressPrefixLength

const uint8_t kThreadULAAddressPrefixLength = 64

kTunnelAddressPrefixLength

const uint8_t kTunnelAddressPrefixLength = 128

kWiFiULAAddressPrefixLength

const uint8_t kWiFiULAAddressPrefixLength = 64

sFabricStateDelegate

WarmFabricStateDelegate sFabricStateDelegate

sState

ModuleState sState

Funkcje

BorderRouterStateChange

void BorderRouterStateChange(
  InterfaceState inState
)

Wywołano interfejs WARM API w celu ogłoszenia zmiany stanu funkcji routera granicznego.

Szczegóły
Parametry
[in] inState
Wartość kInterfaceStateUp, jeśli funkcja routera granicy jest włączona, a funkcja kInterfaceStateDown jest w przeciwnym razie.

CellularInterfaceStateChange

void CellularInterfaceStateChange(
  InterfaceState inState
)

Wywołano interfejs WARM API w celu ogłoszenia zmiany stanu interfejsu sieci komórkowej.

Szczegóły
Parametry
[in] inState
Wartość kInterfaceStateUp, jeśli interfejs sieci komórkowej jest aktywny, a w przeciwnym razie wartość kInterfaceStateDown.

FabricStateChange

void FabricStateChange(
  InterfaceState inState
)

Funkcja wywoływana w celu ogłoszenia zmiany stanu funkcji Weave Fabric.

Szczegóły
Parametry
[in] inState
Wartość kInterfaceStateUp, jeśli system jest elementem tkaniny Weave, w przeciwnym razie wartość kInterfaceStateDown.

GetCurrentActionState

bool GetCurrentActionState(
  ActionType inAction
)

Funkcja statyczna, która zwraca bieżący stan określonego działania.

Szczegóły
Parametry
[in] inAction
Typ działania, którego ma dotyczyć zapytanie.
Zwroty
„true” (prawda), jeśli działanie jest ustawione na „Set” (Ustaw). W przeciwnym razie na „false” (fałsz).

GetFabricState

WEAVE_ERROR GetFabricState(
  const WeaveFabricState *& outFabricState
)

Interfejs WARM API do pozyskania obiektu FabricState przekazany do Warm podczas inicjowania.

Szczegóły
Parametry
[out] outFabricState
Odwołanie wskaźnika do obiektu FabricState.
Zwracane wartości
WEAVE_NO_ERROR
Powodzenie.
WEAVE_ERROR_INCORRECT_STATE
Jeśli ten interfejs API zostanie wywołany przed zainicjowaniem WARM.

GetSystemFeatureState

bool GetSystemFeatureState(
  SystemFeatureType inSystemFeature
)

Funkcja statyczna, która pobiera bieżący stan funkcji systemu.

Szczegóły
Parametry
[in] inSystemFeature
Funkcja systemowa, której ma dotyczyć zapytanie.
Zwroty
true (prawda), jeśli funkcja systemowa jest włączona. W przeciwnym razie ma wartość false (fałsz).

GetULA

WEAVE_ERROR GetULA(
  InterfaceType inInterfaceType,
  Inet::IPAddress & outAddress
)

Interfejs WARM API do pobierania ULA dla określonego typu interfejsu.

Szczegóły
Parametry
[in] inInterfaceType
Typ interfejsu, dla którego wymagany jest ULA.
[out] outAddress
Obiekt adresu używany do przechowywania wynikowej ULA.
Zwracane wartości
WEAVE_NO_ERROR
Powodzenie.
WEAVE_ERROR_INCORRECT_STATE
Jeśli ten interfejs API jest wywoływany, gdy WARM nie należy do platformy Fabric.
WEAVE_ERROR_INVALID_ARGUMENT
Jeśli ten interfejs API jest wywoływany z nieprawidłowym typem interfejsu.

Init

WEAVE_ERROR Init(
  WeaveFabricState & inFabricState
)

Interfejs WARM API do jednorazowego inicjowania modułu.

Szczegóły
Parametry
[in] inFabricState
Odwołanie do prawidłowej wartości WeaveFabricState.
Zwracane wartości
WEAVE_NO_ERROR
Po pomyślnym zainicjowaniu.
WEAVE_ERROR_INCORRECT_STATE
Gdy metoda Init jest wywoływana więcej niż raz.
other
W przeciwnym razie kod błędu.
Zwroty
WEAVE_NO_ERROR w przypadku powodzenia, kod błędu w przeciwnym razie

InvokeActions

void InvokeActions(
  void
)

Interfejs WARM API wywoływany przez specjalne zadanie do wykonywania różnych działań interfejsu API platformy.

Jest to punkt wejścia do wykonania niezbędnych działań, które spełnią bieżący stan systemu. Jeśli na przykład stos Thread zmienił się z wyłączonego na włączony, ta funkcja wykonałaby niezbędne wywołania platformy w celu przypisania adresu hosta wątku itp. Ta funkcja powinna być wywoływana tylko przez kod platformy w odpowiedzi na wywołanie Warm na polecenie RequestInvokeActions. Wywołanie InvokeActions spowoduje co najmniej jedno wywołanie interfejsu API nl::Warm::Platform. Deweloperzy powinni więc odpowiednio zaimplementować obiekt RequestInvokeActions oraz element wywołujący InvokeActions(). Może być odpowiednie, aby funkcja RequestInvokeActions opublikuje zdarzenie w zadaniu, które wywołuje metodę InvokeActions(). Jeśli natomiast system jest jednowątkowy, można zastosować metodę RequestInvokeActions w celu bezpośredniego wywoływania funkcji InvokeActions().

LegacyHostAddressAction

PlatformResult LegacyHostAddressAction(
  ActionType inAction,
  bool inActivate,
  const uint64_t & inGlobalId,
  const uint64_t & inInterfaceId
)

Jedna z metod działań.

Ustawia adres hosta dla starszego interfejsu.

Szczegóły
Parametry
[in] inAction
Typ działania.
[in] inActivate
Żądany stan prawda == aktywuj, fałsz == wyłącz.
[in] inGlobalId
Odwołanie do globalnego identyfikatora Weave, jeśli jest potrzebne do obliczenia adresu.
[in] inInterfaceId
Odwołanie do identyfikatora interfejsu urządzenia, jeśli jest potrzebne do obliczenia adresu.
Zwroty
Przekierowuje wynik z Platform::HostAddress().

LegacyThreadAddressAction

PlatformResult LegacyThreadAddressAction(
  ActionType inAction,
  bool inActivate,
  const uint64_t & inGlobalId,
  const uint64_t & inInterfaceId
)

Jedna z metod działań.

Ustawia adres w wątku dla starszego interfejsu 6LoWPAN.

Szczegóły
Parametry
[in] inAction
Typ działania.
[in] inActivate
Żądany stan prawda == aktywuj, fałsz == wyłącz.
[in] inGlobalId
Odwołanie do globalnego identyfikatora Weave, jeśli jest potrzebne do obliczenia adresu.
[in] inInterfaceId
Odwołanie do identyfikatora interfejsu urządzenia, jeśli jest potrzebne do obliczenia adresu.
Zwroty
Przekierowuje wynik z metody Platform::ThreadAddress().

MakePrefix

void MakePrefix(
  const uint64_t & inGlobalID,
  const uint16_t subnetId,
  const uint8_t inPrefixLen,
  Inet::IPPrefix & outPrefix
)

Narzędzie do tworzenia 48-bitowego prefiksu na podstawie identyfikatora globalnego.

Szczegóły
Parametry
[in] inGlobalID
Odwołanie do globalnego identyfikatora Weave.
[out] outPrefix
Prefiks do zainicjowania.

MapAvailabilityToPriority

RoutePriority MapAvailabilityToPriority(
  Profiles::WeaveTunnel::Platform::TunnelAvailabilityMode inAvailability
)

Funkcja statyczna, która zwraca mapowanie z TunnelAvailability na RoutePriority.

Szczegóły
Parametry
[in] inAvailability
Tryb dostępności tunelu Weave.
Zwroty
Zmapowana wartość priorytetu.

RecordPlatformResult

PlatformActionExecution RecordPlatformResult(
  PlatformResult inResult,
  ActionType inAction,
  bool inActionState
)

Funkcja statyczna, która rejestruje wynik wywołania działania interfejsu API platformy.

Ten moduł wysyła żądania wykonania działań za pomocą interfejsów API specyficznych dla danej platformy. Interfejsy API są wymagane do zgłaszania wyniku kPlatformResultSuccess|kPlatformResultFailure|kPlatformResultInProgress w przypadku danego żądania działania. Ta funkcja rejestruje ten wynik i zwraca wartość „prawda”, jeśli wynik jest w toku, a dalsze działania powinny być opóźnione.

Szczegóły
Parametry
[in] inResult
Wynik interfejsu API platformy.
[in] inAction
Działanie wykonane przez interfejs API platformy.
[in] inActionState
Nowy stan działania, jeśli działanie zakończyło się sukcesem.
Zwroty
true (prawda) oznacza, że interfejs API platformy asynchronicznie przetwarza żądanie. W przeciwnym razie ma wartość false (fałsz).

ReportActionComplete

void ReportActionComplete(
  PlatformResult inResult
)

Wywołano interfejs WARM API z informacją o zakończeniu poprzedniego wywołania interfejsu API platformy asynchronicznej.

Zakładamy, że interfejsy API działań na platformie mogą wykonywać operacje asynchroniczne. Jeśli jest to prawda, interfejs API platformy zwróci wartość kPlatformResultInProgress. W takim przypadku nowe działania dotyczące adresów i routingu zostaną zawieszone do czasu wywołania przez system funkcji ReportActionComplete, by ogłosić zakończenie operacji.

Szczegóły
Parametry
[in] inResult
Rezultat oczekującego działania. musi mieć jedną z tych wartości: {kPlatformResultSuccess | kPlatformResultFailure}

SetCurrentActionState

void SetCurrentActionState(
  ActionType inAction,
  bool inValue
)

Funkcja statyczna, która ustawia bieżący stan określonego działania.

Szczegóły
Parametry
[in] inAction
Typ działania do zmiany.
[in] inValue
Nowa wartość stanu do przyjęcia.

SetSystemFeatureState

bool SetSystemFeatureState(
  SystemFeatureType inSystemFeature,
  bool inValue
)

Funkcja statyczna, która ustawia bieżący stan funkcji systemowej.

Szczegóły
Parametry
[in] inSystemFeature
Funkcja systemowa do ustawienia.
[in] inValue
Nowa wartość stanu do przyjęcia.
Zwroty
true (prawda), jeśli funkcja systemowa została zmieniona. W przeciwnym razie ma wartość false (fałsz).

ShouldPerformAction

bool ShouldPerformAction(
  ActionType inAction,
  FlagsType inNecessarySystemFeatureState,
  bool & outActivate
)

Funkcja statyczna, która określa, czy należy wykonać określone działanie.

Ta funkcja analizuje stan flag stanu funkcji systemu i określa, czy określone działanie powinno być włączone czy wyłączone. Funkcja sprawdza bieżący stan działania i jeśli działanie nie jest ustawione na wartość wymaganą przez stan funkcji systemowej, zwraca wartość „prawda” wraz ze stanem działania w trybie outActivate.

Szczegóły
Parametry
[in] inAction
Działanie, którego ma dotyczyć zapytanie.
[in] inNecessarySystemFeatureState
Flagi stanowe niezbędne do wzięcia udziału w działaniu.
[out] outActivate
Pożądany stan działania.
Zwroty
true (prawda), jeśli działanie nie jest obecnie w żądanym stanie. W przeciwnym razie ma wartość false (fałsz).

SystemFeatureStateChangeHandler

void SystemFeatureStateChangeHandler(
  SystemFeatureType inSystemFeatureType,
  bool inState
)

Funkcja statyczna, która ustawia stan funkcji systemowej i powiadamia platformę o zmianie stanu zdarzenia.

Wywoływane przez interfejs API EventStateChange w celu wykonania niezbędnych operacji reakcji.

Szczegóły
Parametry
[in] inSystemFeatureType
Stan, który uległ zmianie odpowiadający wywołanemu interfejsowi API.
[in] inState
Nowa wartość stanu.

TakeActions

void TakeActions(
  void
)

Funkcja statyczna, która testuje stan każdego działania i w razie potrzeby wywołuje wywołanie interfejsu API platformy, aby zmienić stan działania.

Ta funkcja korzysta z metody PerformPerformAction() do wykrywania, czy należy zmienić/wykonać stan działania. Jeśli DonePerformAction() zwraca wartość „true”, funkcja wywoła odpowiedni interfejs API działania, aby wykonać działanie i umieścić je w odpowiednim stanie. Wynik wywołania interfejsu Action API jest przekazywany do RecordPlatformResult() i jeśli ta funkcja zwraca wartość „prawda”, wykonywanie tej funkcji zostaje zakończone.

ThreadAdvertisementAction

PlatformResult ThreadAdvertisementAction(
  ActionType inAction,
  bool inActivate,
  const uint64_t & inGlobalId,
  const uint64_t & inInterfaceId
)

Jedna z metod działań.

Ustawia stan rozgłaszania wątku

Szczegóły
Parametry
[in] inAction
Typ działania.
[in] inActivate
Żądany stan prawda == aktywuj, fałsz == wyłącz.
[in] inGlobalId
Odwołanie do globalnego identyfikatora Weave, jeśli jest potrzebne do obliczenia adresu.
[in] inInterfaceId
Odwołanie do identyfikatora interfejsu urządzenia, jeśli jest potrzebne do obliczenia adresu.
Zwroty
Przekierowuje wynik z funkcji Platform::ThreadAdvertisement().

ThreadHostAddressAction

PlatformResult ThreadHostAddressAction(
  ActionType inAction,
  bool inActivate,
  const uint64_t & inGlobalId,
  const uint64_t & inInterfaceId
)

Jedna z metod działań.

Ustawia adres hosta dla interfejsu Thread.

Szczegóły
Parametry
[in] inAction
Typ działania.
[in] inActivate
Żądany stan prawda == aktywuj, fałsz == wyłącz.
[in] inGlobalId
Odwołanie do globalnego identyfikatora Weave, jeśli jest potrzebne do obliczenia adresu.
[in] inInterfaceId
Odwołanie do identyfikatora interfejsu urządzenia, jeśli jest potrzebne do obliczenia adresu.
Zwroty
Przekierowuje wynik z Platform::HostAddress().

ThreadHostRouteAction

PlatformResult ThreadHostRouteAction(
  ActionType inAction,
  bool inActivate,
  const uint64_t & inGlobalId,
  const uint64_t & inInterfaceId
)

Jedna z metod działań.

Ustawia trasę hosta dla interfejsu Thread.

Szczegóły
Parametry
[in] inAction
Typ działania.
[in] inActivate
Żądany stan prawda == aktywuj, fałsz == wyłącz.
[in] inGlobalId
Odwołanie do globalnego identyfikatora Weave, jeśli jest potrzebne do obliczenia adresu.
[in] inInterfaceId
Odwołanie do identyfikatora interfejsu urządzenia, jeśli jest potrzebne do obliczenia adresu.
Zwroty
Przekierowuje wynik z Platform::HostRoute().

ThreadInterfaceStateChange

void ThreadInterfaceStateChange(
  InterfaceState inState
)

Wywołano interfejs WARM API w celu ogłoszenia zmiany stanu interfejsu Thread.

Szczegóły
Parametry
[in] inState
Wartość kInterfaceStateUp, jeśli interfejs Thread jest włączony, wartość kInterfaceStateDown.

ThreadRoutePriorityAction

PlatformResult ThreadRoutePriorityAction(
  ActionType inAction,
  bool inActivate,
  const uint64_t & inGlobalId,
  const uint64_t & inInterfaceId
)

Jedna z metod działań.

Ustawia priorytet trasy wątku na podstawie dostępności tunelu.

Szczegóły
Parametry
[in] inAction
Typ działania.
[in] inActivate
Żądany stan prawda == aktywuj, fałsz == wyłącz.
[in] inGlobalId
Odwołanie do globalnego identyfikatora Weave, jeśli jest potrzebne do obliczenia adresu.
[in] inInterfaceId
Odwołanie do identyfikatora interfejsu urządzenia, jeśli jest potrzebne do obliczenia adresu.
Zwroty
Przekierowuje wynik z metody Platform::ThreadRoutePriority().

ThreadRoutingStateChange

void ThreadRoutingStateChange(
  InterfaceState inState
)

Wywołano interfejs WARM API z informacją o zmianie stanu funkcji Thread Routing.

Szczegóły
Parametry
[in] inState
kInterfaceStateUp, jeśli funkcja routingu Thread jest uruchomiona, wartość kInterfaceStateDown jest w przeciwnym razie.

ThreadThreadAddressAction

PlatformResult ThreadThreadAddressAction(
  ActionType inAction,
  bool inActivate,
  const uint64_t & inGlobalId,
  const uint64_t & inInterfaceId
)

Jedna z metod działań.

Ustawia adres wątku dla interfejsu wątku.

Szczegóły
Parametry
[in] inAction
Typ działania.
[in] inActivate
Żądany stan prawda == aktywuj, fałsz == wyłącz.
[in] inGlobalId
Odwołanie do globalnego identyfikatora Weave, jeśli jest potrzebne do obliczenia adresu.
[in] inInterfaceId
Odwołanie do identyfikatora interfejsu urządzenia, jeśli jest potrzebne do obliczenia adresu.
Zwroty
Przekierowuje wynik z metody Platform::ThreadAddress().

ThreadThreadRouteAction

PlatformResult ThreadThreadRouteAction(
  ActionType inAction,
  bool inActivate,
  const uint64_t & inGlobalId,
  const uint64_t & inInterfaceId
)

Jedna z metod działań.

Ustawia trasę stosu wątków.

Szczegóły
Parametry
[in] inAction
Typ działania.
[in] inActivate
Żądany stan prawda == aktywuj, fałsz == wyłącz.
[in] inGlobalId
Odwołanie do globalnego identyfikatora Weave, jeśli jest potrzebne do obliczenia adresu.
[in] inInterfaceId
Odwołanie do identyfikatora interfejsu urządzenia, jeśli jest potrzebne do obliczenia adresu.
Zwroty
Przekierowuje wynik z metody Platform::ThreadRoute().

TunnelHostAddressAction

PlatformResult TunnelHostAddressAction(
  ActionType inAction,
  bool inActivate,
  const uint64_t & inGlobalId,
  const uint64_t & inInterfaceId
)

Jedna z metod działań.

Ustawia adres HostAddress dla interfejsu tunelu.

Szczegóły
Parametry
[in] inAction
Typ działania.
[in] inActivate
Żądany stan prawda == aktywuj, fałsz == wyłącz.
[in] inGlobalId
Odwołanie do globalnego identyfikatora Weave, jeśli jest potrzebne do obliczenia adresu.
[in] inInterfaceId
Odwołanie do identyfikatora interfejsu urządzenia, jeśli jest potrzebne do obliczenia adresu.
Zwroty
Przekierowuje wynik z Platform::HostAddress().

TunnelHostRouteAction

PlatformResult TunnelHostRouteAction(
  ActionType inAction,
  bool inActivate,
  const uint64_t & inGlobalId,
  const uint64_t & inInterfaceId
)

Jedna z metod działań.

Ustawia parametr HostRoute dla interfejsu tunelu.

Szczegóły
Parametry
[in] inAction
Typ działania.
[in] inActivate
Żądany stan prawda == aktywuj, fałsz == wyłącz.
[in] inGlobalId
Odwołanie do globalnego identyfikatora Weave, jeśli jest potrzebne do obliczenia adresu.
[in] inInterfaceId
Odwołanie do identyfikatora interfejsu urządzenia, jeśli jest potrzebne do obliczenia adresu.
Zwroty
Przekierowuje wynik z Platform::HostRoute().

TunnelInterfaceStateChange

void TunnelInterfaceStateChange(
  InterfaceState inState
)

Wywołano interfejs WARM API w celu ogłoszenia zmiany stanu interfejsu Weave Tunnel.

Szczegóły
Parametry
[in] inState
Wartość kInterfaceStateUp, jeśli interfejs Weave Tunnel jest aktywny, parametr kInterfaceStateDown jest aktywny.

TunnelPriorityStateChange

void TunnelPriorityStateChange(
  nl::Weave::Profiles::WeaveTunnel::Platform::TunnelAvailabilityMode inAvailability
)

Wywołano interfejs WARM API w celu aktualizacji priorytetu usługi tunelu.

Szczegóły
Parametry
[in] inAvailability
Nowa wartość stanu dostępności tunelu.

TunnelServiceStateChange

void TunnelServiceStateChange(
  InterfaceState inState,
  nl::Weave::Profiles::WeaveTunnel::Platform::TunnelAvailabilityMode inAvailability
)

Wywołano interfejs WARM API w celu ogłoszenia zmiany stanu interfejsu Weave Tunnel.

Szczegóły
Parametry
[in] inState
Wartość kInterfaceStateUp, jeśli została ustanowiona usługa Weave Tunnel, a jeśli została ustanowiona usługa Weave Tunnel, parametr kInterfaceStateDown.
[in] inAvailability
Stan dostępności, który zostanie użyty później podczas konfigurowania tunelu.

WiFiHostAddressAction

PlatformResult WiFiHostAddressAction(
  ActionType inAction,
  bool inActivate,
  const uint64_t & inGlobalId,
  const uint64_t & inInterfaceId
)

Jedna z metod działań.

Ustawia adres hosta dla interfejsu Wi-Fi.

Szczegóły
Parametry
[in] inAction
Typ działania.
[in] inActivate
Żądany stan prawda == aktywuj, fałsz == wyłącz.
[in] inGlobalId
Odwołanie do globalnego identyfikatora Weave, jeśli jest potrzebne do obliczenia adresu.
[in] inInterfaceId
Odwołanie do identyfikatora interfejsu urządzenia, jeśli jest potrzebne do obliczenia adresu.
Zwroty
Przekierowuje wynik z Platform::HostAddress().

WiFiInterfaceStateChange

void WiFiInterfaceStateChange(
  InterfaceState inState
)

Wywołano interfejs WARM API w celu ogłoszenia zmiany stanu interfejsu Wi-Fi.

Szczegóły
Parametry
[in] inState
kInterfaceStateUp, jeśli interfejs Wi-Fi jest włączony, a kInterfaceStateDown.