nl:: Weave:: 프로필:: ReferencedTLVData
#include <src/lib/profiles/common/WeaveMessage.h>
마찬가지로 TLV 데이터의 대규모 이전 blob을 나타낼 수 있어야 합니다.
요약
상속
상속 위치: nl::Weave::Profiles::RetainedPacketBuffer
생성자 및 소멸자 |
|
---|---|
ReferencedTLVData(void)
--T----------의 TLV 데이터 정의 --------------
|
공개 유형 |
|
---|---|
TLVWriteCallback)(TLV::TLVWriter &aWriter, void *aAppState)
|
typedefvoid(*
|
공개 속성 |
|
---|---|
theData
|
uint8_t *
|
theLength
|
uint16_t
|
theMaxLength
|
uint16_t
|
공개 함수 |
|
---|---|
free(void)
|
void
ReferencedTLVData 객체를 해제합니다. 즉, 이를 정의 해제합니다.
|
init(System::PacketBuffer *aBuffer)
|
PacketBuffer가 제공되는 ReferencedTLVData 객체를 초기화합니다.
|
init(MessageIterator & i)
|
MessageIterator가 지정된 ReferencedTLVData 객체를 초기화합니다.
|
init(uint16_t aLength, uint16_t aMaxLength, uint8_t *aByteString)
|
바이트 문자열이 지정된 ReferencedTLVObject를 초기화합니다.
|
init(TLVWriteCallback aWriteCallback, void *anAppState)
|
콜백 함수가 지정된 RefererencedTLVData 객체를 초기화합니다.
|
isEmpty(void)
|
bool
ReferencedTLVData 객체에 아무것도 없는지 확인합니다.
|
isFree(void)
|
bool
ReferencedTLVData 객체가 "free"인지 확인합니다.
|
operator==(const ReferencedTLVData &) const
|
bool
ReferencedTLVData 객체를 서로 비교하여 동등성을 확인합니다.
|
pack(System::PacketBuffer *buff)
|
ReferencedTLVData 객체를 PacketBuffer로 직접 패킹합니다.
|
pack(MessageIterator & i, uint32_t maxLen)
|
|
packedLength(void)
|
uint16_t
객체가 버퍼에 패키징되었다고 가정하고 데이터 길이를 반환합니다.
|
공개 정적 함수 |
|
---|---|
parse(System::PacketBuffer *buff, ReferencedTLVData & aTarget)
|
제공된 PacketBuffer에서 ReferencedTLVData 객체를 파싱합니다.
|
parse(MessageIterator & i, ReferencedTLVData & aTarget)
|
제공된 MessageIterator에서 ReferencedTLVData 객체를 파싱합니다.
|
공개 유형
TLVWriteCallback
void(* TLVWriteCallback)(TLV::TLVWriter &aWriter, void *aAppState)
공개 속성
데이터
uint8_t * theData
길이
uint16_t theLength
최대 길이
uint16_t theMaxLength
공개 함수
참조된 LVLV
ReferencedTLVData( void )
init
WEAVE_ERROR init( System::PacketBuffer *aBuffer )
PacketBuffer가 제공되는 ReferencedTLVData 객체를 초기화합니다.
버퍼가 TLV로 가득 찬 경우 ReferencedTLVData 객체를 초기화합니다. 이때 버퍼에는 TLV만 포함되어 있다고 가정합니다.
세부정보 | |||
---|---|---|---|
매개변수 |
|
||
반환 값 |
|
init
WEAVE_ERROR init( MessageIterator & i )
MessageIterator가 지정된 ReferencedTLVData 객체를 초기화합니다.
MessageIterator가 지정된 ReferencedTLVData 객체를 초기화합니다. 이 경우 TLV는 버퍼의 마지막 부분이며, 버퍼를 가리키는 메시지 반복자를 전달합니다.
세부정보 | |||
---|---|---|---|
매개변수 |
|
||
반환 값 |
|
init
WEAVE_ERROR init( uint16_t aLength, uint16_t aMaxLength, uint8_t *aByteString )
바이트 문자열이 지정된 ReferencedTLVObject를 초기화합니다.
TLV가 포함된 바이트 문자열을 사용하여 ReferencedTLVData 객체를 초기화합니다. 이 이니셜라이저가 PacketrBuffer가 없는 경우 사용하는 메서드입니다. 이 중 하나를 패키징하여 전송할 수 있기 때문입니다.
세부정보 | |||||||
---|---|---|---|---|---|---|---|
매개변수 |
|
||||||
반환 값 |
|
init
WEAVE_ERROR init( TLVWriteCallback aWriteCallback, void *anAppState )
콜백 함수가 지정된 RefererencedTLVData 객체를 초기화합니다.
ReferencedTLVData 객체를 초기화합니다. 이 버전은 데이터를 명시적으로 제공하는 대신 참조된 데이터를 패키징하고 전송해야 하는 경우 TLVAuthor 객체와 함께 전달되는 함수, 쓰기 콜백, 참조 객체를 제공합니다. 이 콜백의 서명은 다음과 같습니다.
typedef void (*TLVWriteCallback)(TLV::TLVWriter &aWriter, void *aAppState);
세부정보 | |||||
---|---|---|---|---|---|
매개변수 |
|
||||
반환 값 |
|
isEmpty
bool isEmpty( void )
ReferencedTLVData 객체에 아무것도 없는지 확인합니다.
다음 두 가지 방법으로 해당 객체를 만들 수 있습니다. 길이가 0이거나 쓰기 콜백이 없을 수 있습니다.
세부정보 | |
---|---|
반환 |
데이터 세트의 길이가 0이거나 true에 없는 경우 true를, 그렇지 않으면 false를 전달합니다.
|
isFree
bool isFree( void )
연산자==
bool operator==( const ReferencedTLVData & ) const
ReferencedTLVData 객체를 서로 비교하여 동등성을 확인합니다.
이는 버퍼나 문자열로 지원되는 실제 데이터가 있는 두 객체의 경우에만 의미가 있습니다.
세부정보 | |||||
---|---|---|---|---|---|
매개변수 |
|
||||
반환 값 |
|
팩
WEAVE_ERROR pack( System::PacketBuffer *buff )
ReferencedTLVData 객체를 PacketBuffer로 직접 패킹합니다.
세부정보 | |||
---|---|---|---|
매개변수 |
|
||
반환 |
기본 팩 호출의 성공이 반영된 WEAVE_ERROR입니다.
|
팩
WEAVE_ERROR pack( MessageIterator & i, uint32_t maxLen )
packLength:
uint16_t packedLength( void )
객체가 버퍼에 패키징되었다고 가정하고 데이터 길이를 반환합니다.
세부정보 | |
---|---|
반환 |
채워진 데이터의 정수 길이
|
공개 정적 함수
파싱
WEAVE_ERROR parse( System::PacketBuffer *buff, ReferencedTLVData & aTarget )
제공된 PacketBuffer에서 ReferencedTLVData 객체를 파싱합니다.
TLV만 포함되어 있다고 가정하고 식성 버퍼에서 ReferencedTLVData 객체를 파싱합니다.
세부정보 | |||||
---|---|---|---|---|---|
매개변수 |
|
||||
반환 |
기본 파싱 호출의 성공이 반영된 WEAVE_ERROR입니다.
|
파싱
WEAVE_ERROR parse( MessageIterator & i, ReferencedTLVData & aTarget )
제공된 MessageIterator에서 ReferencedTLVData 객체를 파싱합니다.
메시지의 TLV 부분을 가리키는 것으로 가정되는 MessageIterator 객체에서 ReferenceTLVData 객체를 파싱합니다.
여기서 TLV는 버퍼에 남아 있고 조작되지 않으므로 여기서 실제 '파싱'은 실행되지 않습니다. 이 메서드는 나중에 사용할 수 있도록 ReferencedTLVData 구조를 주로 설정합니다.
세부정보 | |||||
---|---|---|---|---|---|
매개변수 |
|
||||
반환 값 |
|