nl :: Tecer:: Caloroso
Este namespace inclui interfaces para o Módulo de Roteamento e Endereço do Weave, um Módulo portátil para configurar endereços IP e Rotas do Weave.
Resumo
Typedefs | |
---|---|
ActionFunction )(ActionType inAction, bool inActivate, const uint64_t &inGlobalId, const uint64_t &inInterfaceId) | typedef |
FlagsType | typedefuint16_t |
Variáveis | |
---|---|
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 |
Funções | |
---|---|
BorderRouterStateChange ( InterfaceState inState) | void Uma API WARM chamada para anunciar uma mudança de estado para o recurso do roteador Border. |
CellularInterfaceStateChange ( InterfaceState inState) | void Uma API WARM chamada para anunciar uma mudança de estado para a interface celular. |
FabricStateChange ( InterfaceState inState) | void Uma função chamada para anunciar uma mudança de estado para o recurso Weave Fabric. |
GetCurrentActionState ( ActionType inAction) | bool Uma função estática que retorna o estado atual de uma ação especificada. |
GetFabricState (const WeaveFabricState *& outFabricState) | Uma API WARM para adquirir o objeto FabricState que foi fornecido para Warm durante o Init. |
GetSystemFeatureState ( SystemFeatureType inSystemFeature) | bool Uma função estática que obtém o estado atual de um recurso do sistema. |
GetULA ( InterfaceType inInterfaceType, Inet::IPAddress & outAddress) | Uma API WARM para adquirir um ULA para um tipo de interface especificado. |
Init ( WeaveFabricState & inFabricState) | Uma API WARM para executar uma inicialização do módulo de uma vez. |
InvokeActions (void) | void Uma API WARM chamada por uma tarefa dedicada para executar várias ações da API da plataforma. |
LegacyHostAddressAction ( ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId) | Um dos métodos de ação. |
LegacyThreadAddressAction ( ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId) | Um dos métodos de ação. |
MakePrefix (const uint64_t & inGlobalID, const uint16_t subnetId, const uint8_t inPrefixLen, Inet::IPPrefix & outPrefix) | void Um utilitário para construir um prefixo de 48 bits de um globalID. |
MapAvailabilityToPriority ( Profiles::WeaveTunnel::Platform::TunnelAvailabilityMode inAvailability) | Uma função estática que retorna um mapeamento de TunnelAvailability para RoutePriority. |
RecordPlatformResult ( PlatformResult inResult, ActionType inAction, bool inActionState) | Uma função estática que registra o resultado de uma chamada de ação da API da plataforma. |
ReportActionComplete ( PlatformResult inResult) | void Uma API WARM chamada para anunciar a conclusão de uma chamada de API de plataforma assíncrona anterior. |
SetCurrentActionState ( ActionType inAction, bool inValue) | void Uma função estática que define o estado atual de uma ação especificada. |
SetSystemFeatureState ( SystemFeatureType inSystemFeature, bool inValue) | bool Uma função estática que define o estado atual do recurso do sistema. |
ShouldPerformAction ( ActionType inAction, FlagsType inNecessarySystemFeatureState, bool & outActivate) | bool Uma função estática que determina se a ação especificada deve ser executada. |
SystemFeatureStateChangeHandler ( SystemFeatureType inSystemFeatureType, bool inState) | void Uma função estática que define o estado do recurso do sistema e notifica a plataforma de que o estado do evento foi alterado. |
TakeActions (void) | void Uma função estática que testa o estado de cada ação e faz uma chamada de API da plataforma para alterar o estado da ação, se necessário. |
ThreadAdvertisementAction ( ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId) | Um dos métodos de ação. |
ThreadHostAddressAction ( ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId) | Um dos métodos de ação. |
ThreadHostRouteAction ( ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId) | Um dos métodos de ação. |
ThreadInterfaceStateChange ( InterfaceState inState) | void Uma API WARM chamada para anunciar uma mudança de estado para a interface Thread. |
ThreadRoutePriorityAction ( ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId) | Um dos métodos de ação. |
ThreadRoutingStateChange ( InterfaceState inState) | void Uma API WARM chamada para anunciar uma mudança de estado para o recurso Thread Routing. |
ThreadThreadAddressAction ( ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId) | Um dos métodos de ação. |
ThreadThreadRouteAction ( ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId) | Um dos métodos de ação. |
TunnelHostAddressAction ( ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId) | Um dos métodos de ação. |
TunnelHostRouteAction ( ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId) | Um dos métodos de ação. |
TunnelInterfaceStateChange ( InterfaceState inState) | void Uma API WARM chamada para anunciar uma mudança de estado para a interface do Weave Tunnel. |
TunnelPriorityStateChange ( nl::Weave::Profiles::WeaveTunnel::Platform::TunnelAvailabilityMode inAvailability) | void Uma API WARM chamada para atualizar a prioridade do Tunnel Service. |
TunnelServiceStateChange ( InterfaceState inState, nl::Weave::Profiles::WeaveTunnel::Platform::TunnelAvailabilityMode inAvailability) | void Uma API WARM chamada para anunciar uma mudança de estado para a interface do Weave Tunnel. |
WiFiHostAddressAction ( ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId) | Um dos métodos de ação. |
WiFiInterfaceStateChange ( InterfaceState inState) | void Uma API WARM chamada para anunciar uma mudança de estado para a interface WiFi. |
Aulas | |
---|---|
nl :: Weave :: Warm :: WarmFabricStateDelegate | Esta é uma classe interna da WarmCore. |
Structs | |
---|---|
nl :: Weave :: Warm :: ActionEntry | |
nl :: Weave :: Warm :: ModuleState |
Namespaces | |
---|---|
nl :: Weave :: Warm :: Platform |
Enumerações
Tipo de acão
ActionType
InitState
InitState
InterfaceState
InterfaceState
Um enum de possíveis valores de estado da interface.
InterfaceType
InterfaceType
PlatformActionExecution
PlatformActionExecution
PlatformResult
PlatformResult
RoutePriority
RoutePriority
Uma enumeração de possíveis prioridades de rota para que uma rota possa ter prioridade sobre outra.
SystemFeatureType
SystemFeatureType
Typedefs
ActionFunction
PlatformResult(* ActionFunction)(ActionType inAction, bool inActivate, const uint64_t &inGlobalId, const uint64_t &inInterfaceId)
FlagsType
uint16_t FlagsType
Variáveis
kGlobalULAPrefixLength
const uint8_t kGlobalULAPrefixLength = 48
kLegacy6LoWPANULAAddressPrefixLength
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
Funções
BorderRouterStateChange
void BorderRouterStateChange( InterfaceState inState )
Uma API WARM chamada para anunciar uma mudança de estado para o recurso do roteador Border.
Detalhes | |||
---|---|---|---|
Parâmetros |
|
CellularInterfaceStateChange
void CellularInterfaceStateChange( InterfaceState inState )
Uma API WARM chamada para anunciar uma mudança de estado para a interface celular.
Detalhes | |||
---|---|---|---|
Parâmetros |
|
FabricStateChange
void FabricStateChange( InterfaceState inState )
Uma função chamada para anunciar uma mudança de estado para o recurso Weave Fabric.
Detalhes | |||
---|---|---|---|
Parâmetros |
|
GetCurrentActionState
bool GetCurrentActionState( ActionType inAction )
Uma função estática que retorna o estado atual de uma ação especificada.
Detalhes | |||
---|---|---|---|
Parâmetros |
| ||
Devoluções | verdadeiro se a ação for definida, falso caso contrário. |
GetFabricState
WEAVE_ERROR GetFabricState( const WeaveFabricState *& outFabricState )
Uma API WARM para adquirir o objeto FabricState que foi fornecido para Warm durante o Init.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
| ||||
Valores Retornados |
|
GetSystemFeatureState
bool GetSystemFeatureState( SystemFeatureType inSystemFeature )
Uma função estática que obtém o estado atual de um recurso do sistema.
Detalhes | |||
---|---|---|---|
Parâmetros |
| ||
Devoluções | verdadeiro se o recurso do sistema estiver habilitado, falso caso contrário. |
GetULA
WEAVE_ERROR GetULA( InterfaceType inInterfaceType, Inet::IPAddress & outAddress )
Uma API WARM para adquirir um ULA para um tipo de interface especificado.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
| ||||||
Valores Retornados |
|
Iniciar
WEAVE_ERROR Init( WeaveFabricState & inFabricState )
Uma API WARM para executar uma inicialização do módulo de uma vez.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
| ||||||
Valores Retornados |
| ||||||
Devoluções | WEAVE_NO_ERROR em caso de sucesso, código de erro caso contrário. |
InvokeActions
void InvokeActions( void )
Uma API WARM chamada por uma tarefa dedicada para executar várias ações da API da plataforma.
Isso representa o ponto de entrada para executar as ações necessárias que irão satisfazer o estado do sistema atual. Se, por exemplo, a pilha de Threads passou de desabilitada para habilitada, então esta função faria as chamadas de plataforma necessárias para atribuir o endereço de host de thread etc. Essa função deve ser chamada pelo código de plataforma apenas em resposta a uma chamada Morna para RequestInvokeActions. Chamar InvokeActions resultará em uma ou mais chamadas para APIs nl :: Warm :: Platform . Os desenvolvedores devem, portanto, implementar RequestInvokeActions e o chamador de InvokeActions () de forma adequada. Pode ser apropriado para RequestInvokeActions postar um evento para a tarefa que chamaria InvokeActions (), por exemplo. Por outro lado, se o sistema for de thread único, RequestInvokeActions poderia ser implementado para chamar InvokeActions () diretamente.
LegacyHostAddressAction
PlatformResult LegacyHostAddressAction( ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId )
Um dos métodos de ação.
Define o endereço do host para a interface herdada.
Detalhes | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parâmetros |
| ||||||||
Devoluções | Encaminha o resultado de Platform :: HostAddress (). |
LegacyThreadAddressAction
PlatformResult LegacyThreadAddressAction( ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId )
Um dos métodos de ação.
Define o endereço do thread para a interface 6LoWPAN Legacy.
Detalhes | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parâmetros |
| ||||||||
Devoluções | Encaminha o resultado de Platform :: ThreadAddress (). |
MakePrefix
void MakePrefix( const uint64_t & inGlobalID, const uint16_t subnetId, const uint8_t inPrefixLen, Inet::IPPrefix & outPrefix )
Um utilitário para construir um prefixo de 48 bits de um globalID.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
MapAvailabilityToPriority
RoutePriority MapAvailabilityToPriority( Profiles::WeaveTunnel::Platform::TunnelAvailabilityMode inAvailability )
Uma função estática que retorna um mapeamento de TunnelAvailability para RoutePriority.
Detalhes | |||
---|---|---|---|
Parâmetros |
| ||
Devoluções | O valor mapeado de prioridade. |
RecordPlatformResult
PlatformActionExecution RecordPlatformResult( PlatformResult inResult, ActionType inAction, bool inActionState )
Uma função estática que registra o resultado de uma chamada de ação da API da plataforma.
Este módulo faz solicitações para executar ações por meio de APIs específicas da plataforma. As APIs são necessárias para relatar o resultado kPlatformResultSuccess | kPlatformResultFailure | kPlatformResultInProgress dessa solicitação de ação. Esta função registra esse resultado e retorna verdadeiro se o resultado estiver em andamento e outras ações precisarem ser adiadas.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
| ||||||
Devoluções | true, a API da plataforma está processando a solicitação de maneira assíncrona; caso contrário, false. |
ReportActionComplete
void ReportActionComplete( PlatformResult inResult )
Uma API WARM chamada para anunciar a conclusão de uma chamada de API de plataforma assíncrona anterior.
Presume-se que as APIs de ação da plataforma podem precisar executar operações assíncronas. Se isso for verdade, a API da plataforma retornará kPlatformResultInProgress. Quando isso acontecer, novos endereços e ações de roteamento serão suspensos até que o sistema chame ReportActionComplete para anunciar a conclusão da operação.
Detalhes | |||
---|---|---|---|
Parâmetros |
|
SetCurrentActionState
void SetCurrentActionState( ActionType inAction, bool inValue )
Uma função estática que define o estado atual de uma ação especificada.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
SetSystemFeatureState
bool SetSystemFeatureState( SystemFeatureType inSystemFeature, bool inValue )
Uma função estática que define o estado atual do recurso do sistema.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
| ||||
Devoluções | verdadeiro se o recurso do sistema foi alterado, falso caso contrário. |
ShouldPerformAction
bool ShouldPerformAction( ActionType inAction, FlagsType inNecessarySystemFeatureState, bool & outActivate )
Uma função estática que determina se a ação especificada deve ser executada.
Esta função examina a condição dos sinalizadores de estado do recurso do sistema e determina se a ação especificada deve ser habilitada ou desabilitada. A função, então, examina o estado atual da ação e se a ação não estiver definida para o valor exigido pelo Estado do recurso do sistema, então a função retorna true junto com o estado de ação desejado em outActivate
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
| ||||||
Devoluções | verdadeiro se a ação não estiver no estado desejado, falso caso contrário. |
SystemFeatureStateChangeHandler
void SystemFeatureStateChangeHandler( SystemFeatureType inSystemFeatureType, bool inState )
Uma função estática que define o estado do recurso do sistema e notifica a plataforma de que o estado do evento foi alterado.
Chamado pela API EventStateChange para realizar as operações de reação necessárias.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
Tomar decisoes
void TakeActions( void )
Uma função estática que testa o estado de cada ação e faz uma chamada de API da plataforma para alterar o estado da ação, se necessário.
Esta função usa ShouldPerformAction () para determinar se um estado de ação precisa ser alterado / executado. Se ShouldPerformAction () retornar verdadeiro, a função irá chamar a API de ação apropriada para realizar a ação a fim de colocá-la no estado desejado. O resultado da chamada da API de ação é passado para RecordPlatformResult () e se essa função retornar verdadeiro, a execução desta função é encerrada.
ThreadAdvertisementAction
PlatformResult ThreadAdvertisementAction( ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId )
Um dos métodos de ação.
Define o estado de anúncio do tópico
Detalhes | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parâmetros |
| ||||||||
Devoluções | Encaminha o resultado de Platform :: ThreadAdvertisement (). |
ThreadHostAddressAction
PlatformResult ThreadHostAddressAction( ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId )
Um dos métodos de ação.
Define o endereço do host para a interface de thread.
Detalhes | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parâmetros |
| ||||||||
Devoluções | Encaminha o resultado de Platform :: HostAddress (). |
ThreadHostRouteAction
PlatformResult ThreadHostRouteAction( ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId )
Um dos métodos de ação.
Define a rota do host para a interface de thread.
Detalhes | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parâmetros |
| ||||||||
Devoluções | Encaminha o resultado de Platform :: HostRoute (). |
ThreadInterfaceStateChange
void ThreadInterfaceStateChange( InterfaceState inState )
Uma API WARM chamada para anunciar uma mudança de estado para a interface Thread.
Detalhes | |||
---|---|---|---|
Parâmetros |
|
ThreadRoutePriorityAction
PlatformResult ThreadRoutePriorityAction( ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId )
Um dos métodos de ação.
Define a prioridade da rota do segmento com base na disponibilidade do túnel.
Detalhes | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parâmetros |
| ||||||||
Devoluções | Encaminha o resultado de Platform :: ThreadRoutePriority (). |
ThreadRoutingStateChange
void ThreadRoutingStateChange( InterfaceState inState )
Uma API WARM chamada para anunciar uma mudança de estado para o recurso Thread Routing.
Detalhes | |||
---|---|---|---|
Parâmetros |
|
ThreadThreadAddressAction
PlatformResult ThreadThreadAddressAction( ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId )
Um dos métodos de ação.
Define o endereço do thread para a interface do thread.
Detalhes | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parâmetros |
| ||||||||
Devoluções | Encaminha o resultado de Platform :: ThreadAddress (). |
ThreadThreadRouteAction
PlatformResult ThreadThreadRouteAction( ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId )
Um dos métodos de ação.
Define a rota da linha para a pilha de linhas.
Detalhes | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parâmetros |
| ||||||||
Devoluções | Encaminha o resultado de Platform :: ThreadRoute (). |
TunnelHostAddressAction
PlatformResult TunnelHostAddressAction( ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId )
Um dos métodos de ação.
Define o HostAddress para a interface de túnel.
Detalhes | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parâmetros |
| ||||||||
Devoluções | Encaminha o resultado de Platform :: HostAddress (). |
TunnelHostRouteAction
PlatformResult TunnelHostRouteAction( ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId )
Um dos métodos de ação.
Define o HostRoute para a interface de túnel.
Detalhes | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parâmetros |
| ||||||||
Devoluções | Encaminha o resultado de Platform :: HostRoute (). |
TunnelInterfaceStateChange
void TunnelInterfaceStateChange( InterfaceState inState )
Uma API WARM chamada para anunciar uma mudança de estado para a interface do Weave Tunnel.
Detalhes | |||
---|---|---|---|
Parâmetros |
|
TunnelPriorityStateChange
void TunnelPriorityStateChange( nl::Weave::Profiles::WeaveTunnel::Platform::TunnelAvailabilityMode inAvailability )
Uma API WARM chamada para atualizar a prioridade do Tunnel Service.
Detalhes | |||
---|---|---|---|
Parâmetros |
|
TunnelServiceStateChange
void TunnelServiceStateChange( InterfaceState inState, nl::Weave::Profiles::WeaveTunnel::Platform::TunnelAvailabilityMode inAvailability )
Uma API WARM chamada para anunciar uma mudança de estado para a interface do Weave Tunnel.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
WiFiHostAddressAction
PlatformResult WiFiHostAddressAction( ActionType inAction, bool inActivate, const uint64_t & inGlobalId, const uint64_t & inInterfaceId )
Um dos métodos de ação.
Define o endereço do host para a interface WiFi.
Detalhes | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parâmetros |
| ||||||||
Devoluções | Encaminha o resultado de Platform :: HostAddress (). |
WiFiInterfaceStateChange
void WiFiInterfaceStateChange( InterfaceState inState )
Uma API WARM chamada para anunciar uma mudança de estado para a interface WiFi.
Detalhes | |||
---|---|---|---|
Parâmetros |
|