O Google tem o compromisso de promover a igualdade racial para as comunidades negras. Saiba como.

nl :: Tecer:: Perfis :: Tempo:: SingleSourceTimeSyncClient

Resumo

Tipos públicos

ClientState {
kClientState_Idle ,
kClientState_Sync_1 ,
kClientState_Sync_2
}
enum
estado atual deste cliente de sincronização de tempo
SyncCompletionHandler )(void *const aApp, const WEAVE_ERROR aErrorCode, const timesync_t aCorrectedSystemTime) typedef
void(*
Retorno de chamada após ambas as tentativas de sincronização de tempo terem sido concluídas.
TimeChangeNotificationHandler )(void *const aApp, ExchangeContext *aEC) typedef
void(*
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
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

Propriedades
kClientState_Idle

Inicializado, aguardando a notificação de mudança de horário, mas nenhuma operação de sincronização de horário real está acontecendo.

kClientState_Sync_1

Trabalhando na primeira tentativa de sincronização.

kClientState_Sync_2

Trabalhando na segunda tentativa de sincronização.

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
[in] aApp
Um ponteiro para os dados da camada do aplicativo, definido em Init.
[in] aErrorCode
WEAVE_NO_ERROR se a operação pelo menos um tempo de sincronização é bem sucedida
[in] aCorrectedSystemTime
Só é válida se aErrorCode é WEAVE_NO_ERROR

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
[in] aApp
Um ponteiro para os dados da camada do aplicativo, definido em Init.
[in] aEC
Contexto de troca usado para esta mensagem de entrada, que pode ser usado para validar sua autenticidade

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
[in] aApp
Um ponteiro para dados da camada superior, usado em retornos de chamada para a camada superior.
[in] aExchangeMgr
Um ponteiro para o Exchange Manager, que seria usado no registro do manipulador de mensagens de Notificação de Mudança de Horário
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
[in] aBinding
A ligação para ser usado em contato com o servidor de horário
[in] OnSyncCompleted
Função de retorno de chamada a ser usada após a conclusão das operações de sincronização de tempo
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
)