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 )
قم بتهيئة هذا العميل.
يجب طلب البيانات قبل استخدام الدوال الأخرى. يعمل إعداد صفر/NULL على تهيئة جميع البيانات الداخلية والتسجيل باستخدام إشعار تغيير الوقت.
التفاصيل | |||||
---|---|---|---|---|---|
المَعلمات |
|
||||
المرتجعات |
WEAVE_NO_ERROR عند النجاح
|
مزامنة
WEAVE_ERROR Sync( Binding *const aBinding, SyncCompletionHandler OnSyncCompleted )
يمكنك المزامنة باستخدام عملية الربط المحدّدة وإجراء معاودة الاتصال باستخدام المؤشر المتوفر.
إذا كانت هناك عملية مزامنة وقت جارية، سيتم إلغاؤها ضمنيًا بدون إجراء معاودة الاتصال. غير متاحة في معاودة الاتصال OnSyncComplete (ولكن يتم السماح به) في 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 )