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

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

บัฟเฟอร์เหตุการณ์ภายในซึ่งสร้างขึ้นรอบๆ nl::Weave::TLV::WeaveCircularTLVBuffer

สรุป

ผู้ผลิตและผู้ทำลาย

CircularEventBuffer(uint8_t *inBuffer, size_t inBufferLength, CircularEventBuffer *inPrev, CircularEventBuffer *inNext)
ตัวสร้างสำหรับ CircularEventBuffer (API ภายใน)

แอตทริบิวต์สาธารณะ

mBuffer
บัฟเฟอร์ TLV ที่สำคัญซึ่งจัดเก็บเหตุการณ์ในรูปแบบ TLV
mEventIdCounter
mFirstEventID
รหัสเหตุการณ์แรกที่จัดเก็บไว้ในระบบย่อยการบันทึกสําหรับความสำคัญนี้
mFirstEventTimestamp
การประทับเวลาของเหตุการณ์แรกในบัฟเฟอร์นี้
mFirstEventUTCTimestamp
การประทับเวลา UTC ของเหตุการณ์แรกในบัฟเฟอร์นี้
mImportance
บัฟเฟอร์คือที่เก็บข้อมูลสุดท้ายสำหรับเหตุการณ์ที่มีความสำคัญนี้
mLastEventID
รหัสเหตุการณ์ล่าสุดที่ใช้กับความสำคัญนี้
mLastEventTimestamp
การประทับเวลาของเหตุการณ์สุดท้ายในบัฟเฟอร์นี้
mLastEventUTCTimestamp
การประทับเวลา UTC ของเหตุการณ์ล่าสุดในบัฟเฟอร์นี้
mNext
ตัวชี้ CircularEventBuffer ที่จัดเก็บเหตุการณ์สําคัญกว่า
mNonPersistedCounter
mPrev
ตัวชี้ CircularEventBuffer ที่จัดเก็บเหตุการณ์ที่ไม่สําคัญ
mUTCInitialized
bool
ระบุว่าการประทับเวลา UTC เริ่มต้นในบัฟเฟอร์นี้หรือไม่

ฟังก์ชันสาธารณะ

AddEvent(timestamp_t inEventTimestamp)
void
คำนวณเวลาเดลต้าที่จะจัดเก็บไว้ในบันทึกโดยพิจารณาจากการประทับเวลาของเหตุการณ์
AddEventUTC(utc_timestamp_t inEventTimestamp)
void
คำนวณเวลาเดลต้า utc เพื่อจัดเก็บในบันทึกโดยพิจารณาจากการประทับเวลาของเหตุการณ์
IsFinalDestinationForImportance(ImportanceType inImportance) const
bool
ฟังก์ชันตัวช่วยที่กำหนดว่าเหตุการณ์ที่มีความสำคัญที่ระบุจะหายไปจากบัฟเฟอร์นี้หรือไม่
LoadEvents(TLVReader & reader)
RemoveEvent(size_t aNumEvents)
void
SerializeEvents(TLVWriter & writer)
VendEventID(void)
จัดสรรรหัสกิจกรรมใหม่ตามความสำคัญของเหตุการณ์ และยื่นเรื่องโต้แย้งหากมี

ฟังก์ชันแบบคงที่แบบสาธารณะ

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

แอตทริบิวต์สาธารณะ

mBuffer

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

บัฟเฟอร์ TLV ที่สำคัญซึ่งจัดเก็บเหตุการณ์ในรูปแบบ TLV

mEventIdCounter

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

mFirstEventID

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

รหัสเหตุการณ์แรกที่จัดเก็บไว้ในระบบย่อยการบันทึกสําหรับความสำคัญนี้

mFirstEventTimestamp

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

การประทับเวลาของเหตุการณ์แรกในบัฟเฟอร์นี้

mFirstEventUTCTimestamp

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

การประทับเวลา UTC ของเหตุการณ์แรกในบัฟเฟอร์นี้

mImportance

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

บัฟเฟอร์คือที่เก็บข้อมูลสุดท้ายสำหรับเหตุการณ์ที่มีความสำคัญนี้

เหตุการณ์ที่มีความสำคัญน้อยกว่าจะหายไปเมื่อหลุดออกจากบัฟเฟอร์นี้

mLastEventID

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

รหัสเหตุการณ์ล่าสุดที่ใช้กับความสำคัญนี้

mLastEventTimestamp

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

การประทับเวลาของเหตุการณ์สุดท้ายในบัฟเฟอร์นี้

mLastEventUTCTimestamp

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

การประทับเวลา UTC ของเหตุการณ์ล่าสุดในบัฟเฟอร์นี้

mNext

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

ตัวชี้ CircularEventBuffer ที่จัดเก็บเหตุการณ์สําคัญกว่า

mNonPersistedCounter

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

mPrev

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

ตัวชี้ CircularEventBuffer ที่จัดเก็บเหตุการณ์ที่ไม่สําคัญ

mUTCInitialized

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

ระบุว่าการประทับเวลา UTC เริ่มต้นในบัฟเฟอร์นี้หรือไม่

ฟังก์ชันสาธารณะ

AddEvent

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

คำนวณเวลาเดลต้าที่จะจัดเก็บไว้ในบันทึกโดยพิจารณาจากการประทับเวลาของเหตุการณ์

รายละเอียด
พารามิเตอร์
inEventTimestamp
การประทับเวลาเหตุการณ์
การส่งคืน
int32_t เดลต้าเวลาที่จะเข้ารหัสสำหรับกิจกรรม

AddEventUTC

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

คำนวณเวลาเดลต้า utc เพื่อจัดเก็บในบันทึกโดยพิจารณาจากการประทับเวลาของเหตุการณ์

รายละเอียด
พารามิเตอร์
inEventTimestamp
การประทับเวลา utc ของเหตุการณ์
การส่งคืน
int64_t เดลต้าเวลาที่จะเข้ารหัสสำหรับกิจกรรม

CircularEventBuffer

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

ตัวสร้างสำหรับ CircularEventBuffer (API ภายใน)

รายละเอียด
พารามิเตอร์
[in] inBuffer
พื้นที่เก็บข้อมูลจริงที่จะใช้เป็นพื้นที่เก็บข้อมูลกิจกรรม
[in] inBufferLength
ความยาวของ inBuffer ในหน่วยไบต์
[in] inPrev
ตัวชี้ไปยัง CircularEventBuffer ที่จัดเก็บเหตุการณ์ที่มีลําดับความสําคัญน้อยกว่า
[in] inNext
ตัวชี้ไปยัง CircularEventBuffer ซึ่งจัดเก็บเหตุการณ์ที่มีลําดับความสําคัญมากกว่า
การส่งคืน

IsFinalDestinationForImportance

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

ฟังก์ชันตัวช่วยที่กำหนดว่าเหตุการณ์ที่มีความสำคัญที่ระบุจะหายไปจากบัฟเฟอร์นี้หรือไม่

รายละเอียด
พารามิเตอร์
[in] inImportance
ความสำคัญของเหตุการณ์
แสดงผลค่า
true
เหตุการณ์จะถูกตัดออกจากบัฟเฟอร์นี้เนื่องจากโอเวอร์ของคิว
false
ระบบจะเพิ่มกิจกรรมไปยังคิวถัดไป

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
)

จัดสรรรหัสกิจกรรมใหม่ตามความสำคัญของเหตุการณ์ และยื่นเรื่องโต้แย้งหากมี

รายละเอียด
การส่งคืน
event_id_t รหัสเหตุการณ์สำหรับความสำคัญนี้

ฟังก์ชันแบบคงที่แบบสาธารณะ

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
)