17 class WaitForEventWithTimeout;
19 class RetryBackoffTable;
22 uint64_t
JitterTime(uint64_t baseMs, uint64_t width);
39 void Reset(uint64_t timeout);
57 void Set(uint64_t milliseconds);
58 void SetWithJitter(uint64_t milliseconds, uint64_t jitterWidthMs);
59 void AdjustDuration(uint64_t milliseconds);
60 bool Check(
bool clearWhenExpired);
62 bool IsSet()
const {
return mStartTime != 0; }
66 uint64_t GetRemainingTime()
const;
67 uint64_t GetElapsedTime()
const;
94 RetryBackoffTable(
const std::vector<uint64_t>& tableMilliseconds, uint64_t retryJitterWidthMs);
111 uint64_t GetInterval()
const;
114 void CreateTable(uint64_t maxInterval);
144 RetryTimer(
const std::vector<uint64_t>& backOffTableMs, uint64_t retryJitterWidthMs);
148 RetryTimer(uint64_t maxInterval, uint64_t retryJitterWidthMs);
150 void SetBackoffTable(
const std::vector<uint64_t>& backOffTableMs, uint64_t retryJitterWidthMs);
151 void SetBackoffTable(uint64_t maxInterval, uint64_t retryJitterWidthMs);
156 void ScheduleNextRetry();
160 bool CheckNextRetry();
166 void StartGlobalReset(uint64_t milliseconds);
167 bool CheckGlobalReset();
168 void ClearGlobalReset();
174 uint64_t GetNextAttempt();
uint64_t mJitterMilliseconds
Definition: timer.h:117
void Reset(uint64_t timeout)
uint32_t mNextAttemptNumber
Definition: timer.h:118
WaitForEventWithTimeout()
WaitForExpiry mGlobalResetTimer
The timer which will reset mNextAttemptNumber.
Definition: timer.h:177
eWaitState mState
Definition: timer.h:48
eWaitState
Definition: timer.h:29
uint64_t mStartTime
Definition: timer.h:70
bool IsGlobalSet() const
Definition: timer.h:171
bool IsTimedOut()
Definition: timer.h:43
JSON (JavaScript Object Notation).
Definition: adsapi.h:16
uint64_t mRetryJitter
Definition: timer.h:179
uint64_t JitterTime(uint64_t baseMs, uint64_t width)
bool IsComplete()
Definition: timer.h:44
bool IsSet() const
Definition: timer.h:62
uint64_t mEndTime
Definition: timer.h:71
uint64_t GetEndTime() const
Definition: timer.h:65
std::vector< uint64_t > mBackOffTableMilliseconds
Definition: timer.h:116
bool IsRetrySet() const
Definition: timer.h:170
WaitForExpiry mNextRetry
Definition: timer.h:176
std::vector< uint64_t > mBackOffTable
Definition: timer.h:178
uint64_t GetStartTime() const
Definition: timer.h:64
uint64_t mExpiryTime
Definition: timer.h:47
uint32_t mNextAttemptNumber
Definition: timer.h:180