nl::Weave::Profiles::DataManagement_Current::CircularEventBuffer
コレクションでコンテンツを整理
必要に応じて、コンテンツの保存と分類を行います。
#include <src/lib/profiles/data-management/Current/LoggingManagement.h>
nl::Weave::TLV::WeaveCircularTLVBuffer を中心に構築された内部イベント バッファ。
概要
コンストラクタとデストラクタ |
|
---|---|
CircularEventBuffer(uint8_t *inBuffer, size_t inBufferLength, CircularEventBuffer *inPrev, CircularEventBuffer *inNext)
CircularEventBuffer(内部 API)のコンストラクタ。
|
パブリック属性 |
|
---|---|
mBuffer
|
|
mEventIdCounter
|
|
mFirstEventID
|
この重要度に関してロギング サブシステムに保存される最初のイベント ID。
|
mFirstEventTimestamp
|
このバッファ内の最初のイベントのタイムスタンプ。
|
mFirstEventUTCTimestamp
|
このバッファ内の最初のイベントの UTC タイムスタンプ。
|
mImportance
|
バッファは、この重要度のイベントを格納する最後のバケットです。
|
mLastEventID
|
この重要度のために使用された最後のイベント ID。
|
mLastEventTimestamp
|
このバッファ内の最後のイベントのタイムスタンプ。
|
mLastEventUTCTimestamp
|
このバッファ内の最後のイベントの UTC タイムスタンプ。
|
mNext
|
より重要なイベントを格納するポインタ CircularEventBuffer。
|
mNonPersistedCounter
|
|
mPrev
|
重要度の低いイベントを格納するポインタ CircularEventBuffer。
|
mUTCInitialized
|
bool
このバッファで UTC タイムスタンプが初期化されているかどうかを示します。
|
パブリック関数 |
|
---|---|
AddEvent(timestamp_t inEventTimestamp)
|
void
イベントのタイムスタンプを指定して、ログに保存するデルタ時間を計算する。
|
AddEventUTC(utc_timestamp_t inEventTimestamp)
|
void
指定されたイベントのタイムスタンプに基づいて、ログに保存するデルタ utc 時間を計算します。
|
IsFinalDestinationForImportance(ImportanceType inImportance) const
|
bool
指定された重要度のイベントがこのバッファから破棄されるかどうかを決定するヘルパー関数。
|
LoadEvents(TLVReader & reader)
|
|
RemoveEvent(size_t aNumEvents)
|
void
|
SerializeEvents(TLVWriter & writer)
|
|
VendEventID(void)
|
イベントの重要度に基づいて新しいイベント ID を割り当て、カウンタがある場合は先に進めます。
|
静的パブリック関数 |
|
---|---|
GetNextBufferFunct(nl::Weave::TLV::TLVReader & ioReader, uintptr_t & inBufHandle, const uint8_t *& outBufStart, uint32_t & outBufLen)
|
パブリック属性
mBuffer
nl::Weave::TLV::WeaveCircularTLVBuffer nl::Weave::Profiles::DataManagement_Current::CircularEventBuffer::mBuffer
mEventIdCounter
nl::Weave::MonotonicallyIncreasingCounter * nl::Weave::Profiles::DataManagement_Current::CircularEventBuffer::mEventIdCounter
mFirstEventID
event_id_t nl::Weave::Profiles::DataManagement_Current::CircularEventBuffer::mFirstEventID
この重要度に関してロギング サブシステムに保存される最初のイベント ID。
mFirstEventTimestamp
timestamp_t nl::Weave::Profiles::DataManagement_Current::CircularEventBuffer::mFirstEventTimestamp
このバッファ内の最初のイベントのタイムスタンプ。
mFirstEventUTCTimestamp
utc_timestamp_t nl::Weave::Profiles::DataManagement_Current::CircularEventBuffer::mFirstEventUTCTimestamp
このバッファ内の最初のイベントの UTC タイムスタンプ。
mImportance
ImportanceType nl::Weave::Profiles::DataManagement_Current::CircularEventBuffer::mImportance
バッファは、この重要度のイベントを格納する最後のバケットです。
重要度の低いイベントは、このバッファを使い切ると破棄されます
mLastEventID
event_id_t nl::Weave::Profiles::DataManagement_Current::CircularEventBuffer::mLastEventID
この重要度のために使用された最後のイベント ID。
mLastEventTimestamp
timestamp_t nl::Weave::Profiles::DataManagement_Current::CircularEventBuffer::mLastEventTimestamp
このバッファ内の最後のイベントのタイムスタンプ。
mLastEventUTCTimestamp
utc_timestamp_t nl::Weave::Profiles::DataManagement_Current::CircularEventBuffer::mLastEventUTCTimestamp
このバッファ内の最後のイベントの UTC タイムスタンプ。
mNext
CircularEventBuffer * nl::Weave::Profiles::DataManagement_Current::CircularEventBuffer::mNext
より重要なイベントを格納するポインタ CircularEventBuffer。
mNonPersistedCounter
nl::Weave::MonotonicallyIncreasingCounter nl::Weave::Profiles::DataManagement_Current::CircularEventBuffer::mNonPersistedCounter
mPrev
CircularEventBuffer * nl::Weave::Profiles::DataManagement_Current::CircularEventBuffer::mPrev
重要度の低いイベントを格納するポインタ CircularEventBuffer。
mUTCInitialized
bool nl::Weave::Profiles::DataManagement_Current::CircularEventBuffer::mUTCInitialized
このバッファで UTC タイムスタンプが初期化されているかどうかを示します。
パブリック関数
AddEvent
void nl::Weave::Profiles::DataManagement_Current::CircularEventBuffer::AddEvent(
timestamp_t inEventTimestamp
)
イベントのタイムスタンプを指定して、ログに保存するデルタ時間を計算する。
詳細 | |||
---|---|---|---|
パラメータ |
|
||
戻り値 |
int32_t イベントをエンコードする時間デルタ。
|
AddEventUTC
void nl::Weave::Profiles::DataManagement_Current::CircularEventBuffer::AddEventUTC(
utc_timestamp_t inEventTimestamp
)
指定されたイベントのタイムスタンプに基づいて、ログに保存するデルタ utc 時間を計算します。
詳細 | |||
---|---|---|---|
パラメータ |
|
||
戻り値 |
int64_t イベントをエンコードする時間のデルタ。
|
CircularEventBuffer
nl::Weave::Profiles::DataManagement_Current::CircularEventBuffer::CircularEventBuffer(
uint8_t *inBuffer,
size_t inBufferLength,
CircularEventBuffer *inPrev,
CircularEventBuffer *inNext
)
CircularEventBuffer(内部 API)のコンストラクタ。
詳細 | |||||||||
---|---|---|---|---|---|---|---|---|---|
パラメータ |
|
||||||||
戻り値 |
IsFinalDestinationForImportance
bool nl::Weave::Profiles::DataManagement_Current::CircularEventBuffer::IsFinalDestinationForImportance(
ImportanceType inImportance
) const
指定された重要度のイベントがこのバッファから破棄されるかどうかを決定するヘルパー関数。
詳細 | |||||
---|---|---|---|---|---|
パラメータ |
|
||||
戻り値 |
|
LoadEvents
WEAVE_ERROR nl::Weave::Profiles::DataManagement_Current::CircularEventBuffer::LoadEvents(
TLVReader & reader
)
RemoveEvent
void nl::Weave::Profiles::DataManagement_Current::CircularEventBuffer::RemoveEvent(
size_t aNumEvents
)
SerializeEvents
WEAVE_ERROR nl::Weave::Profiles::DataManagement_Current::CircularEventBuffer::SerializeEvents(
TLVWriter & writer
)
VendEventID
event_id_t nl::Weave::Profiles::DataManagement_Current::CircularEventBuffer::VendEventID(
void
)
イベントの重要度に基づいて新しいイベント ID を割り当て、カウンタがある場合は先に進めます。
詳細 | |
---|---|
戻り値 |
この重要度のイベント ID。
|
静的パブリック関数
GetNextBufferFunct
WEAVE_ERROR nl::Weave::Profiles::DataManagement_Current::CircularEventBuffer::GetNextBufferFunct(
nl::Weave::TLV::TLVReader & ioReader,
uintptr_t & inBufHandle,
const uint8_t *& outBufStart,
uint32_t & outBufLen
)