nl:: Weave:: Profiles:: Time:: SingleSourceTimeSyncClient
Özet
Herkese açık türler |
|
---|---|
ClientState{
|
enum bu Zaman Senkronizasyonu İstemcisinin mevcut durumu |
SyncCompletionHandler)(void *const aApp, const WEAVE_ERROR aErrorCode, const timesync_t aCorrectedSystemTime)
|
typedefvoid(*
Her iki zaman senkronizasyonu denemesi de tamamlandıktan sonra geri arama. |
TimeChangeNotificationHandler)(void *const aApp, ExchangeContext *aEC)
|
typedefvoid(*
Kısa süre önce bir Zaman Değişikliği Bildirimi aldığımızı belirtmek için geri arama. |
Korumalı türler |
|
---|---|
@324
|
enum |
Herkese açık özellikler |
|
---|---|
OnTimeChangeNotificationReceived
|
Korunan özellikler |
|
---|---|
mApp
|
void *
|
mBinding
|
Binding *
|
mClientState
|
|
mExchangeContext
|
|
mExchangeMgr
|
|
mFlightTime_usec
|
int32_t
tek yön uçuş süresini depolamak için kullanılır.
|
mIsInCallback
|
bool
|
mOnSyncCompleted
|
|
mRegisterSyncResult_usec
|
timesync_t
Bir sonuç kaydedildiğinde Zaman Damgası depolamak için kullanılır
|
mRemoteTimestamp_usec
|
timesync_t
yanıt mesajı gönderilmek üzereyken uzak düğümün sistem saatini depolamak için kullanılır
|
mUnadjTimestampLastSent_usec
|
timesync_t
|
Herkese açık işlevler |
|
---|---|
Abort(void)
|
void
Geçerli zaman senkronizasyonu işlemini iptal et.
|
GetClientState(void) const
|
Bu istemcinin mevcut durumunu al.
|
Init(void *const aApp, WeaveExchangeManager *const aExchangeMgr)
|
Bu istemciyi başlatın.
|
Sync(Binding *const aBinding, SyncCompletionHandler OnSyncCompleted)
|
Belirtilen Bağlama'yı kullanarak senkronize edin ve sağlanan işaretçiyi kullanarak geri arama yapar.
|
Korunan işlevler |
|
---|---|
EnterSync2(void)
|
void
|
FinalProcessing(void)
|
void
|
GetClientStateName(void) const
|
const char *
|
InvalidateRegisteredResult(void)
|
void
Zaman düzeltmesi için kayıtlı bilgileri geçersiz kılın.
|
IsRegisteredResultValid(void)
|
bool
Zaman düzeltmesi için kaydedilen bilgilerin geçerli olup olmadığını kontrol edin.
|
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
|
Korunan statik işlevler |
|
---|---|
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
|
Herkese açık türler
ClientState
ClientState
bu Zaman Senkronizasyonu İstemcisinin mevcut durumu
Özellikler | |
---|---|
kClientState_Idle
|
Başlatıldı, Zaman Değişikliği Bildirimi bekleniyor, ancak gerçek bir zaman senkronizasyonu işlemi yok. |
kClientState_Sync_1
|
İlk senkronizasyon denemesi üzerinde çalışılıyor. |
kClientState_Sync_2
|
İkinci senkronizasyon denemesi üzerinde çalışılıyor. |
SyncCompletionHandler
void(* SyncCompletionHandler)(void *const aApp, const WEAVE_ERROR aErrorCode, const timesync_t aCorrectedSystemTime)
Her iki zaman senkronizasyonu denemesi de tamamlandıktan sonra geri arama.
aErrorCode WEAVE_NO_ERROR ise en az bir deneme başarılı olmuş demektir. Aksi takdirde her ikisi de aErrorCode'da başarısız olduysa en son hatayı belirtir.
Ayrıntılar | |||||||
---|---|---|---|---|---|---|---|
Parametreler |
|
TimeChangeNotificationHandler
void(* TimeChangeNotificationHandler)(void *const aApp, ExchangeContext *aEC)
Kısa süre önce bir Zaman Değişikliği Bildirimi aldığımızı belirtmek için geri arama.
Init'da NULL değerine ayarlayın. Ayarlanmazsa Zaman Değişikliği Bildirimi yoksayılır. Uygulama katmanının bu geri çağırmada İptal ve Senkronize Et işlevini çağırmasına izin veriliyor.
Ayrıntılar | |||||
---|---|---|---|---|---|
Parametreler |
|
Korumalı türler
@324
@324
Herkese açık özellikler
OnTimeChangeNotificationReceived
TimeChangeNotificationHandler OnTimeChangeNotificationReceived
Korunan özellikler
mApp
void * mApp
mBinding
Binding * mBinding
mClientState
ClientState mClientState
mExchangeContext
ExchangeContext * mExchangeContext
mExchangeMgr
WeaveExchangeManager * mExchangeMgr
mFlightTime_usec
int32_t mFlightTime_usec
tek yön uçuş süresini depolamak için kullanılır.
mIsInCallback
bool mIsInCallback
mOnSyncCompleted
SyncCompletionHandler mOnSyncCompleted
mRegisterSyncResult_usec
timesync_t mRegisterSyncResult_usec
Bir sonuç kaydedildiğinde Zaman Damgası depolamak için kullanılır
mRemoteTimestamp_usec
timesync_t mRemoteTimestamp_usec
yanıt mesajı gönderilmek üzereyken uzak düğümün sistem saatini depolamak için kullanılır
mUnadjTimestampLastSent_usec
timesync_t mUnadjTimestampLastSent_usec
Herkese açık işlevler
İptal et
void Abort( void )
Geçerli zaman senkronizasyonu işlemini iptal et.
Binding'i bırakın. Etkin exchange'i iptal edin. Boşta kalma durumuna geri dönün.
GetClientState
ClientState GetClientState( void ) const
Bu istemcinin mevcut durumunu al.
Ayrıntılar | |
---|---|
İadeler |
mevcut durum
|
Init
WEAVE_ERROR Init( void *const aApp, WeaveExchangeManager *const aExchangeMgr )
Bu istemciyi başlatın.
Diğer işlevlerin kullanılabilmesi için önce çağrılmalıdır. Sıfır/NULL tüm dahili verileri ilk kullanıma hazırlar ve Zaman Değişikliği Bildirimi ile kaydolun.
Ayrıntılar | |||||
---|---|---|---|---|---|
Parametreler |
|
||||
İadeler |
Başarıda WEAVE_NO_ERROR
|
Sync
WEAVE_ERROR Sync( Binding *const aBinding, SyncCompletionHandler OnSyncCompleted )
Belirtilen Bağlama'yı kullanarak senkronize edin ve sağlanan işaretçiyi kullanarak geri arama yapar.
Devam eden bir zaman senkronizasyonu işlemi varsa bu işlem, geri çağırma yapılmadan dolaylı olarak iptal edilir. OnSyncTamamlandı geri çağırmasında kullanılamaz, ancak OnTimeChangeReportingReceived öğesinde izin verilir . Hata durumunda, İptal bu işlevden dönmeden önce dolaylı olarak çağrılır.
Ayrıntılar | |||||
---|---|---|---|---|---|
Parametreler |
|
||||
İadeler |
Başarı üzerine WEAVE_NO_ERROR
|
Korunan işlevler
EnterSync2
void EnterSync2( void )
FinalProcessing
void FinalProcessing( void )
GetClientStateName
const char * GetClientStateName( void ) const
InvalidateRegisteredResult
void InvalidateRegisteredResult( void )
Zaman düzeltmesi için kayıtlı bilgileri geçersiz kılın.
IsRegisteredResultValid
bool IsRegisteredResultValid( void )
Zaman düzeltmesi için kaydedilen bilgilerin geçerli olup olmadığını kontrol edin.
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 )
Korunan statik işlevler
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 )