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 di subsistem logging untuk tingkat kepentingan ini.
mFirstEventTimestamp
Stempel waktu peristiwa pertama dalam buffer ini.
mFirstEventUTCTimestamp
Stempel waktu UTC di peristiwa pertama dalam buffer ini.
mImportance
Buffer adalah bucket akhir untuk peristiwa dengan kepentingan ini.
mLastEventID
ID peristiwa terakhir yang disediakan untuk tingkat kepentingan ini.
mLastEventTimestamp
Stempel waktu peristiwa terakhir dalam buffer ini.
mLastEventUTCTimestamp
Stempel waktu UTC peristiwa terakhir dalam buffer ini.
mNext
Pointer CircularEventBuffer yang menyimpan peristiwa ke peristiwa yang lebih penting.
mNonPersistedCounter
mPrev
Pointer CircularEventBuffer yang menyimpan peristiwa yang kurang penting.
mUTCInitialized
bool
Menunjukkan apakah stempel waktu UTC diinisialisasi dalam buffer ini.

Fungsi publik

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

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 di subsistem logging untuk tingkat kepentingan ini.

mFirstEventTimestamp

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

Stempel waktu peristiwa pertama dalam buffer ini.

mFirstEventUTCTimestamp

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

Stempel waktu UTC di peristiwa pertama dalam buffer ini.

mImportance

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

Buffer adalah bucket akhir untuk peristiwa dengan kepentingan ini.

Peristiwa yang kurang penting akan dihapus saat dipindahkan dari buffer ini

mLastEventID

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

ID peristiwa terakhir yang disediakan untuk tingkat kepentingan ini.

mLastEventTimestamp

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

Stempel waktu peristiwa terakhir dalam buffer ini.

mLastEventUTCTimestamp

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

Stempel waktu UTC peristiwa terakhir dalam buffer ini.

mNext

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

Pointer CircularEventBuffer yang menyimpan peristiwa ke 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 buffer 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 di log.

Detail
Parameter
inEventTimestamp
Stempel waktu peristiwa.
Hasil
int32_t Delta waktu untuk mengenkode peristiwa.

AddEventUTC

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

Dengan mempertimbangkan stempel waktu peristiwa, hitung waktu delta utc untuk disimpan di log.

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

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 akan digunakan untuk penyimpanan peristiwa.
[in] inBufferLength
Panjang inBuffer dalam byte.
[in] inPrev
Pointer ke CircularEventBuffer yang menyimpan peristiwa dengan prioritas yang lebih rendah.
[in] inNext
Pointer ke CircularEventBuffer yang menyimpan peristiwa dengan prioritas yang lebih besar.
Hasil

IsFinalDestinationForImportance

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

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

Detail
Parameter
[in] inImportance
Pentingnya peristiwa.
Nilai yang Ditampilkan
true
Peristiwa akan dihapus dari buffer ini sebagai akibat dari kelebihan antrean.
false
Acara tersebut akan dipindahkan ke 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 tingkat kepentingan peristiwa, dan majukan penghitung jika kita memilikinya.

Detail
Hasil
event_id_t untuk tingkat kepentingan 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
)