nl:: Weave:: Profiles:: Time:: SingleSourceTimeSyncClient
סיכום
סוגים ציבוריים |
|
---|---|
ClientState{
|
טיפוסים בני מנייה (enum) המצב הנוכחי של לקוח סנכרון הזמן הזה |
SyncCompletionHandler)(void *const aApp, const WEAVE_ERROR aErrorCode, const timesync_t aCorrectedSystemTime)
|
typedefvoid(*
קריאה חוזרת (callback) אחרי ששני ניסיונות הסנכרון הושלמו. |
TimeChangeNotificationHandler)(void *const aApp, ExchangeContext *aEC)
|
typedefvoid(*
התקשרות חזרה כדי לציין שקיבלנו עכשיו התראה על שינוי זמן. |
סוגים מוגנים |
|
---|---|
@324
|
טיפוסים בני מנייה (enum) |
מאפיינים ציבוריים |
|
---|---|
OnTimeChangeNotificationReceived
|
מאפיינים מוגנים |
|
---|---|
mApp
|
void *
|
mBinding
|
Binding *
|
mClientState
|
|
mExchangeContext
|
|
mExchangeMgr
|
|
mFlightTime_usec
|
int32_t
לאחסון זמן טיסה בכיוון אחד.
|
mIsInCallback
|
bool
|
mOnSyncCompleted
|
|
mRegisterSyncResult_usec
|
timesync_t
משמשת לאחסון חותמת זמן כשתוצאה נרשמת
|
mRemoteTimestamp_usec
|
timesync_t
משמש לשמירת זמן המערכת של הצומת המרוחק, שבו הודעת התגובה עמדה להישלח
|
mUnadjTimestampLastSent_usec
|
timesync_t
|
תפקידים ציבוריים |
|
---|---|
Abort(void)
|
void
צריך לבטל את פעולת סנכרון השעה הנוכחית.
|
GetClientState(void) const
|
אחזר את המצב הנוכחי של הלקוח הזה.
|
Init(void *const aApp, WeaveExchangeManager *const aExchangeMgr)
|
הפעלה של הלקוח הזה.
|
Sync(Binding *const aBinding, SyncCompletionHandler OnSyncCompleted)
|
סנכרון באמצעות קישור הקישור הנתון ומבצע התקשרות חזרה באמצעות הסמן שסופק.
|
פונקציות מוגנות |
|
---|---|
EnterSync2(void)
|
void
|
FinalProcessing(void)
|
void
|
GetClientStateName(void) const
|
const char *
|
InvalidateRegisteredResult(void)
|
void
ביטול התוקף של המידע הרשום לצורך תיקון השעה.
|
IsRegisteredResultValid(void)
|
bool
צריך לבדוק אם הפרטים הרשומים לתיקון השעה תקינים.
|
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
|
פונקציות סטטיות מוגנות |
|
---|---|
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
|
סוגים ציבוריים
ClientState
ClientState
המצב הנוכחי של לקוח סנכרון הזמן הזה
תכונות | |
---|---|
kClientState_Idle
|
אותחלה, בהמתנה לקבלת התראה על שינוי זמן, אבל לא מתבצעת פעולה של סנכרון שעה בפועל. |
kClientState_Sync_1
|
מתבצע ניסיון סנכרון בפעם הראשונה. |
kClientState_Sync_2
|
המערכת מנסה לבצע את ניסיון הסנכרון השני. |
SyncCompletionHandler
void(* SyncCompletionHandler)(void *const aApp, const WEAVE_ERROR aErrorCode, const timesync_t aCorrectedSystemTime)
קריאה חוזרת (callback) אחרי ששני ניסיונות הסנכרון הושלמו.
אם aErrorCode הוא WEAVE_NO_ERROR, לפחות ניסיון אחד הצליח. אחרת, שתיהן נכשלו ב-aErrorCode מצביעות על הכשל האחרון.
פרטים | |||||||
---|---|---|---|---|---|---|---|
פרמטרים |
|
TimeChangeNotificationHandler
void(* TimeChangeNotificationHandler)(void *const aApp, ExchangeContext *aEC)
התקשרות חזרה כדי לציין שקיבלנו עכשיו התראה על שינוי זמן.
צריך להגדיר את הערך NULL ב-Init. אם המדיניות לא מוגדרת, המערכת תתעלם מהתראה על שינוי זמן. שכבת האפליקציה יכולה לבצע קריאה ל'ביטול' ול'סנכרון' בקריאה החוזרת הזו.
פרטים | |||||
---|---|---|---|---|---|
פרמטרים |
|
סוגים מוגנים
@324
@324
מאפיינים ציבוריים
OnTimeChangeNotificationReceived
TimeChangeNotificationHandler OnTimeChangeNotificationReceived
מאפיינים מוגנים
mApp
void * mApp
mBinding
Binding * mBinding
mClientState
ClientState mClientState
mExchangeContext
ExchangeContext * mExchangeContext
mExchangeMgr
WeaveExchangeManager * mExchangeMgr
mFlightTime_usec
int32_t mFlightTime_usec
לאחסון זמן טיסה בכיוון אחד.
mIsInCallback
bool mIsInCallback
mOnSyncCompleted
SyncCompletionHandler mOnSyncCompleted
mRegisterSyncResult_usec
timesync_t mRegisterSyncResult_usec
משמשת לאחסון חותמת זמן כשתוצאה נרשמת
mRemoteTimestamp_usec
timesync_t mRemoteTimestamp_usec
משמש לשמירת זמן המערכת של הצומת המרוחק, שבו הודעת התגובה עמדה להישלח
mUnadjTimestampLastSent_usec
timesync_t mUnadjTimestampLastSent_usec
תפקידים ציבוריים
ביטול
void Abort( void )
צריך לבטל את פעולת סנכרון השעה הנוכחית.
משחררים את הקישור. ביטול ההחלפה הפעילה. חזרה למצב 'לא פעיל'.
GetClientState
ClientState GetClientState( void ) const
אחזר את המצב הנוכחי של הלקוח הזה.
פרטים | |
---|---|
החזרות |
המצב הנוכחי
|
הפעלה
WEAVE_ERROR Init( void *const aApp, WeaveExchangeManager *const aExchangeMgr )
הפעלה של הלקוח הזה.
הן חייבות לפעול כדי שניתן יהיה להשתמש בפונקציות אחרות. אפס/NULL מאתחל את כל הנתונים הפנימיים ונרשם עם 'התראה על שינוי זמן'.
פרטים | |||||
---|---|---|---|---|---|
פרמטרים |
|
||||
החזרות |
WEAVE_NO_ERROR הושלמו בהצלחה
|
סנכרון
WEAVE_ERROR Sync( Binding *const aBinding, SyncCompletionHandler OnSyncCompleted )
סנכרון באמצעות קישור הקישור הנתון ומבצע התקשרות חזרה באמצעות הסמן שסופק.
אם מתבצעת פעולה של סנכרון זמן, היא תבוטל באופן לא מפורש מבלי לבצע קריאה חוזרת (callback). התכונה לא זמינה בקריאה החוזרת (callback) הושלמה, אך היא מותרת ב- OnTimeChangeNotificationReceived . במקרה של שגיאה, הביטול ייקרא באופן לא מפורש לפני החזרה מהפונקציה הזו.
פרטים | |||||
---|---|---|---|---|---|
פרמטרים |
|
||||
החזרות |
WEAVE_NO_ERROR בוצע בהצלחה
|
פונקציות מוגנות
EnterSync2
void EnterSync2( void )
FinalProcessing
void FinalProcessing( void )
GetClientStateName
const char * GetClientStateName( void ) const
InvalidateRegisteredResult
void InvalidateRegisteredResult( void )
ביטול התוקף של המידע הרשום לצורך תיקון השעה.
IsRegisteredResultValid
bool IsRegisteredResultValid( void )
צריך לבדוק אם הפרטים הרשומים לתיקון השעה תקינים.
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 )
פונקציות סטטיות מוגנות
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 )