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

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

nl::Weave::TLV::WeaveCircularTLVBuffer temel alınarak oluşturulan dahili etkinlik arabelleği.

Özet

Oluşturucular ve Yıkıcılar

CircularEventBuffer(uint8_t *inBuffer, size_t inBufferLength, CircularEventBuffer *inPrev, CircularEventBuffer *inNext)
CircularEventBuffer (dahili API) için bir oluşturucu.

Herkese açık özellikler

mBuffer
Etkinlikleri TLV temsilinde depolayan temel TLV arabelleği.
mEventIdCounter
mFirstEventID
Bu önem için günlük kaydı alt sisteminde depolanan ilk etkinlik kimliği.
mFirstEventTimestamp
Bu arabellekteki ilk etkinliğin zaman damgası.
mFirstEventUTCTimestamp
Bu arabellekteki ilk etkinliğin UTC zaman damgası.
mImportance
Tampon, bu önemdeki etkinlikler için son pakettir.
mLastEventID
Bu önem için verilen son etkinlik kimliği.
mLastEventTimestamp
Bu arabellekteki son etkinliğin zaman damgası.
mLastEventUTCTimestamp
Bu arabellekteki son etkinliğin UTC zaman damgası.
mNext
Daha önemli etkinlikleri depolayan bir CircularEventBuffer işaretçisi.
mNonPersistedCounter
mPrev
Daha az önemli etkinlikleri depolayan bir işaretçi CircularEventBuffer.
mUTCInitialized
bool
UTC zaman damgalarının bu arabellekte başlatılıp başlatılmadığını belirtir.

Kamu işlevleri

AddEvent(timestamp_t inEventTimestamp)
void
Bir olayın zaman damgasına göre, günlükte saklanacak delta zamanını hesaplayın.
AddEventUTC(utc_timestamp_t inEventTimestamp)
void
Bir olayın zaman damgasına göre, günlükte depolanacak delta utc süresini hesaplayın.
IsFinalDestinationForImportance(ImportanceType inImportance) const
bool
Belirtilen önemdeki etkinliğin bu arabelleğe alınıp atılmayacağını belirleyen yardımcı bir işlev.
LoadEvents(TLVReader & reader)
RemoveEvent(size_t aNumEvents)
void
SerializeEvents(TLVWriter & writer)
VendEventID(void)
Etkinliğin önem derecesine göre yeni bir etkinlik kimliği ayırın ve varsa sayacı ilerletin.

Herkese açık statik işlevler

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

Herkese açık özellikler

mBuffer

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

Etkinlikleri TLV temsilinde depolayan temel TLV arabelleği.

mEventIdCounter

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

mFirstEventID

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

Bu önem için günlük kaydı alt sisteminde depolanan ilk etkinlik kimliği.

mFirstEventTimestamp

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

Bu arabellekteki ilk etkinliğin zaman damgası.

mFirstEventUTCTimestamp

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

Bu arabellekteki ilk etkinliğin UTC zaman damgası.

mImportance

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

Tampon, bu önemdeki etkinlikler için son pakettir.

Önem derecesi düşük olan etkinlikler bu tampondan çıktığında atlanır

mLastEventID

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

Bu önem için verilen son etkinlik kimliği.

mLastEventTimestamp

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

Bu arabellekteki son etkinliğin zaman damgası.

mLastEventUTCTimestamp

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

Bu arabellekteki son etkinliğin UTC zaman damgası.

mNext

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

Daha önemli etkinlikleri depolayan bir CircularEventBuffer işaretçisi.

mNonPersistedCounter

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

mPrev

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

Daha az önemli etkinlikleri depolayan bir işaretçi CircularEventBuffer.

mUTCInitialized

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

UTC zaman damgalarının bu arabellekte başlatılıp başlatılmadığını belirtir.

Kamu işlevleri

AddEvent

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

Bir olayın zaman damgasına göre, günlükte saklanacak delta zamanını hesaplayın.

Ayrıntılar
Parametreler
inEventTimestamp
Etkinlik zaman damgası.
İadeler
int32_t Etkinliğin kodlanacağı zaman deltası.

AddEventUTC

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

Bir olayın zaman damgasına göre, günlükte depolanacak delta utc süresini hesaplayın.

Ayrıntılar
Parametreler
inEventTimestamp
Etkinliğin utc zaman damgası
İadeler
int64_t Etkinliğin kodlanacağı zaman deltası.

CircularEventBuffer

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

CircularEventBuffer (dahili API) için bir oluşturucu.

Ayrıntılar
Parametreler
[in] inBuffer
Etkinlik depolama alanı için kullanılacak gerçek depolama alanı.
[in] inBufferLength
inBuffer öğesinin bayt cinsinden uzunluğu.
[in] inPrev
Daha düşük önceliğe sahip etkinlikleri depolayan CircularEventBuffer işaretçisi.
[in] inNext
Daha yüksek önceliğe sahip etkinlikleri depolayan CircularEventBuffer işaretçisi.
İadeler

IsFinalDestinationForImportance

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

Belirtilen önemdeki etkinliğin bu arabelleğe alınıp atılmayacağını belirleyen yardımcı bir işlev.

Ayrıntılar
Parametreler
[in] inImportance
Etkinliğin önemi.
Döndürülen Değerler
true
Etkinlik, sıra taşması nedeniyle bu arabellekten çıkarılır.
false
Etkinlik bir sonraki sıraya alınır.

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
)

Etkinliğin önem derecesine göre yeni bir etkinlik kimliği ayırın ve varsa sayacı ilerletin.

Ayrıntılar
İadeler
event_id_t Bu önem için etkinlik kimliği.

Herkese açık statik işlevler

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
)