nl:: Weave:: Profiles:: Time:: SingleSourceTimeSyncClient
ملخّص
الأنواع العامة |
|
---|---|
ClientState{
|
تعداد الحالة الحالية لبرنامج مزامنة الوقت هذا |
SyncCompletionHandler)(void *const aApp, const WEAVE_ERROR aErrorCode, const timesync_t aCorrectedSystemTime)
|
typedefvoid(*
يمكنك معاودة الاتصال بعد اكتمال محاولتي مزامنة الوقت. |
TimeChangeNotificationHandler)(void *const aApp, ExchangeContext *aEC)
|
typedefvoid(*
معاودة الاتصال للإشارة إلى أنّنا تلقّينا إشعارًا بتغيير الوقت. |
الأنواع المحمية |
|
---|---|
@324
|
تعداد |
السمات العامة |
|
---|---|
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)
يمكنك معاودة الاتصال بعد اكتمال محاولتي مزامنة الوقت.
إذا كان 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 )
إعداد هذا العميل.
يجب استدعاؤها قبل استخدام الدوال الأخرى. يقوم الإعداد "صفر/فارغ" بإعداد جميع البيانات الداخلية والتسجيل في "إشعار تغيير الوقت".
التفاصيل | |||||
---|---|---|---|---|---|
المعلمات |
|
||||
المرتجعات |
WEAVE_NO_ERROR في النجاح
|
مزامنة
WEAVE_ERROR Sync( Binding *const aBinding, SyncCompletionHandler OnSyncCompleted )
يمكنك المزامنة باستخدام الربط المحدد وإجراء معاودة الاتصال باستخدام المؤشر المقدَّم.
إذا كانت هناك عملية مزامنة جارية، سيتم إلغاؤها ضمنيًا بدون إجراء معاودة الاتصال. لا تتوفّر في معاودة الاتصال OnSynccomplete، ولكن مسموح بها في OnTimeChangeNotificationReceived . عند حدوث خطأ، يتم استدعاء Abort بشكل ضمني قبل الرجوع من هذه الدالة.
التفاصيل | |||||
---|---|---|---|---|---|
المعلمات |
|
||||
المرتجعات |
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 )