NL::編織::持久計數器

#include <src/lib/support/PersistedCounter.h>

用於將計數器作為整數值管理的類,旨在在重新啟動後保持不變。

概括

遺產

:從繼承NL ::編織:: MonotonicallyIncreasingCounter

構造函數和析構函數

PersistedCounter (void)
~PersistedCounter (void)

公共職能

Advance (void)
virtual WEAVE_ERROR
如果我們已經完成了當前紀元,則增加計數器並寫入持久存儲。
AdvanceEpochRelative (uint32_t aValue)
Init (const nl::Weave::Platform::PersistedStorage::Key aId, uint32_t aEpoch)
初始化PersistedCounter對象。
SetValue (uint32_t value)
這用於設置持久事件的事件計數器。

公共職能

進步

virtual WEAVE_ERROR Advance(
  void
)

如果我們已經完成了當前紀元,則增加計數器並寫入持久存儲。

細節
退貨
寫入持久存儲返回的任何錯誤。

AdvanceEpochRelative

WEAVE_ERROR AdvanceEpochRelative(
  uint32_t aValue
)

在裡面

WEAVE_ERROR Init(
  const nl::Weave::Platform::PersistedStorage::Key aId,
  uint32_t aEpoch
)

初始化PersistedCounter對象。

細節
參數
[in] aId
此的標識PersistedCounter實例。
[in] aEpoch
在啟動時,我們提供的值將從該參數的倍數開始。
退貨
WEAVE_ERROR_INVALID_ARGUMENT 如果 aId 為 NULL WEAVE_ERROR_INVALID_STRING_LENGTH 如果 aId 長於 WEAVE_CONFIG_PERSISTED_STORAGE_MAX_KEY_LENGTH。如果 aEpoch 為 0,則為 WEAVE_ERROR_INVALID_INTEGER_VALUE。否則為 WEAVE_NO_ERROR

持久計數器

 PersistedCounter(
  void
)

設定值

WEAVE_ERROR SetValue(
  uint32_t value
)

這用於設置持久事件的事件計數器。

~持久計數器

virtual  ~PersistedCounter(
  void
)