nl :: 짜다:: 프로필 :: 시각:: SingleSourceTimeSyncClient
요약
공개 유형 | |
---|---|
ClientState { | 열거 형 이 Time Sync 클라이언트의 현재 상태 |
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
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로 설정 초기화 . 설정하지 않으면 시간 변경 알림이 무시됩니다. 앱 레이어는이 콜백에서 Abort 및 Sync를 호출 할 수 있습니다.
세부 | |||||
---|---|---|---|---|---|
매개 변수 |
|
보호 된 유형
@ 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
공공 기능
초기화
WEAVE_ERROR Init( void *const aApp, WeaveExchangeManager *const aExchangeMgr )
이 클라이언트를 초기화하십시오.
다른 함수를 사용하려면 먼저 호출해야합니다. Zero / NULL은 모든 내부 데이터를 초기화하고 시간 변경 알림에 등록합니다.
세부 | |||||
---|---|---|---|---|---|
매개 변수 |
| ||||
보고 | 성공시 WEAVE_NO_ERROR |
동조
WEAVE_ERROR Sync( Binding *const aBinding, SyncCompletionHandler OnSyncCompleted )
보호 된 기능
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 )