nl :: Tecer:: Perfis :: Tempo:: SingleSourceTimeSyncClient
Resumo
Tipos públicos | |
---|---|
ClientState { | enum estado atual deste cliente de sincronização de tempo |
SyncCompletionHandler )(void *const aApp, const WEAVE_ERROR aErrorCode, const timesync_t aCorrectedSystemTime) | typedefvoid(* Retorno de chamada após ambas as tentativas de sincronização de tempo terem sido concluídas. |
TimeChangeNotificationHandler )(void *const aApp, ExchangeContext *aEC) | typedefvoid(* Retorno de chamada para indicar que acabamos de receber uma notificação de mudança de horário. |
Tipos protegidos | |
---|---|
@324 | enum |
Atributos públicos | |
---|---|
OnTimeChangeNotificationReceived |
Atributos protegidos | |
---|---|
mApp | void * |
mBinding | Binding * |
mClientState | |
mExchangeContext | |
mExchangeMgr | |
mFlightTime_usec | int32_t usado para armazenar o tempo de voo unilateral. |
mIsInCallback | bool |
mOnSyncCompleted | |
mRegisterSyncResult_usec | timesync_t usado para armazenar carimbo de data / hora quando um resultado é registrado |
mRemoteTimestamp_usec | timesync_t usado para armazenar a hora do sistema do nó remoto, quando a mensagem de resposta estava prestes a ser enviada |
mUnadjTimestampLastSent_usec | timesync_t |
Funções públicas | |
---|---|
Abort (void) | void Aborta a operação de sincronização da hora atual. |
GetClientState (void) const | Recupere o estado atual deste cliente. |
Init (void *const aApp, WeaveExchangeManager *const aExchangeMgr) | Inicialize este cliente. |
Sync ( Binding *const aBinding, SyncCompletionHandler OnSyncCompleted) | Sincronização utilizando o dado Binding e faz uma chamada utilizando o ponteiro fornecida. |
Funções protegidas | |
---|---|
EnterSync2 (void) | void |
FinalProcessing (void) | void |
GetClientStateName (void) const | const char * |
InvalidateRegisteredResult (void) | void Invalide as informações registradas para correção de tempo. |
IsRegisteredResultValid (void) | bool Verifique se as informações registradas para correção de hora são válidas. |
OnResponseTimeout (void) | void |
OnSyncResponse (uint32_t aProfileId, uint8_t aMsgType, PacketBuffer *aPayload) | void |
ProceedToNextState (void) | void |
RegisterSyncResultIfNewOrBetter (const timesync_t aNow_usec, const timesync_t aRemoteTimestamp_usec, const int32_t aFlightTime_usec) | void |
SendSyncRequest (void) | |
SetClientState (const ClientState state) | void |
_AbortWithCallback (const WEAVE_ERROR aErrorCode) | void |
Funções estáticas protegidas | |
---|---|
HandleResponseTimeout ( ExchangeContext *aEC) | void |
HandleSyncResponse ( ExchangeContext *aEC, const IPPacketInfo *aPktInfo, const WeaveMessageInfo *aMsgInfo, uint32_t aProfileId, uint8_t aMsgType, PacketBuffer *aPayload) | void |
HandleTimeChangeNotification ( ExchangeContext *aEC, const IPPacketInfo *aPktInfo, const WeaveMessageInfo *aMsgInfo, uint32_t aProfileId, uint8_t aMsgType, PacketBuffer *aPayload) | void |
Tipos públicos
Estado do cliente
ClientState
estado atual deste cliente de sincronização de tempo
SyncCompletionHandler
void(* SyncCompletionHandler)(void *const aApp, const WEAVE_ERROR aErrorCode, const timesync_t aCorrectedSystemTime)
Retorno de chamada após ambas as tentativas de sincronização de tempo terem sido concluídas.
Se aErrorCode for WEAVE_NO_ERROR, pelo menos uma tentativa foi bem-sucedida. Caso contrário, ambos falharam em aErrorCode indica a falha mais recente.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
|
TimeChangeNotificationHandler
void(* TimeChangeNotificationHandler)(void *const aApp, ExchangeContext *aEC)
Retorno de chamada para indicar que acabamos de receber uma notificação de mudança de horário.
Definido como NULL no Init . Se não for definida, a Notificação de mudança de horário será ignorada. A camada de aplicativo tem permissão para chamar Abort and Sync neste callback.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
Tipos protegidos
@ 324
@324
Atributos públicos
OnTimeChangeNotificationReceived
TimeChangeNotificationHandler OnTimeChangeNotificationReceived
Atributos protegidos
mApp
void * mApp
mBinding
Binding * mBinding
mClientState
ClientState mClientState
mExchangeContext
ExchangeContext * mExchangeContext
mExchangeMgr
WeaveExchangeManager * mExchangeMgr
mFlightTime_usec
int32_t mFlightTime_usec
usado para armazenar o tempo de voo unilateral.
mIsInCallback
bool mIsInCallback
mOnSyncCompleted
SyncCompletionHandler mOnSyncCompleted
mRegisterSyncResult_usec
timesync_t mRegisterSyncResult_usec
usado para armazenar carimbo de data / hora quando um resultado é registrado
mRemoteTimestamp_usec
timesync_t mRemoteTimestamp_usec
usado para armazenar a hora do sistema do nó remoto, quando a mensagem de resposta estava prestes a ser enviada
mUnadjTimestampLastSent_usec
timesync_t mUnadjTimestampLastSent_usec
Funções públicas
Abortar
void Abort( void )
Aborta a operação de sincronização da hora atual.
Solte Encadernação . Abortar troca ativa. Volte para o estado ocioso.
GetClientState
ClientState GetClientState( void ) const
Recupere o estado atual deste cliente.
Detalhes | |
---|---|
Devoluções | Estado atual |
Iniciar
WEAVE_ERROR Init( void *const aApp, WeaveExchangeManager *const aExchangeMgr )
Inicialize este cliente.
Deve ser chamado antes que outras funções possam ser usadas. Zero / NULL inicializa todos os dados internos e registra com Notificação de Mudança de Horário.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
| ||||
Devoluções | WEAVE_NO_ERROR em sucesso |
Sincronizar
WEAVE_ERROR Sync( Binding *const aBinding, SyncCompletionHandler OnSyncCompleted )
Sincronização utilizando o dado Binding e faz uma chamada utilizando o ponteiro fornecida.
Se houver uma operação de sincronização de horário em andamento, ela será abortada implicitamente sem que seja feito um retorno de chamada. Não disponível no retorno de chamada OnSyncCompleted, mas permitido em OnTimeChangeNotificationReceived. Em caso de erro, Abort seria chamado implicitamente antes de retornar desta função.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
| ||||
Devoluções | WEAVE_NO_ERROR em caso de sucesso |
Funções protegidas
EnterSync2
void EnterSync2( void )
FinalProcessing
void FinalProcessing( void )
GetClientStateName
const char * GetClientStateName( void ) const
InvalidateRegisteredResult
void InvalidateRegisteredResult( void )
Invalide as informações registradas para correção de tempo.
IsRegisteredResultValid
bool IsRegisteredResultValid( void )
Verifique se as informações registradas para correção de hora são válidas.
OnResponseTimeout
void OnResponseTimeout( void )
OnSyncResponse
void OnSyncResponse( uint32_t aProfileId, uint8_t aMsgType, PacketBuffer *aPayload )
ProceedToNextState
void ProceedToNextState( void )
RegisterSyncResultIfNewOrBetter
void RegisterSyncResultIfNewOrBetter( const timesync_t aNow_usec, const timesync_t aRemoteTimestamp_usec, const int32_t aFlightTime_usec )
SendSyncRequest
WEAVE_ERROR SendSyncRequest( void )
SetClientState
void SetClientState( const ClientState state )
_AbortWithCallback
void _AbortWithCallback( const WEAVE_ERROR aErrorCode )
Funções estáticas protegidas
HandleResponseTimeout
void HandleResponseTimeout( ExchangeContext *aEC )
HandleSyncResponse
void HandleSyncResponse( ExchangeContext *aEC, const IPPacketInfo *aPktInfo, const WeaveMessageInfo *aMsgInfo, uint32_t aProfileId, uint8_t aMsgType, PacketBuffer *aPayload )
HandleTimeChangeNotification
void HandleTimeChangeNotification( ExchangeContext *aEC, const IPPacketInfo *aPktInfo, const WeaveMessageInfo *aMsgInfo, uint32_t aProfileId, uint8_t aMsgType, PacketBuffer *aPayload )