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

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

Wewnętrzny bufor zdarzeń oparty na tagu nl::Weave::TLV::WeaveCircularTLVBuffer.

Podsumowanie

Konstruktory i niszczyciele

CircularEventBuffer(uint8_t *inBuffer, size_t inBufferLength, CircularEventBuffer *inPrev, CircularEventBuffer *inNext)
Konstruktor CircularEventBuffer (wewnętrzny interfejs API).

Atrybuty publiczne

mBuffer
Bazowy bufor TLV, w którym zdarzenia są przechowywane w formacie TLV.
mEventIdCounter
mFirstEventID
Pierwszy identyfikator zdarzenia zapisany w podsystemie logowania na potrzeby tego znaczenia.
mFirstEventTimestamp
Sygnatura czasowa pierwszego zdarzenia w tym buforze.
mFirstEventUTCTimestamp
Sygnatura czasowa UTC pierwszego zdarzenia w tym buforze.
mImportance
Bufor to ostatni zasobnik dla zdarzeń o tak dużym znaczeniu.
mLastEventID
Ostatni identyfikator zdarzenia o tym znaczeniu.
mLastEventTimestamp
Sygnatura czasowa ostatniego zdarzenia w tym buforze.
mLastEventUTCTimestamp
Sygnatura czasowa UTC ostatniego zdarzenia w tym buforze.
mNext
Wskaźnik CircularEventBuffer przechowujący zdarzenia ważniejsze.
mNonPersistedCounter
mPrev
Wskaźnik CircularEventBuffer przechowujący mniej ważne zdarzenia.
mUTCInitialized
bool
Wskazuje, czy sygnatury czasowe UTC są inicjowane w tym buforze.

Funkcje publiczne

AddEvent(timestamp_t inEventTimestamp)
void
Biorąc pod uwagę sygnaturę czasową zdarzenia, oblicz czas delta do zapisania w dzienniku.
AddEventUTC(utc_timestamp_t inEventTimestamp)
void
Biorąc pod uwagę sygnaturę czasową zdarzenia, oblicz czas delta do zapisania w dzienniku.
IsFinalDestinationForImportance(ImportanceType inImportance) const
bool
Funkcja pomocnicza, która określa, czy zdarzenie o określonym znaczeniu jest pomijane z tego bufora.
LoadEvents(TLVReader & reader)
RemoveEvent(size_t aNumEvents)
void
SerializeEvents(TLVWriter & writer)
VendEventID(void)
Przydziel nowy identyfikator wydarzenia na podstawie jego ważności i przesuń licznik zdarzeń, jeśli taki jest.

Publiczne funkcje statyczne

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

Atrybuty publiczne

mBuffer

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

Bazowy bufor TLV, w którym zdarzenia są przechowywane w formacie TLV.

mEventIdCounter

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

mFirstEventID

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

Pierwszy identyfikator zdarzenia zapisany w podsystemie logowania na potrzeby tego znaczenia.

mFirstEventTimestamp

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

Sygnatura czasowa pierwszego zdarzenia w tym buforze.

mFirstEventUTCTimestamp

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

Sygnatura czasowa UTC pierwszego zdarzenia w tym buforze.

mImportance

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

Bufor to ostatni zasobnik dla zdarzeń o tak dużym znaczeniu.

Zdarzenia o mniejszym znaczeniu są pomijane po zamknięciu tego bufora

mLastEventID

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

Ostatni identyfikator zdarzenia o tym znaczeniu.

mLastEventTimestamp

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

Sygnatura czasowa ostatniego zdarzenia w tym buforze.

mLastEventUTCTimestamp

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

Sygnatura czasowa UTC ostatniego zdarzenia w tym buforze.

mNext

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

Wskaźnik CircularEventBuffer przechowujący zdarzenia ważniejsze.

mNonPersistedCounter

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

mPrev

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

Wskaźnik CircularEventBuffer przechowujący mniej ważne zdarzenia.

mUTCInitialized

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

Wskazuje, czy sygnatury czasowe UTC są inicjowane w tym buforze.

Funkcje publiczne

AddEvent

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

Biorąc pod uwagę sygnaturę czasową zdarzenia, oblicz czas delta do zapisania w dzienniku.

Szczegóły
Parametry
inEventTimestamp
Sygnatura czasowa zdarzenia.
Zwroty
int32_t Różnica czasu do zakodowania zdarzenia.

AddEventUTC

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

Biorąc pod uwagę sygnaturę czasową zdarzenia, oblicz czas delta do zapisania w dzienniku.

Szczegóły
Parametry
inEventTimestamp
Sygnatura czasowa utc zdarzenia
Zwroty
int64_t Różnica czasu do zakodowania zdarzenia.

CircularEventBuffer

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

Konstruktor CircularEventBuffer (wewnętrzny interfejs API).

Szczegóły
Parametry
[in] inBuffer
Rzeczywiste miejsce na dane wydarzeń.
[in] inBufferLength
Długość elementu inBuffer w bajtach.
[in] inPrev
Wskaźnik do CircularEventBuffer przechowującego zdarzenia o niższym priorytecie.
[in] inNext
Wskaźnik do CircularEventBuffer, w którym są przechowywane zdarzenia o wyższym priorytecie.
Zwroty

IsFinalDestinationForImportance

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

Funkcja pomocnicza, która określa, czy zdarzenie o określonym znaczeniu jest pomijane z tego bufora.

Szczegóły
Parametry
[in] inImportance
Znaczenie zdarzenia.
Zwracane wartości
true
Zdarzenie zostanie usunięte z tego bufora z powodu przepełnienia kolejki.
false
Zdarzenie zostanie przeniesione do następnej kolejki.

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
)

Przydziel nowy identyfikator wydarzenia na podstawie jego ważności i przesuń licznik zdarzeń, jeśli taki jest.

Szczegóły
Zwroty
event_id_t – identyfikator zdarzenia o tym znaczeniu.

Publiczne funkcje statyczne

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
)