nl:: Weave:: Profiles:: ReferencedTLVData
#include <src/lib/profiles/common/WeaveMessage.h>
ในทำนองเดียวกัน เราต้องสามารถแสดงข้อมูลใน TLV แบบเดิมๆ ได้
สรุป
การสืบทอด
รับค่าจาก nl::Weave::Profiles::RetainedPacketBuffer
ผู้ผลิตและผู้ทำลาย |
|
---|---|
ReferencedTLVData(void)
-------------- คำจำกัดความสำหรับข้อมูล 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)
|
เริ่มต้นออบเจ็กต์ ReferencedTLVData โดยระบุ PacketBuffer
|
init(MessageIterator & i)
|
เริ่มต้นออบเจ็กต์ ReferencedTLVData พร้อม MessageIterator
|
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 เป็น "ฟรี" หรือไม่
|
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)
|
แยกวิเคราะห์ออบเจ็กต์ ReferencedTLVData จาก PacketBuffer ที่กำหนด
|
parse(MessageIterator & i, ReferencedTLVData & aTarget)
|
แยกวิเคราะห์ออบเจ็กต์ ReferencedTLVData จาก MessageIterator ที่ให้ไว้
|
ประเภทสาธารณะ
TLVWriteCallback
void(* TLVWriteCallback)(TLV::TLVWriter &aWriter, void *aAppState)
แอตทริบิวต์สาธารณะ
theData
uint8_t * theData
theLength
uint16_t theLength
theMaxLength
uint16_t theMaxLength
ฟังก์ชันสาธารณะ
ReferencedTLVData
ReferencedTLVData( void )
init
WEAVE_ERROR init( System::PacketBuffer *aBuffer )
เริ่มต้นออบเจ็กต์ ReferencedTLVData โดยระบุ PacketBuffer
เริ่มต้นออบเจ็กต์ ReferencedTLVData โดยมีบัฟเฟอร์เต็ม TLV ซึ่งถือว่าบัฟเฟอร์มี TLV เท่านั้น
รายละเอียด | |||
---|---|---|---|
พารามิเตอร์ |
|
||
แสดงผลค่า |
|
init
WEAVE_ERROR init( MessageIterator & i )
เริ่มต้นออบเจ็กต์ ReferencedTLVData พร้อม MessageIterator
เริ่มต้นออบเจ็กต์ ReferencedTLVData พร้อม MessageIterator ในกรณีนี้ TLV คือส่วนสุดท้ายของบัฟเฟอร์และเราส่งในตัวปรับแต่งข้อความที่ชี้ไปยังบัฟเฟอร์
รายละเอียด | |||
---|---|---|---|
พารามิเตอร์ |
|
||
แสดงผลค่า |
|
init
WEAVE_ERROR init( uint16_t aLength, uint16_t aMaxLength, uint8_t *aByteString )
เริ่มต้น ReferencedTLVObject ด้วยสตริงไบต์
เริ่มต้นออบเจ็กต์ ReferencedTLVData ด้วยสตริงไบต์ที่มี TLV เครื่องมือเริ่มต้นนี้คือเครื่องมือที่เราใช้หากไม่มี PacketrBuffer เนื่องจากเรากำลังสร้างหนึ่งในรายการเหล่านี้เพื่อแพ็คและส่ง
รายละเอียด | |||||||
---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||
แสดงผลค่า |
|
init
WEAVE_ERROR init( TLVWriteCallback aWriteCallback, void *anAppState )
เริ่มต้นออบเจ็กต์ RefererencedTLVData พร้อมฟังก์ชันเรียกกลับ
เริ่มต้นออบเจ็กต์ ReferencedTLVData เวอร์ชันนี้จะมีฟังก์ชัน โค้ดเรียกกลับการเขียน และออบเจ็กต์อ้างอิง ซึ่งจะส่งไปยังออบเจ็กต์ดังกล่าวพร้อมกับออบเจ็กต์ TLVWriter เมื่อระบบควรจะแพ็คและส่งข้อมูลอ้างอิง แทนที่จะให้ข้อมูลอย่างชัดแจ้ง ลายเซ็นของโค้ดเรียกกลับคือ
typedef void (*TLVWriteCallback)(TLV::TLVWriter &aWriter, void *aAppState);
รายละเอียด | |||||
---|---|---|---|---|---|
พารามิเตอร์ |
|
||||
แสดงผลค่า |
|
isEmpty
bool isEmpty( void )
ตรวจสอบว่าออบเจ็กต์ ReferencedTLVData มีข้อมูลใดอยู่ในนั้นหรือไม่
การที่วัตถุดังกล่าว "มี" บางอย่างได้มีอยู่ 2 วิธีด้วยกัน โดยอาจมีความยาวเป็น 0 หรือไม่สามารถเขียนการเรียกกลับ
รายละเอียด | |
---|---|
การส่งคืน |
"จริง" หากชุดข้อมูลมีความยาว 0 หรือไม่มีโค้ดเรียกกลับที่เขียนไว้ "เท็จ"
|
isFree
bool isFree( void )
ตรวจสอบว่าออบเจ็กต์ ReferencedTLVData เป็น "ฟรี" หรือไม่
ไม่ได้กำหนด
รายละเอียด | |
---|---|
การส่งคืน |
true ถ้าไม่ได้กำหนดอ็อบเจ็กต์ จะเป็น false หากไม่กำหนด
|
โอเปอเรเตอร์==
bool operator==( const ReferencedTLVData & ) const
ตรวจสอบออบเจ็กต์ ReferencedTLVData กับออบเจ็กต์อื่นเพื่อความเท่าเทียม
โปรดทราบว่าวิธีนี้จะสมเหตุสมผลเฉพาะในกรณีที่เป็นออบเจ็กต์ 2 รายการที่มีข้อมูลจริงอยู่ในนั้นซึ่งบัฟเฟอร์หรือสตริงได้รับการสนับสนุน
รายละเอียด | |||||
---|---|---|---|---|---|
พารามิเตอร์ |
|
||||
แสดงผลค่า |
|
แพ็ก
WEAVE_ERROR pack( System::PacketBuffer *buff )
แพ็กออบเจ็กต์ ReferencedTLVData ลงใน PacketBuffer โดยตรง
รายละเอียด | |||
---|---|---|---|
พารามิเตอร์ |
|
||
การส่งคืน |
WEAVE_ERROR ที่แสดงให้เห็นถึงความสำเร็จของการเรียกใช้แพ็กที่เกี่ยวข้อง
|
แพ็ก
WEAVE_ERROR pack( MessageIterator & i, uint32_t maxLen )
packedLength
uint16_t packedLength( void )
แสดงผลความยาวของข้อมูลโดยสมมติว่าออบเจ็กต์ถูกแพ็กเข้าไปในบัฟเฟอร์แล้ว
รายละเอียด | |
---|---|
การส่งคืน |
ความยาวจำนวนเต็มของข้อมูลที่แพ็ค
|
ฟังก์ชันแบบคงที่แบบสาธารณะ
parse
WEAVE_ERROR parse( System::PacketBuffer *buff, ReferencedTLVData & aTarget )
แยกวิเคราะห์ออบเจ็กต์ ReferencedTLVData จาก PacketBuffer ที่กำหนด
แยกวิเคราะห์ออบเจ็กต์ ReferencedTLVData จากบัฟเฟอร์ inet (สมมติว่ามีเพียง TLV)
รายละเอียด | |||||
---|---|---|---|---|---|
พารามิเตอร์ |
|
||||
การส่งคืน |
WEAVE_ERROR ที่แสดงถึงความสำเร็จของการเรียกใช้การแยกวิเคราะห์พื้นฐาน
|
parse
WEAVE_ERROR parse( MessageIterator & i, ReferencedTLVData & aTarget )
แยกวิเคราะห์ออบเจ็กต์ ReferencedTLVData จาก MessageIterator ที่ให้ไว้
แยกวิเคราะห์ออบเจ็กต์ ReferenceTLVData จากออบเจ็กต์ MessageIterator ที่คาดว่าชี้ไปยังส่วน TLV ของข้อความ
โปรดทราบว่าไม่มีการ "แยกวิเคราะห์" จริงๆ ที่นี่เนื่องจาก TLV อยู่ในบัฟเฟอร์และไม่ได้แก้ไขเลย วิธีนี้ใช้เพียงการตั้งค่าโครงสร้าง ReferencedTLVData เพื่อใช้งานในภายหลังเป็นหลัก
รายละเอียด | |||||
---|---|---|---|---|---|
พารามิเตอร์ |
|
||||
แสดงผลค่า |
|