nl:: بافت:: پروفایل ها:: زمان:: SingleSourceTimeSyncClient
خلاصه
انواع عمومی | |
---|---|
ClientState { | enum وضعیت فعلی این سرویس گیرنده Time Sync |
SyncCompletionHandler )(void *const aApp, const WEAVE_ERROR aErrorCode, const timesync_t aCorrectedSystemTime) | typedefvoid(* پس از اتمام هر دو تلاش برای همگامسازی زمانی، تماس مجدد برقرار شود. |
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 هنگامی که نتیجه ثبت می شود برای ذخیره Timestamp استفاده می شود |
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) | با استفاده از Binding داده شده همگام سازی کنید و با استفاده از اشاره گر ارائه شده یک تماس پاسخ برقرار کنید. |
توابع محافظت شده | |
---|---|
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
SyncCompletion Handler
void(* SyncCompletionHandler)(void *const aApp, const WEAVE_ERROR aErrorCode, const timesync_t aCorrectedSystemTime)
پس از اتمام هر دو تلاش برای همگامسازی زمانی، تماس مجدد برقرار شود.
اگر یک ErrorCode WEAVE_NO_ERROR باشد، حداقل یک تلاش موفق بوده است. در غیر این صورت هر دو در یک ErrorCode ناموفق هستند نشان دهنده آخرین شکست است.
جزئیات | |||||||
---|---|---|---|---|---|---|---|
پارامترها |
|
TimeChangeNotification Handler
void(* TimeChangeNotificationHandler)(void *const aApp, ExchangeContext *aEC)
پاسخ به تماس برای نشان دادن اینکه ما به تازگی یک اعلان تغییر زمان دریافت کرده ایم.
در Init روی NULL تنظیم کنید. اگر تنظیم نشود، اعلان تغییر زمان نادیده گرفته می شود. لایه برنامه مجاز است در این فراخوانی Abort و Sync را فراخوانی کند.
جزئیات | |||||
---|---|---|---|---|---|
پارامترها |
|
انواع محافظت شده
@324
@324
صفات عمومی
OnTimeChangeNotification Received
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
هنگامی که نتیجه ثبت می شود برای ذخیره Timestamp استفاده می شود
mRemoteTimestamp_usec
timesync_t mRemoteTimestamp_usec
برای ذخیره زمان سیستم گره راه دور، زمانی که پیام پاسخ در شرف ارسال بود استفاده می شود
mUnadjTimestampLastSent_usec
timesync_t mUnadjTimestampLastSent_usec
توابع عمومی
سقط
void Abort( void )
عملیات همگام سازی زمان فعلی را لغو کنید.
Release Binding . لغو تبادل فعال به حالت بیکار برگردید.
GetClientState
ClientState GetClientState( void ) const
وضعیت فعلی این مشتری را بازیابی کنید.
جزئیات | |
---|---|
برمی گرداند | وضعیت فعلی |
شروع کنید
WEAVE_ERROR Init( void *const aApp, WeaveExchangeManager *const aExchangeMgr )
این مشتری را مقدار دهی اولیه کنید.
قبل از استفاده از سایر توابع باید فراخوانی شود. Zero/NULL تمام داده های داخلی را مقداردهی اولیه می کند و با اعلان تغییر زمان ثبت نام می کند.
جزئیات | |||||
---|---|---|---|---|---|
پارامترها |
| ||||
برمی گرداند | WEAVE_NO_ERROR در موفقیت |
همگام سازی
WEAVE_ERROR Sync( Binding *const aBinding, SyncCompletionHandler OnSyncCompleted )
با استفاده از Binding داده شده همگام سازی کنید و با استفاده از اشاره گر ارائه شده یک تماس پاسخ برقرار کنید.
اگر عملیات همگام سازی زمانی در حال انجام باشد، به طور ضمنی بدون برقراری تماس لغو می شود. در پاسخ به تماس OnSyncCompleted موجود نیست، اما در OnTimeChangeNotificationReceived مجاز است. در صورت خطا، قبل از بازگشت از این تابع، Abor به طور ضمنی فراخوانی می شود.
جزئیات | |||||
---|---|---|---|---|---|
پارامترها |
| ||||
برمی گرداند | WEAVE_NO_ERROR در موفقیت |
توابع محافظت شده
EnterSync2
void EnterSync2( void )
پردازش نهایی
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 )
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates. The OPENTHREAD and related marks are trademarks of the Thread Group and are used under license.
تاریخ آخرین بهروزرسانی 2024-11-13 بهوقت ساعت هماهنگ جهانی.