нл:: Переплетение:: Профили:: Время:: SingleSourceTimeSyncClient
Краткое содержание
Публичные типы | |
---|---|
ClientState { | перечисление текущее состояние этого клиента синхронизации времени |
SyncCompletionHandler )(void *const aApp, const WEAVE_ERROR aErrorCode, const timesync_t aCorrectedSystemTime) | определение типаvoid(* Обратный вызов после завершения обеих попыток синхронизации времени. |
TimeChangeNotificationHandler )(void *const aApp, ExchangeContext *aEC) | определение типаvoid(* Обратный вызов, чтобы указать, что мы только что получили уведомление об изменении времени. |
Защищенные типы | |
---|---|
@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
текущее состояние этого клиента синхронизации времени
Обработчик синхронизации завершения
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 . Если не установлено, уведомление об изменении времени будет игнорироваться. Уровню приложения разрешено вызывать Abort и Sync в этом обратном вызове.
Подробности | |||||
---|---|---|---|---|---|
Параметры |
|
Защищенные типы
@324
@324
Публичные атрибуты
OnTimeChangeNotificationReceived
TimeChangeNotificationHandler OnTimeChangeNotificationReceived
Защищенные атрибуты
мобильное приложение
void * mApp
мбиндинг
Binding * mBinding
мклиентстате
ClientState mClientState
мExchangeContext
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 )
Прервать операцию синхронизации текущего времени.
Привязка выпуска. Прервать активный обмен. Вернитесь в состояние ожидания.
Жетклиентстате
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 )
Синхронизируется с использованием заданной привязки и выполняет обратный вызов с использованием предоставленного указателя.
Если выполняется операция синхронизации времени, она будет неявно прервана без выполнения обратного вызова. Недоступно в обратном вызове OnSyncCompleted, но разрешено в OnTimeChangeNotificationReceived. В случае ошибки Abort будет вызываться неявно перед возвратом из этой функции.
Подробности | |||||
---|---|---|---|---|---|
Параметры |
| ||||
Возврат | WEAVE_NO_ERROR в случае успеха |
Защищенные функции
EnterSync2
void EnterSync2( void )
Финальная обработка
void FinalProcessing( void )
GetClientStateName
const char * GetClientStateName( void ) const
Инвалидатерегистредресулт
void InvalidateRegisteredResult( void )
Аннулировать зарегистрированную информацию для коррекции времени.
Исрегистредресулдатвалид
bool IsRegisteredResultValid( void )
Проверьте, действительна ли зарегистрированная информация для коррекции времени.
OnResponseTimeout
void OnResponseTimeout( void )
OnSyncResponse
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 )
Отправитьсинкрекуест
WEAVE_ERROR SendSyncRequest( void )
Сетклиентстате
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 )