nl:: örgü:: Profiller:: DataManagement_Current:: DaireselEtkinlikTampon

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

Etrafında inşa İç olay tampon, nl :: Dokuma :: TLV :: WeaveCircularTLVBuffer .

Özet

Yapıcılar ve Yıkıcılar

CircularEventBuffer (uint8_t *inBuffer, size_t inBufferLength, CircularEventBuffer *inPrev, CircularEventBuffer *inNext)
İçin Bir yapıcı CircularEventBuffer (iç API).

Genel özellikler

mBuffer
Temel TLV bir olayları saklama tampon TLV temsili.
mEventIdCounter
mFirstEventID
Bu önem için günlük kaydı alt sisteminde depolanan ilk olay kimliği.
mFirstEventTimestamp
Bu arabellekteki ilk olayın zaman damgası.
mFirstEventUTCTimestamp
Bu arabellekteki ilk olayın UTC zaman damgası.
mImportance
Tampon, bu öneme sahip olaylar için son kovadır.
mLastEventID
Son etkinlik kimliği bu önem için satıldı.
mLastEventTimestamp
Bu arabellekteki son olayın zaman damgası.
mLastEventUTCTimestamp
Bu arabellekteki son olayın UTC zaman damgası.
mNext
Bir işaretçi CircularEventBuffer Olayları önemli olayları depolanması.
mNonPersistedCounter
mPrev
Bir işaretçi CircularEventBuffer olayları daha az önemli olayları depolanması.
mUTCInitialized
bool
UTC zaman damgalarının bu arabellekte başlatılıp başlatılmadığını gösterir.

Kamu işlevleri

AddEvent ( timestamp_t inEventTimestamp)
void
Bir olayın zaman damgası verildiğinde, günlükte depolanacak delta süresini hesaplayın.
AddEventUTC ( utc_timestamp_t inEventTimestamp)
void
Bir olayın zaman damgası verildiğinde, günlükte depolanacak delta utc zamanını hesaplayın.
IsFinalDestinationForImportance ( ImportanceType inImportance) const
bool
Belirtilen öneme sahip olayın bu arabellekten düşüp düşmediğini belirleyen bir yardımcı işlev.
LoadEvents (TLVReader & reader)
RemoveEvent (size_t aNumEvents)
void
SerializeEvents (TLVWriter & writer)
VendEventID (void)
Olay önemine göre yeni bir olay kimliği tahsis edin ve varsa sayacı ilerletin.

Genel statik işlevler

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

Genel özellikler

mTampon

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

Temel TLV bir olayları saklama tampon TLV temsili.

mEventIdSayacı

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 olay kimliği.

mFirstEventZaman Damgası

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

Bu arabellekteki ilk olayın zaman damgası.

mFirstEventUTCZaman damgası

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

Bu arabellekteki ilk olayın UTC zaman damgası.

mÖnem

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

Tampon, bu öneme sahip olaylar için son kovadır.

Daha az öneme sahip olaylar, bu arabellekten çıktıklarında düşer

mLastEventID

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

Son etkinlik kimliği bu önem için satıldı.

mLastEventZaman Damgası

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

Bu arabellekteki son olayın zaman damgası.

mLastEventUTCZaman damgası

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

Bu arabellekteki son olayın UTC zaman damgası.

mSonraki

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

Bir işaretçi CircularEventBuffer Olayları önemli olayları depolanması.

mSürekli OlmayanSayaç

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

mÖnceki

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

Bir işaretçi CircularEventBuffer olayları daha az önemli olayları depolanması.

mUTCIbaşlatıldı

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

UTC zaman damgalarının bu arabellekte başlatılıp başlatılmadığını gösterir.

Kamu işlevleri

Etkinlik ekle

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

Bir olayın zaman damgası verildiğinde, günlükte depolanacak delta süresini hesaplayın.

Ayrıntılar
parametreler
inEventTimestamp
Etkinlik zaman damgası.
İadeler
int32_t Olay için kodlanacak zaman deltası.

AddEventUTC

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

Bir olayın zaman damgası verildiğinde, günlükte depolanacak delta utc zamanını hesaplayın.

Ayrıntılar
parametreler
inEventTimestamp
Etkinliğin utc zaman damgası
İadeler
int64_t Olay için kodlanacak zaman deltası.

DaireselEtkinlikTampon

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

İçin Bir yapıcı CircularEventBuffer (iç API).

Ayrıntılar
parametreler
[in] inBuffer
Olay depolama için kullanılacak gerçek depolama.
[in] inBufferLength
Uzunluğu inBuffer bayt.
[in] inPrev
İşaretçi CircularEventBuffer az öncelikli olayların depolanması.
[in] inNext
İşaretçi CircularEventBuffer daha öncelikli olayların depolanması.
İadeler

Önem İçin Son Varış Noktası

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

Belirtilen önemdeki olayın bu arabellekten düşüp düşmediğini belirleyen bir yardımcı işlev.

Ayrıntılar
parametreler
[in] inImportance
Olayın önemi.
Dönüş Değerleri
true
Kuyruk taşması nedeniyle olay bu arabellekten düşürülecek.
false
Etkinlik bir sonraki kuyruğa çarpılacaktı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
)

Olayları Serileştir

WEAVE_ERROR nl::Weave::Profiles::DataManagement_Current::CircularEventBuffer::SerializeEvents(
  TLVWriter & writer
)

VendEventKimliği

event_id_t nl::Weave::Profiles::DataManagement_Current::CircularEventBuffer::VendEventID(
  void
)

Olay önemine göre yeni bir olay kimliği tahsis edin ve varsa sayacı ilerletin.

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

Genel 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
)