nl::Weave::Warm

Ta przestrzeń nazw zawiera interfejsy modułu adresu i routingu Weave, czyli przenośnego modułu 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 interfejsu.
PlatformActionExecution{
  kPlatformActionExecutionContinue = false,
  kPlatformActionExecutionSuspendForAsynchOpCompletion = true
}
enum | typ wyliczeniowy
PlatformResult{
  kPlatformResultSuccess = 0,
  kPlatformResultFailure,
  kPlatformResultInProgress
}
enum | typ wyliczeniowy
Wyliczenie możliwych wartości zwracanych przez interfejs API platformy.
RoutePriority enum | typ wyliczeniowy
Wyliczenie możliwych priorytetów trasy, dzięki którym jedna trasa może mieć 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

Definicje typów

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 z informacją o zmianie stanu w funkcji routera Border.
CellularInterfaceStateChange(InterfaceState inState)
void
Wywołano interfejs WARM API z informacją o zmianie stanu interfejsu sieci komórkowej.
FabricStateChange(InterfaceState inState)
void
Funkcja wywoływana do informowania o zmianie stanu w 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 przekazanego do Warm podczas inicjowania.
GetSystemFeatureState(SystemFeatureType inSystemFeature)
bool
Funkcja statyczna, która pobiera bieżący stan funkcji systemu.
GetULA(InterfaceType inInterfaceType, Inet::IPAddress & outAddress)
WARM API do pozyskania ULA dla określonego typu interfejsu.
Init(WeaveFabricState & inFabricState)
Interfejs WARM API do wykonania jednorazowego modułu.
InvokeActions(void)
void
Interfejs WARM API wywoływany przez specjalne zadanie, aby wykonać różne działania związane z interfejsem API platformy.
LegacyHostAddressAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
jedną z metod działań.
LegacyThreadAddressAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
jedną 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 Action API platformy.
ReportActionComplete(PlatformResult inResult)
void
Wywoływany interfejs WARM API informujący o zakończeniu poprzedniego wywołania interfejsu API asynchronicznego platformy.
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 wykonuje wywołanie interfejsu API platformy, aby zmienić stan działania.
ThreadAdvertisementAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
jedną z metod działań.
ThreadHostAddressAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
jedną z metod działań.
ThreadHostRouteAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
jedną z metod działań.
ThreadInterfaceStateChange(InterfaceState inState)
void
Wywołano interfejs WARM API z informacją o zmianie stanu interfejsu Thread.
ThreadRoutePriorityAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
jedną z metod działań.
ThreadRoutingStateChange(InterfaceState inState)
void
Wywołano interfejs WARM API z informacją o zmianie stanu w funkcji routingu wątków.
ThreadThreadAddressAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
jedną z metod działań.
ThreadThreadRouteAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
jedną z metod działań.
TunnelHostAddressAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
jedną z metod działań.
TunnelHostRouteAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
jedną z metod działań.
TunnelInterfaceStateChange(InterfaceState inState)
void
Wywołano interfejs WARM API z informacją o zmianie stanu interfejsu Weave Tunnel.
TunnelPriorityStateChange(nl::Weave::Profiles::WeaveTunnel::Platform::TunnelAvailabilityMode inAvailability)
void
Wywołano interfejs WARM API w celu zaktualizowania priorytetu usługi tunelu.
TunnelServiceStateChange(InterfaceState inState, nl::Weave::Profiles::WeaveTunnel::Platform::TunnelAvailabilityMode inAvailability)
void
Wywołano interfejs WARM API z informacją o zmianie stanu interfejsu Weave Tunnel.
WiFiHostAddressAction(ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId)
jedną z metod działań.
WiFiInterfaceStateChange(InterfaceState inState)
void
Wywołano interfejs WARM API z informacją o zmianie stanu interfejsu Wi-Fi.

Zajęcia

nl::Weave::Warm::WarmFabricStateDelegate

To jest klasa wewnętrzna dla WarCore.

Konstrukcja

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 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 Thread.

kActionTypeMax

NIE PRZEKRACZAJ; zarezerwowane, aby oznaczyć maksymalną dostępną liczbę bitów.

kActionTypeThreadAdvertisement

Start | Zatrzymaj reklamowanie trasy przez moduł Thread.

kActionTypeThreadHostAddress

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

kActionTypeThreadRoute

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

kActionTypeThreadRoutePriority

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

kActionTypeThreadThreadAddress

Dodaj | Usuń adres IP interfejsu Thread w stosie IP modułu Thread.

kActionTypeTunnelHostAddress

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

kActionTypeTunnelHostRoute

Dodaj | Usuń trasę IP dla 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 na stosie IP hosta.

InitState

 InitState
Właściwości
kInitStateNotInitialized

Musi ona wynosić 0, aby początkowa wartość parametru mInitState była kInitStateNotInitialized.

InterfaceState

 InterfaceState

Wyliczenie możliwych wartości stanu interfejsu.

InterfaceType

 InterfaceType

Wyliczenie możliwych typów interfejsu.

Właściwości
kInterfaceTypeCellular

Interfejs sieci komórkowej.

kInterfaceTypeLegacy6LoWPAN

Interfejs alarmu wątku.

kInterfaceTypeThread

Interfejs wątku.

kInterfaceTypeTunnel

Interfejs tunelu.

kInterfaceTypeWiFi

Interfejs Wi-Fi.

PlatformActionExecution

 PlatformActionExecution
Właściwości
kPlatformActionExecutionContinue

kontynuowanie wykonywania działania.

kPlatformActionExecutionSuspendForAsynchOpCompletion

zawiesić wykonanie działania na potrzeby ukończenia operacji asynchronicznej.

PlatformResult

 PlatformResult

Wyliczenie 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ł ukończony.

RoutePriority

 RoutePriority

Wyliczenie możliwych priorytetów trasy, dzięki którym jedna trasa może mieć priorytet nad inną.

SystemFeatureType

 SystemFeatureType
Właściwości
kSystemFeatureTypeBorderRoutingEnabled

Funkcja wyznaczania tras granicznych w systemie TO | NIE JEST włączona.

kSystemFeatureTypeCellularConnected

Interfejs komórkowy systemu NIE JEST połączony.

kSystemFeatureTypeIsFabricMember

Moduł Weave systemu NIE JEST częścią tkaniny.

kSystemFeatureTypeMax

NIE PRZEKRACZAJ; zarezerwowane, aby oznaczyć maksymalną dostępną liczbę bitów.

kSystemFeatureTypeThreadConnected

Interfejs wątku systemu JEST | NIE JEST połączony.

kSystemFeatureTypeThreadRoutingEnabled

Funkcja routingu w wątku systemu NIE JEST włączona.

kSystemFeatureTypeTunnelInterfaceEnabled

Interfejs tunelu systemu IS | NIE JEST włączony.

kSystemFeatureTypeTunnelState

Usługa tunelu systemowego NIE JEST DOSTĘPNA.

kSystemFeatureTypeWiFiConnected

Interfejs Wi-Fi systemu TO | NIE JEST połączone.

Definicje typów

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 adresu URLLegacy6LoWPANULA

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 z informacją o zmianie stanu w funkcji routera Border.

Szczegóły
Parametry
[in] inState
kInterfaceStateUp, jeśli funkcja Border routera jest włączona, kInterfaceStateDown.

CellularInterfaceStateChange

void CellularInterfaceStateChange(
  InterfaceState inState
)

Wywołano interfejs WARM API z informacją o zmianie stanu interfejsu sieci komórkowej.

Szczegóły
Parametry
[in] inState
kInterfaceStateUp, jeśli interfejs sieci komórkowej jest włączony, lub kInterfaceStateDown.

FabricStateChange

void FabricStateChange(
  InterfaceState inState
)

Funkcja wywoływana do informowania o zmianie stanu w funkcji Weave Fabric.

Szczegóły
Parametry
[in] inState
kInterfaceStateUp, jeśli system należy do tkaniny Weave, w przeciwnym razie ma 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 dotyczy zapytanie.
Zwroty
Wartość „true” (prawda), jeśli działaniem jest ustawiona wartość, a w przeciwnym razie ma wartość „false” (fałsz).

GetFabricState

WEAVE_ERROR GetFabricState(
  const WeaveFabricState *& outFabricState
)

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

Szczegóły
Parametry
[out] outFabricState
Odwołanie do wskaźnika do obiektu FabricState.
Zwracane wartości
WEAVE_NO_ERROR
Na sukces.
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 dotyczy zapytanie.
Zwroty
Wartość true, jeśli funkcja systemowa jest włączona, lub false, jeśli jest włączona.

GetULA

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

WARM API do pozyskania ULA dla określonego typu interfejsu.

Szczegóły
Parametry
[in] inInterfaceType
Typ interfejsu, dla którego chcesz uzyskać ULA.
[out] outAddress
Obiekt adresu używany do przechowywania wynikowej ULA.
Zwracane wartości
WEAVE_NO_ERROR
Na sukces.
WEAVE_ERROR_INCORRECT_STATE
Jeśli ten interfejs API został wywołany, gdy WARM nie jest członkiem Fabric.
WEAVE_ERROR_INVALID_ARGUMENT
Jeśli ten interfejs API został wywołany z nieprawidłowym typem interfejsu.

Zainicjuj

WEAVE_ERROR Init(
  WeaveFabricState & inFabricState
)

Interfejs WARM API do wykonania jednorazowego modułu.

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

InvokeActions

void InvokeActions(
  void
)

Interfejs WARM API wywoływany przez specjalne zadanie, aby wykonać różne działania związane z interfejsem API platformy.

Jest to punkt wejścia do wykonywania niezbędnych działań, które spełnią bieżący stan systemu. Jeśli na przykład stos Thread został zmieniony z wyłączonego na włączony, ta funkcja wykonuje niezbędne wywołania platformy w celu przypisania adresu hosta wątku itp. Ta funkcja powinna być wywoływana przez kod platformy tylko w odpowiedzi na wywołanie Warm dla metody RequestInvokeActions. Wywołanie InvokeActions spowoduje co najmniej 1 wywołanie interfejsów API nl::Warm::Platform. Deweloperzy powinni więc odpowiednio zaimplementować interfejs RequestInvokeActions i element wywołujący InvokeActions(). Użycie obiektu RequestInvokeActions może spowodować opublikowanie zdarzenia w zadaniu, które wywoła np. InvokeActions(). Jeśli natomiast system ma jeden wątek, można zastosować metodę RequestInvokeActions w taki sposób, by bezpośrednio wywoływać funkcję InvokeActions().

LegacyHostAddressAction

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

jedną z metod działań.

Ustawia adres hosta dla starszego interfejsu.

Szczegóły
Parametry
[in] inAction
Typ działania.
[in] inActivate
Żądany stan: prawda == aktywacja, fałsz == dezaktywuj.
[in] inGlobalId
odniesienie do globalnego identyfikatora Weave, jeśli jest potrzebne do obliczenia adresu.
[in] inInterfaceId
Odniesienie do identyfikatora interfejsu urządzenia, jeśli jest potrzebne do obliczenia adresu.
Zwroty
Przekazuje wynik z polecenia Platform::HostAddress().

LegacyThreadAddressAction

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

jedną z metod działań.

Ustawia adres wątku dla starszego interfejsu 6LoWPAN.

Szczegóły
Parametry
[in] inAction
Typ działania.
[in] inActivate
Żądany stan: prawda == aktywacja, fałsz == dezaktywuj.
[in] inGlobalId
odniesienie do globalnego identyfikatora Weave, jeśli jest potrzebne do obliczenia adresu.
[in] inInterfaceId
Odniesienie do identyfikatora interfejsu urządzenia, jeśli jest potrzebne do obliczenia adresu.
Zwroty
Przekierowuje wynik z funkcji 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
Odniesienie 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 Action API platformy.

Ten moduł wysyła żądania o wykonanie działań za pomocą interfejsów API związanych z daną platformą. Interfejsy API są wymagane do raportowania wyniku kPlatformResultSuccess|kPlatformResultFailure|kPlatformResultInprogress tego żądania działania. Ta funkcja rejestruje ten wynik i zwraca wartość „true” (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 wynik zakończył się powodzeniem.
Zwroty
true, interfejs API platformy przetwarza żądanie asynchronicznie. W przeciwnym razie ma wartość false.

ReportActionComplete

void ReportActionComplete(
  PlatformResult inResult
)

Wywoływany interfejs WARM API informujący o zakończeniu poprzedniego wywołania interfejsu API asynchronicznego platformy.

Przyjmuje się, że interfejsy API działań platformy muszą wykonywać operacje asynchroniczne. Jeśli wartość to prawda, interfejs API platformy zwróci wartość kPlatformResultInprogress. W takim przypadku nowe działania adresowe i routingowe zostaną zawieszone do czasu wywołania przez system wywołania ReportActionComplete w celu ogłoszenia zakończenia operacji.

Szczegóły
Parametry
[in] inResult
Wynikiem oczekującego działania musi być jeden z tych sposobów: {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
Wartość true (prawda), jeśli funkcja systemowa została zmieniona, lub false (fałsz) w przeciwnym razie.

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 sprawdza stan flag stanu funkcji systemowej i określa, czy określone działanie powinno zostać włączone czy wyłączone. Następnie funkcja sprawdza bieżący stan działania i jeśli nie jest ustawiona na wartość wymaganą przez stan funkcji systemowej, zwraca wartość „true” (prawda) wraz z żądanym stanem działania w parametrze outActivate.

Szczegóły
Parametry
[in] inAction
Działanie, którego dotyczy zapytanie.
[in] inNecessarySystemFeatureState
Flagi stanu niezbędne do tego, aby działanie było aktywne.
[out] outActivate
Żądany stan działania.
Zwroty
Wartość true (prawda), jeśli działanie nie jest obecnie w oczekiwanym 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ływana przez interfejs API EventStateChange w celu wykonania niezbędnych operacji reakcji.

Szczegóły
Parametry
[in] inSystemFeatureType
Stan, który zmienił się zgodnie z wywołanym interfejsem API.
[in] inState
Nowa wartość stanu.

TakeActions

void TakeActions(
  void
)

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

Ta funkcja korzysta z metody ExpectAction() do określenia, czy trzeba zmienić/wykonać stan działania. Jeśli funkcja HearPerformAction() zwróci wartość „true” (prawda), funkcja wywoła odpowiedni interfejs API działania w celu wykonania działania i uzyskania odpowiedniego stanu. Wynik wywołania API działania jest przekazywany do RecordPlatformResult(), a jeśli ta funkcja zwraca wartość true, jej wykonanie jest zakończone.

ThreadAdvertisementAction

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

jedną z metod działań.

Ustawia stan reklamy w wątku

Szczegóły
Parametry
[in] inAction
Typ działania.
[in] inActivate
Żądany stan: prawda == aktywacja, fałsz == dezaktywuj.
[in] inGlobalId
odniesienie do globalnego identyfikatora Weave, jeśli jest potrzebne do obliczenia adresu.
[in] inInterfaceId
Odniesienie 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
)

jedną z metod działań.

Ustawia adres hosta dla interfejsu Thread.

Szczegóły
Parametry
[in] inAction
Typ działania.
[in] inActivate
Żądany stan: prawda == aktywacja, fałsz == dezaktywuj.
[in] inGlobalId
odniesienie do globalnego identyfikatora Weave, jeśli jest potrzebne do obliczenia adresu.
[in] inInterfaceId
Odniesienie do identyfikatora interfejsu urządzenia, jeśli jest potrzebne do obliczenia adresu.
Zwroty
Przekazuje wynik z polecenia Platform::HostAddress().

ThreadHostRouteAction

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

jedną z metod działań.

Ustawia trasę hosta dla interfejsu Thread.

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

ThreadInterfaceStateChange

void ThreadInterfaceStateChange(
  InterfaceState inState
)

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

Szczegóły
Parametry
[in] inState
kInterfaceStateUp, jeśli interfejs Thread jest aktywny, lub kInterfaceStateDown.

ThreadRoutePriorityAction

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

jedną z metod działań.

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

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

ThreadRoutingStateChange

void ThreadRoutingStateChange(
  InterfaceState inState
)

Wywołano interfejs WARM API z informacją o zmianie stanu w funkcji routingu wątków.

Szczegóły
Parametry
[in] inState
kInterfaceStateUp, jeśli funkcja routingu wątku jest włączona, lub kInterfaceStateDown.

ThreadThreadAddressAction

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

jedną z metod działań.

Ustawia adres wątku dla interfejsu Thread.

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

ThreadThreadRouteAction

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

jedną z metod działań.

Ustawia trasę wątku dla stosu wątków.

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

TunnelHostAddressAction

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

jedną z metod działań.

Ustawia wartość HostAddress dla interfejsu tunelu.

Szczegóły
Parametry
[in] inAction
Typ działania.
[in] inActivate
Żądany stan: prawda == aktywacja, fałsz == dezaktywuj.
[in] inGlobalId
odniesienie do globalnego identyfikatora Weave, jeśli jest potrzebne do obliczenia adresu.
[in] inInterfaceId
Odniesienie do identyfikatora interfejsu urządzenia, jeśli jest potrzebne do obliczenia adresu.
Zwroty
Przekazuje wynik z polecenia Platform::HostAddress().

TunnelHostRouteAction

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

jedną z metod działań.

Ustawia trasę HostRoute dla interfejsu tunelu.

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

TunnelInterfaceStateChange

void TunnelInterfaceStateChange(
  InterfaceState inState
)

Wywołano interfejs WARM API z informacją o zmianie stanu interfejsu Weave Tunnel.

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

TunnelPriorityStateChange

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

Wywołano interfejs WARM API w celu zaktualizowania 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 z informacją o zmianie stanu interfejsu Weave Tunnel.

Szczegóły
Parametry
[in] inState
kInterfaceStateUp, jeśli uruchomiona jest usługa Weave Tunnel Service, 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
)

jedną z metod działań.

Ustawia adres hosta dla interfejsu Wi-Fi.

Szczegóły
Parametry
[in] inAction
Typ działania.
[in] inActivate
Żądany stan: prawda == aktywacja, fałsz == dezaktywuj.
[in] inGlobalId
odniesienie do globalnego identyfikatora Weave, jeśli jest potrzebne do obliczenia adresu.
[in] inInterfaceId
Odniesienie do identyfikatora interfejsu urządzenia, jeśli jest potrzebne do obliczenia adresu.
Zwroty
Przekazuje wynik z polecenia Platform::HostAddress().

WiFiInterfaceStateChange

void WiFiInterfaceStateChange(
  InterfaceState inState
)

Wywołano interfejs WARM API z informacją o zmianie stanu interfejsu Wi-Fi.

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