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

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

Buffer de evento interno, criado em torno de nl::Weave::TLV::WeaveCircularTLVBuffer.

Resumo

Construtores e destruidores

CircularEventBuffer(uint8_t *inBuffer, size_t inBufferLength, CircularEventBuffer *inPrev, CircularEventBuffer *inNext)
Um construtor para o CircularEventBuffer (API interna).

Atributos públicos

mBuffer
O buffer TLV subjacente que armazena os eventos em uma representação TLV.
mEventIdCounter
mFirstEventID
Primeiro ID do evento armazenado no subsistema de geração de registros para essa importância.
mFirstEventTimestamp
O carimbo de data/hora do primeiro evento neste buffer.
mFirstEventUTCTimestamp
O carimbo de data/hora em UTC do primeiro evento neste buffer.
mImportance
O buffer é o bucket final para eventos dessa importância.
mLastEventID
Último ID de evento vendido para essa importância.
mLastEventTimestamp
O carimbo de data/hora do último evento neste buffer.
mLastEventUTCTimestamp
O carimbo de data/hora em UTC do último evento neste buffer.
mNext
Um ponteiro CircularEventBuffer que armazena eventos mais importantes.
mNonPersistedCounter
mPrev
Um ponteiro CircularEventBuffer que armazena eventos menos importantes.
mUTCInitialized
bool
Indica se os carimbos de data/hora UTC são inicializados nesse buffer.

Funções públicas

AddEvent(timestamp_t inEventTimestamp)
void
Dado o carimbo de data/hora de um evento, calcule o tempo delta para armazenar no registro.
AddEventUTC(utc_timestamp_t inEventTimestamp)
void
Dado o carimbo de data/hora de um evento, calcule o tempo delta utc para armazenar no registro.
IsFinalDestinationForImportance(ImportanceType inImportance) const
bool
Uma função auxiliar que determina se o evento de importância especificada é descartado desse buffer.
LoadEvents(TLVReader & reader)
RemoveEvent(size_t aNumEvents)
void
SerializeEvents(TLVWriter & writer)
VendEventID(void)
Aloque um novo ID de evento com base na importância do evento e avance o contador se houver um.

Funções estáticas públicas

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

Atributos públicos

mBuffer

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

O buffer TLV subjacente que armazena os eventos em uma representação TLV.

mEventIdCounter

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

mFirstEventID

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

Primeiro ID do evento armazenado no subsistema de geração de registros para essa importância.

mFirstEventTimestamp

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

O carimbo de data/hora do primeiro evento neste buffer.

mFirstEventUTCTimestamp

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

O carimbo de data/hora em UTC do primeiro evento neste buffer.

mImportance

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

O buffer é o bucket final para eventos dessa importância.

Eventos de menor importância são descartados ao serem retirados desse buffer

mLastEventID

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

Último ID de evento vendido para essa importância.

mLastEventTimestamp

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

O carimbo de data/hora do último evento neste buffer.

mLastEventUTCTimestamp

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

O carimbo de data/hora em UTC do último evento neste buffer.

mNext

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

Um ponteiro CircularEventBuffer que armazena eventos mais importantes.

mNonPersistedCounter

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

mPrev

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

Um ponteiro CircularEventBuffer que armazena eventos menos importantes.

mUTCInitialized

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

Indica se os carimbos de data/hora UTC são inicializados nesse buffer.

Funções públicas

AddEvent

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

Dado o carimbo de data/hora de um evento, calcule o tempo delta para armazenar no registro.

Detalhes
Parâmetros
inEventTimestamp
O carimbo de data/hora do evento.
Retornos
int32_t Delta de tempo a ser codificado para o evento.

AddEventUTC

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

Dado o carimbo de data/hora de um evento, calcule o tempo delta utc para armazenar no registro.

Detalhes
Parâmetros
inEventTimestamp
Carimbo de data/hora da utc do evento
Retornos
int64_t Delta de tempo a ser codificado para o evento.

CircularEventBuffer

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

Um construtor para o CircularEventBuffer (API interna).

Detalhes
Parâmetros
[in] inBuffer
O armazenamento real a ser usado para armazenamento de eventos.
[in] inBufferLength
O tamanho do inBuffer em bytes.
[in] inPrev
O ponteiro para CircularEventBuffer armazenando eventos de menor prioridade.
[in] inNext
O ponteiro para CircularEventBuffer armazenando eventos de maior prioridade.
Retornos

IsFinalDestinationForImportance

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

Uma função auxiliar que determina se o evento de importância especificada é descartado desse buffer.

Detalhes
Parâmetros
[in] inImportance
A importância do evento.
Valores de retorno
true
O evento será descartado desse buffer como resultado de um estouro da fila.
false
O evento será enviado para a próxima fila.

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
)

Aloque um novo ID de evento com base na importância do evento e avance o contador se houver um.

Detalhes
Retornos
event_id_t ID do evento para essa importância.

Funções estáticas públicas

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
)