nl:: Weave:: Profiles:: Time:: SingleSourceTimeSyncClient
Özet
Herkese açık türler |
|
---|---|
ClientState{
|
enum Bu Time Sync İstemcisinin mevcut durumu |
SyncCompletionHandler)(void *const aApp, const WEAVE_ERROR aErrorCode, const timesync_t aCorrectedSystemTime)
|
typedefvoid(*
Her iki zaman senkronizasyonu denemesi tamamlandıktan sonra geri arama. |
TimeChangeNotificationHandler)(void *const aApp, ExchangeContext *aEC)
|
typedefvoid(*
Zaman Değişikliği Bildirimi aldığımızı bildirmek için geri arama. |
Korunan 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 saklamak için kullanılır.
|
mIsInCallback
|
bool
|
mOnSyncCompleted
|
|
mRegisterSyncResult_usec
|
timesync_t
Bir sonuç kaydedildiğinde Zaman Damgasını saklamak 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
|
Kamu işlevleri |
|
---|---|
Abort(void)
|
void
Geçerli saat 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)
|
Verilen Bağlama'yı kullanarak senkronizasyon gerçekleştirir 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üzeltme için kayıtlı bilgileri geçersiz kılın.
|
IsRegisteredResultValid(void)
|
bool
Zaman düzeltme için kayıtlı 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 Time Sync İstemcisinin mevcut durumu
Özellikler | |
---|---|
kClientState_Idle
|
Başlatıldı, Zaman Değişikliği Bildirimi bekleniyor, ancak gerçek zaman senkronizasyonu işlemi gerçekleşmiyor. |
kClientState_Sync_1
|
İlk senkronizasyon denemesi yapılıyor. |
kClientState_Sync_2
|
İkinci kez senkronizasyon denemesi üzerinde çalışıyoruz. |
SyncCompletionHandler
void(* SyncCompletionHandler)(void *const aApp, const WEAVE_ERROR aErrorCode, const timesync_t aCorrectedSystemTime)
Her iki zaman senkronizasyonu denemesi tamamlandıktan sonra geri arama.
BirErrorCode WEAVE_NO_ERROR ise, en az bir deneme başarılı olmuştur. Aksi takdirde, aErrorCode'da her ikisi de başarısız oldu, en son hatayı gösterir.
Ayrıntılar | |||||||
---|---|---|---|---|---|---|---|
Parametreler |
|
TimeChangeNotificationHandler
void(* TimeChangeNotificationHandler)(void *const aApp, ExchangeContext *aEC)
Zaman Değişikliği Bildirimi aldığımızı bildirmek için geri arama.
Başlatma'da NULL olarak 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 çağırmasına izin verilir.
Ayrıntılar | |||||
---|---|---|---|---|---|
Parametreler |
|
Korunan 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 saklamak için kullanılır.
mIsInCallback
bool mIsInCallback
mOnSyncCompleted
SyncCompletionHandler mOnSyncCompleted
mRegisterSyncResult_usec
timesync_t mRegisterSyncResult_usec
Bir sonuç kaydedildiğinde Zaman Damgasını saklamak 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
Kamu işlevleri
İptal et
void Abort( void )
Geçerli saat senkronizasyonu işlemini iptal et.
Binding'i bırakın. Etkin exchange'i iptal et. Boşta kalma durumuna geri dön.
GetClientState
ClientState GetClientState( void ) const
Bu istemcinin mevcut durumunu al.
Ayrıntılar | |
---|---|
İadeler |
mevcut durum
|
Başlat
WEAVE_ERROR Init( void *const aApp, WeaveExchangeManager *const aExchangeMgr )
Bu istemciyi başlatın.
Diğer işlevlerin kullanılabilmesi için çağrılmalıdır. Sıfır/NULL tüm dahili verileri başlatın ve Zaman Değişikliği Bildirimi'ne kaydolun.
Ayrıntılar | |||||
---|---|---|---|---|---|
Parametreler |
|
||||
İadeler |
Başarılı WEAVE_NO_ERROR
|
Sync
WEAVE_ERROR Sync( Binding *const aBinding, SyncCompletionHandler OnSyncCompleted )
Verilen Bağlama'yı kullanarak senkronizasyon gerçekleştirir 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 arka planda iptal edilir. OnSyncCompleted geri çağırmasında kullanılamaz, ancak OnTimeChange NotificationReceived öğesinde izin verilir . Hata durumunda, bu işlevden dönmeden önce iptal etme işlemi dolaylı yoldan çağrılır.
Ayrıntılar | |||||
---|---|---|---|---|---|
Parametreler |
|
||||
İadeler |
Başarılı olduğunda 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üzeltme için kayıtlı bilgileri geçersiz kılın.
IsRegisteredResultValid
bool IsRegisteredResultValid( void )
Zaman düzeltme için kayıtlı 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 )
_Geri Çağırma İle İptal
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 )