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
|
|
mEventIdCounter
|
|
mFirstEventID
|
이 중요도의 로깅 하위 시스템에 저장되는 첫 번째 이벤트 ID입니다.
|
mFirstEventTimestamp
|
이 버퍼에 있는 첫 번째 이벤트의 타임스탬프입니다.
|
mFirstEventUTCTimestamp
|
이 버퍼에 있는 첫 번째 이벤트의 UTC 타임스탬프입니다.
|
mImportance
|
버퍼는 이 중요한 이벤트의 최종 버킷입니다.
|
mLastEventID
|
이 중요도에 대해 전송된 마지막 이벤트 ID입니다.
|
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)
|
이벤트 중요도에 따라 새 이벤트 ID를 할당하고, 있는 경우 카운터를 진행합니다.
|
공개 정적 함수 |
|
---|---|
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
mEventIdCounter
nl::Weave::MonotonicallyIncreasingCounter * nl::Weave::Profiles::DataManagement_Current::CircularEventBuffer::mEventIdCounter
mFirstEventID
event_id_t nl::Weave::Profiles::DataManagement_Current::CircularEventBuffer::mFirstEventID
이 중요도의 로깅 하위 시스템에 저장되는 첫 번째 이벤트 ID입니다.
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
이 중요도에 대해 전송된 마지막 이벤트 ID입니다.
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 )
이벤트의 타임스탬프가 주어지면 로그에 저장할 델타 시간을 계산합니다.
세부정보 | |||
---|---|---|---|
매개변수 |
|
||
반환 |
int32_t 이벤트를 인코딩할 시간 델타입니다.
|
AddEventUTC
void nl::Weave::Profiles::DataManagement_Current::CircularEventBuffer::AddEventUTC( utc_timestamp_t inEventTimestamp )
이벤트의 타임스탬프가 주어지면 로그에 저장할 델타 utc 시간을 계산합니다.
세부정보 | |||
---|---|---|---|
매개변수 |
|
||
반환 |
int64_t 이벤트를 인코딩할 시간 델타입니다.
|
CircularEventBuffer
nl::Weave::Profiles::DataManagement_Current::CircularEventBuffer::CircularEventBuffer( uint8_t *inBuffer, size_t inBufferLength, CircularEventBuffer *inPrev, CircularEventBuffer *inNext )
CircularEventBuffer (내부 API)의 생성자입니다.
세부정보 | |||||||||
---|---|---|---|---|---|---|---|---|---|
매개변수 |
|
||||||||
반환 |
IsFinalDestinationForImportance
bool nl::Weave::Profiles::DataManagement_Current::CircularEventBuffer::IsFinalDestinationForImportance( ImportanceType inImportance ) const
지정된 중요도의 이벤트를 이 버퍼에서 삭제할지 여부를 결정하는 도우미 함수입니다.
세부정보 | |||||
---|---|---|---|---|---|
매개변수 |
|
||||
반환 값 |
|
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 )
이벤트 중요도에 따라 새 이벤트 ID를 할당하고, 있는 경우 카운터를 진행합니다.
세부정보 | |
---|---|
반환 |
event_id_t 이 중요도의 이벤트 ID입니다.
|
공개 정적 함수
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 )