nl::Weave::Profiles::DataManagement_Current::CircularEventBuffer

#include <src/lib/profiles/data-management/Current/LoggingManagement.h>

Buffer peristiwa internal, yang dibuat berdasarkan nl::Weave::TLV::WeaveCircularTLVBuffer.

Ringkasan

Konstruktor dan Destruktor

CircularEventBuffer(uint8_t *inBuffer, size_t inBufferLength, CircularEventBuffer *inPrev, CircularEventBuffer *inNext)
Konstruktor untuk CircularEventBuffer (API internal).

Atribut publik

mBuffer
Buffer TLV pokok yang menyimpan peristiwa dalam representasi TLV.
mEventIdCounter
mFirstEventID
ID peristiwa pertama yang disimpan dalam subsistem logging untuk nilai penting ini.
mFirstEventTimestamp
Stempel waktu peristiwa pertama dalam buffering ini.
mFirstEventUTCTimestamp
Stempel waktu UTC dari peristiwa pertama dalam buffering ini.
mImportance
Buffer adalah bucket terakhir untuk peristiwa dengan tingkat kepentingan ini.
mLastEventID
ID peristiwa terakhir ditujukan untuk nilai penting ini.
mLastEventTimestamp
Stempel waktu peristiwa terakhir dalam buffering ini.
mLastEventUTCTimestamp
Stempel waktu UTC dari peristiwa terakhir dalam buffering ini.
mNext
Pointer CircularEventBuffer yang menyimpan peristiwa yang lebih penting.
mNonPersistedCounter
mPrev
Pointer CircularEventBuffer yang menyimpan peristiwa yang kurang penting.
mUTCInitialized
bool
Menunjukkan apakah stempel waktu UTC diinisialisasi dalam buffering ini.

Fungsi publik

AddEvent(timestamp_t inEventTimestamp)
void
Dengan mempertimbangkan stempel waktu peristiwa, hitung waktu delta yang akan disimpan dalam log.
AddEventUTC(utc_timestamp_t inEventTimestamp)
void
Dengan mempertimbangkan stempel waktu suatu peristiwa, hitung waktu delta utc yang akan disimpan dalam log.
IsFinalDestinationForImportance(ImportanceType inImportance) const
bool
Fungsi bantuan yang menentukan apakah peristiwa tingkat kepentingan yang ditentukan akan dihapus dari buffer ini.
LoadEvents(TLVReader & reader)
RemoveEvent(size_t aNumEvents)
void
SerializeEvents(TLVWriter & writer)
VendEventID(void)
Alokasikan ID peristiwa baru berdasarkan nilai penting peristiwa, dan lanjutkan penghitung jika ada.

Fungsi statis publik

GetNextBufferFunct(nl::Weave::TLV::TLVReader & ioReader, uintptr_t & inBufHandle, const uint8_t *& outBufStart, uint32_t & outBufLen)

Atribut publik

mBuffer

nl::Weave::TLV::WeaveCircularTLVBuffer nl::Weave::Profiles::DataManagement_Current::CircularEventBuffer::mBuffer

Buffer TLV pokok yang menyimpan peristiwa dalam representasi TLV.

mEventIdCounter

nl::Weave::MonotonicallyIncreasingCounter * nl::Weave::Profiles::DataManagement_Current::CircularEventBuffer::mEventIdCounter

mFirstEventID

event_id_t nl::Weave::Profiles::DataManagement_Current::CircularEventBuffer::mFirstEventID

ID peristiwa pertama yang disimpan dalam subsistem logging untuk nilai penting ini.

mFirstEventTimestamp

timestamp_t nl::Weave::Profiles::DataManagement_Current::CircularEventBuffer::mFirstEventTimestamp

Stempel waktu peristiwa pertama dalam buffering ini.

mFirstEventUTCTimestamp

utc_timestamp_t nl::Weave::Profiles::DataManagement_Current::CircularEventBuffer::mFirstEventUTCTimestamp

Stempel waktu UTC dari peristiwa pertama dalam buffering ini.

mImportance

ImportanceType nl::Weave::Profiles::DataManagement_Current::CircularEventBuffer::mImportance

Buffer adalah bucket terakhir untuk peristiwa dengan tingkat kepentingan ini.

Peristiwa yang kurang penting akan dihapus saat berada di luar buffer ini

mLastEventID

event_id_t nl::Weave::Profiles::DataManagement_Current::CircularEventBuffer::mLastEventID

ID peristiwa terakhir ditujukan untuk nilai penting ini.

mLastEventTimestamp

timestamp_t nl::Weave::Profiles::DataManagement_Current::CircularEventBuffer::mLastEventTimestamp

Stempel waktu peristiwa terakhir dalam buffering ini.

mLastEventUTCTimestamp

utc_timestamp_t nl::Weave::Profiles::DataManagement_Current::CircularEventBuffer::mLastEventUTCTimestamp

Stempel waktu UTC dari peristiwa terakhir dalam buffering ini.

mNext

CircularEventBuffer * nl::Weave::Profiles::DataManagement_Current::CircularEventBuffer::mNext

Pointer CircularEventBuffer yang menyimpan peristiwa yang lebih penting.

mNonPersistedCounter

nl::Weave::MonotonicallyIncreasingCounter nl::Weave::Profiles::DataManagement_Current::CircularEventBuffer::mNonPersistedCounter

mPrev

CircularEventBuffer * nl::Weave::Profiles::DataManagement_Current::CircularEventBuffer::mPrev

Pointer CircularEventBuffer yang menyimpan peristiwa yang kurang penting.

mUTCInitialized

bool nl::Weave::Profiles::DataManagement_Current::CircularEventBuffer::mUTCInitialized

Menunjukkan apakah stempel waktu UTC diinisialisasi dalam buffering ini.

Fungsi publik

AddEvent

void nl::Weave::Profiles::DataManagement_Current::CircularEventBuffer::AddEvent(
  timestamp_t inEventTimestamp
)

Dengan mempertimbangkan stempel waktu peristiwa, hitung waktu delta yang akan disimpan dalam log.

Detail
Parameter
inEventTimestamp
Stempel waktu peristiwa.
Hasil
int32_t Delta waktu yang akan dienkode untuk peristiwa.

AddEventUTC

void nl::Weave::Profiles::DataManagement_Current::CircularEventBuffer::AddEventUTC(
  utc_timestamp_t inEventTimestamp
)

Dengan mempertimbangkan stempel waktu suatu peristiwa, hitung waktu delta utc yang akan disimpan dalam log.

Detail
Parameter
inEventTimestamp
Stempel waktu utc peristiwa
Hasil
int64_t Delta waktu yang akan dienkode untuk peristiwa.

CircularEventBuffer

 nl::Weave::Profiles::DataManagement_Current::CircularEventBuffer::CircularEventBuffer(
  uint8_t *inBuffer,
  size_t inBufferLength,
  CircularEventBuffer *inPrev,
  CircularEventBuffer *inNext
)

Konstruktor untuk CircularEventBuffer (API internal).

Detail
Parameter
[in] inBuffer
Penyimpanan sebenarnya yang digunakan untuk penyimpanan peristiwa.
[in] inBufferLength
Panjang inBuffer dalam byte.
[in] inPrev
Pointer ke CircularEventBuffer yang menyimpan peristiwa dengan prioritas lebih rendah.
[in] inNext
Pointer ke CircularEventBuffer yang menyimpan peristiwa yang memiliki prioritas lebih besar.
Hasil

IsFinalDestinationForImportance

bool nl::Weave::Profiles::DataManagement_Current::CircularEventBuffer::IsFinalDestinationForImportance(
  ImportanceType inImportance
) const 

Fungsi bantuan yang menentukan apakah peristiwa tingkat kepentingan yang ditentukan akan dihapus dari buffer ini.

Detail
Parameter
[in] inImportance
Pentingnya peristiwa.
Nilai Pengembalian
true
Peristiwa akan dihapus dari buffer ini sebagai akibat dari luapan antrean.
false
Acara tersebut akan ditempatkan pada antrean berikutnya.

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
)

Alokasikan ID peristiwa baru berdasarkan nilai penting peristiwa, dan lanjutkan penghitung jika ada.

Detail
Hasil
ID Peristiwa event_id_t untuk nilai penting ini.

Fungsi statis publik

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
)