nl::Weave::Profiles::Time::SingleSourceTimeSyncClient
Zadbaj o dobrą organizację dzięki kolekcji
Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.
Podsumowanie
Typy publiczne |
|
---|---|
ClientState{
|
enum | typ wyliczeniowy bieżący stan tego klienta synchronizacji czasu |
SyncCompletionHandler)(void *const aApp, const WEAVE_ERROR aErrorCode, const timesync_t aCorrectedSystemTime)
|
typedefvoid(*
Oddzwanianie po wykonaniu obu prób synchronizacji. |
TimeChangeNotificationHandler)(void *const aApp, ExchangeContext *aEC)
|
typedefvoid(*
Oddzwanianie z informacją, że właśnie otrzymaliśmy powiadomienie o zmianie godziny. |
Typy chronione |
|
---|---|
@324
|
enum | typ wyliczeniowy |
Atrybuty publiczne |
|
---|---|
OnTimeChangeNotificationReceived
|
Atrybuty chronione |
|
---|---|
mApp
|
void *
|
mBinding
|
Binding *
|
mClientState
|
|
mExchangeContext
|
|
mExchangeMgr
|
|
mFlightTime_usec
|
int32_t
służy do przechowywania czasu lotu w jedną stronę.
|
mIsInCallback
|
bool
|
mOnSyncCompleted
|
|
mRegisterSyncResult_usec
|
timesync_t
służy do przechowywania sygnatury czasowej zarejestrowania wyniku
|
mRemoteTimestamp_usec
|
timesync_t
służy do przechowywania czasu systemowego węzła zdalnego, gdy komunikat z odpowiedzią miał zostać wysłany
|
mUnadjTimestampLastSent_usec
|
timesync_t
|
Funkcje publiczne |
|
---|---|
Abort(void)
|
void
Przerwij bieżącą operację synchronizacji czasu.
|
GetClientState(void) const
|
Pobierz bieżący stan tego klienta.
|
Init(void *const aApp, WeaveExchangeManager *const aExchangeMgr)
|
Zainicjuj tego klienta.
|
Sync(Binding *const aBinding, SyncCompletionHandler OnSyncCompleted)
|
Zsynchronizuje się, korzystając z danego Wiązania, i wywołuje wywołanie zwrotne za pomocą podanego wskaźnika.
|
Funkcje chronione |
|
---|---|
EnterSync2(void)
|
void
|
FinalProcessing(void)
|
void
|
GetClientStateName(void) const
|
const char *
|
InvalidateRegisteredResult(void)
|
void
Unieważnienie zarejestrowanych informacji na potrzeby korekty czasu.
|
IsRegisteredResultValid(void)
|
bool
Sprawdź, czy zarejestrowane informacje o korekcie czasu są prawidłowe.
|
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
|
Chronione funkcje statyczne |
|
---|---|
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
|
Typy publiczne
ClientState
ClientState
bieżący stan tego klienta synchronizacji czasu
Właściwości | |
---|---|
kClientState_Idle
|
Zainicjowano, czekam na powiadomienie o zmianie czasu, ale nie jest wykonywana żadna operacja synchronizacji czasu. |
kClientState_Sync_1
|
Trwa próba pierwszej synchronizacji. |
kClientState_Sync_2
|
Trwa druga próba synchronizacji. |
SyncCompletionHandler
void(* SyncCompletionHandler)(void *const aApp, const WEAVE_ERROR aErrorCode, const timesync_t aCorrectedSystemTime)
Oddzwanianie po wykonaniu obu prób synchronizacji.
Jeśli parametr aErrorCode ma wartość WEAVE_NO_ERROR, oznacza to, że co najmniej jedna próba zakończyła się powodzeniem. W przeciwnym razie oba z nich zakończyły się błędem aErrorCode.
Szczegóły | |||||||
---|---|---|---|---|---|---|---|
Parametry |
|
TimeChangeNotificationHandler
void(* TimeChangeNotificationHandler)(void *const aApp, ExchangeContext *aEC)
Oddzwanianie z informacją, że właśnie otrzymaliśmy powiadomienie o zmianie godziny.
W kolumnie Init ustaw wartość NULL. Jeśli jej nie skonfigurujesz, powiadomienia o zmianie czasu będą ignorowane. Warstwa aplikacji może wywoływać metodę przerwania i synchronizacji w tym wywołaniu zwrotnym.
Szczegóły | |||||
---|---|---|---|---|---|
Parametry |
|
Typy chronione
@324,
@324
Atrybuty publiczne
OnTimeChangeNotificationReceived
TimeChangeNotificationHandler OnTimeChangeNotificationReceived
Atrybuty chronione
mApp
void * mApp
mBinding
Binding * mBinding
mClientState
ClientState mClientState
mExchangeContext
ExchangeContext * mExchangeContext
mExchangeMgr
WeaveExchangeManager * mExchangeMgr
mFlightTime_usec
int32_t mFlightTime_usec
służy do przechowywania czasu lotu w jedną stronę.
mIsInCallback
bool mIsInCallback
mOnSyncCompleted
SyncCompletionHandler mOnSyncCompleted
mRegisterSyncResult_usec
timesync_t mRegisterSyncResult_usec
służy do przechowywania sygnatury czasowej zarejestrowania wyniku
mRemoteTimestamp_usec
timesync_t mRemoteTimestamp_usec
służy do przechowywania czasu systemowego węzła zdalnego, gdy komunikat z odpowiedzią miał zostać wysłany
mUnadjTimestampLastSent_usec
timesync_t mUnadjTimestampLastSent_usec
Funkcje publiczne
Przerwij
void Abort(
void
)
Przerwij bieżącą operację synchronizacji czasu.
Zwolnij Wiązanie. Przerwij aktywną wymianę. Wróć do stanu bezczynności.
GetClientState
ClientState GetClientState(
void
) const
Pobierz bieżący stan tego klienta.
Szczegóły | |
---|---|
Zwroty |
bieżący stan
|
Rozpocznij
WEAVE_ERROR Init(
void *const aApp,
WeaveExchangeManager *const aExchangeMgr
)
Zainicjuj tego klienta.
Ta funkcja musi zostać wywołana przed użyciem innych funkcji. Zero/NULL zainicjuj wszystkie dane wewnętrzne i zarejestruj się za pomocą powiadomienia o zmianie czasu.
Szczegóły | |||||
---|---|---|---|---|---|
Parametry |
|
||||
Zwroty |
WEAVE_NO_ERROR w przypadku powodzenia
|
Synchronizacja
WEAVE_ERROR Sync(
Binding *const aBinding,
SyncCompletionHandler OnSyncCompleted
)
Zsynchronizuje się, korzystając z danego Wiązania, i wywołuje wywołanie zwrotne za pomocą podanego wskaźnika.
Jeśli trwa operacja synchronizacji czasu, zostanie ona domyślnie przerwana bez wywołania zwrotnego. Niedostępne w wywołaniu zwrotnym OnSyncFinish, ale dozwolone w OnTimeChange NotificationReceived . W przypadku błędu funkcja przerwania zostałaby wywołana niejawnie przed powrotem z tej funkcji.
Szczegóły | |||||
---|---|---|---|---|---|
Parametry |
|
||||
Zwroty |
WEAVE_NO_ERROR po powodzeniu
|
Funkcje chronione
EnterSync2
void EnterSync2(
void
)
FinalProcessing
void FinalProcessing(
void
)
GetClientStateName
const char * GetClientStateName(
void
) const
InvalidateRegisteredResult
void InvalidateRegisteredResult(
void
)
Unieważnienie zarejestrowanych informacji na potrzeby korekty czasu.
IsRegisteredResultValid
bool IsRegisteredResultValid(
void
)
Sprawdź, czy zarejestrowane informacje o korekcie czasu są prawidłowe.
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
)
Chronione funkcje statyczne
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
)