nl:: Weave:: Profiles:: ReferencedTLVData
#include <src/lib/profiles/common/WeaveMessage.h>
Demikian pula, kita harus dapat merepresentasikan blob lama yang besar dari data TLV.
Ringkasan
Inheritance
Mewarisi dari: nl::Weave::Profiles::RetainedPacketBuffer
Konstruktor dan Destruktor |
|
---|---|
ReferencedTLVData(void)
-------------- definisi untuk data TLV --------------
|
Jenis publik |
|
---|---|
TLVWriteCallback)(TLV::TLVWriter &aWriter, void *aAppState)
|
typedefvoid(*
|
Atribut publik |
|
---|---|
theData
|
uint8_t *
|
theLength
|
uint16_t
|
theMaxLength
|
uint16_t
|
Fungsi publik |
|
---|---|
free(void)
|
void
Bebaskan objek ReferencedTLVData, atau batalkan penetapannya.
|
init(System::PacketBuffer *aBuffer)
|
Lakukan inisialisasi objek ReferencedTLVData dengan PacketBuffer.
|
init(MessageIterator & i)
|
Lakukan inisialisasi objek ReferencedTLVData dengan MessageIterator.
|
init(uint16_t aLength, uint16_t aMaxLength, uint8_t *aByteString)
|
Melakukan inisialisasi ReferencedTLVObject dengan string byte.
|
init(TLVWriteCallback aWriteCallback, void *anAppState)
|
Melakukan inisialisasi objek RefererencedTLVData dengan fungsi callback.
|
isEmpty(void)
|
bool
Periksa apakah objek ReferencedTLVData berisi sesuatu di dalamnya.
|
isFree(void)
|
bool
Periksa apakah objek ReferencedTLVData adalah "free", yaitu
|
operator==(const ReferencedTLVData &) const
|
bool
Periksa objek ReferencedTLVData terhadap objek lain untuk mengetahui kesetaraannya.
|
pack(System::PacketBuffer *buff)
|
Kemas objek ReferencedTLVData langsung ke dalam PacketBuffer.
|
pack(MessageIterator & i, uint32_t maxLen)
|
|
packedLength(void)
|
uint16_t
Mengembalikan panjang data dengan asumsi bahwa objek telah dikemas ke dalam buffer.
|
Fungsi statis publik |
|
---|---|
parse(System::PacketBuffer *buff, ReferencedTLVData & aTarget)
|
Mengurai objek ReferencedTLVData dari PacketBuffer yang disediakan.
|
parse(MessageIterator & i, ReferencedTLVData & aTarget)
|
Mengurai objek ReferencedTLVData dari MessageIterator yang disediakan.
|
Jenis publik
TLVWriteCallback
void(* TLVWriteCallback)(TLV::TLVWriter &aWriter, void *aAppState)
Atribut publik
theData
uint8_t * theData
theLength
uint16_t theLength
theMaxLength
uint16_t theMaxLength
Fungsi publik
ReferencedTLVData
ReferencedTLVData( void )
init
WEAVE_ERROR init( System::PacketBuffer *aBuffer )
Lakukan inisialisasi objek ReferencedTLVData dengan PacketBuffer.
Lakukan inisialisasi objek ReferencedTLVData setelah buffer penuh dengan TLV. Hal ini mengasumsikan bahwa buffer HANYA berisi TLV.
Detail | |||
---|---|---|---|
Parameter |
|
||
Nilai Pengembalian |
|
init
WEAVE_ERROR init( MessageIterator & i )
Lakukan inisialisasi objek ReferencedTLVData dengan MessageIterator.
Lakukan inisialisasi objek ReferencedTLVData dengan MessageIterator. Dalam hal ini, TLV adalah bagian terakhir dari buffer dan kita meneruskan iterator pesan yang mengarah ke buffer tersebut.
Detail | |||
---|---|---|---|
Parameter |
|
||
Nilai Pengembalian |
|
init
WEAVE_ERROR init( uint16_t aLength, uint16_t aMaxLength, uint8_t *aByteString )
Melakukan inisialisasi ReferencedTLVObject dengan string byte.
Lakukan inisialisasi objek ReferencedTLVData dengan string byte yang berisi TLV. Penginisialisasi ini adalah yang kita gunakan jika tidak ada PacketrBuffer karena kita membuat salah satunya untuk mengemas dan mengirim.
Detail | |||||||
---|---|---|---|---|---|---|---|
Parameter |
|
||||||
Nilai Pengembalian |
|
init
WEAVE_ERROR init( TLVWriteCallback aWriteCallback, void *anAppState )
Melakukan inisialisasi objek RefererencedTLVData dengan fungsi callback.
Lakukan inisialisasi objek ReferencedTLVData. Sebagai ganti menyediakan data secara eksplisit, versi ini menyediakan fungsi, callback tulis, dan objek referensi, yang akan diteruskan ke sana, bersama dengan objek TLVWriter, jika data yang direferensikan seharusnya dikemas dan dikirim. Tanda tangan callback tersebut adalah:
typedef void (*TLVWriteCallback)(TLV::TLVWriter &aWriter, void *aAppState);
Detail | |||||
---|---|---|---|---|---|
Parameter |
|
||||
Nilai Pengembalian |
|
isEmpty
bool isEmpty( void )
Periksa apakah objek ReferencedTLVData berisi sesuatu di dalamnya.
Objek dapat "memiliki" sesuatu dengan dua cara. Entah itu bisa memiliki panjang 0 ATAU tidak bisa memiliki callback tulis.
Detail | |
---|---|
Hasil |
true jika set data memiliki panjang 0 atau tidak ada callback tulis di tangan, false jika tidak.
|
isFree
bool isFree( void )
Periksa apakah objek ReferencedTLVData adalah "free", yaitu
tidak ditentukan.
Detail | |
---|---|
Hasil |
true jika objek tidak ditentukan, false jika sebaliknya.
|
operator==
bool operator==( const ReferencedTLVData & ) const
Periksa objek ReferencedTLVData terhadap objek lain untuk mengetahui kesetaraannya.
Perhatikan bahwa ini hanya masuk akal jika dua objek memiliki data aktual di dalamnya yang didukung oleh buffer atau string.
Detail | |||||
---|---|---|---|---|---|
Parameter |
|
||||
Nilai Pengembalian |
|
pak
WEAVE_ERROR pack( System::PacketBuffer *buff )
Kemas objek ReferencedTLVData langsung ke dalam PacketBuffer.
Detail | |||
---|---|---|---|
Parameter |
|
||
Hasil |
WEAVE_ERROR yang mencerminkan keberhasilan panggilan paket yang mendasarinya.
|
pak
WEAVE_ERROR pack( MessageIterator & i, uint32_t maxLen )
packedLength
uint16_t packedLength( void )
Mengembalikan panjang data dengan asumsi bahwa objek telah dikemas ke dalam buffer.
Detail | |
---|---|
Hasil |
panjang integer
dari data yang dikemas.
|
Fungsi statis publik
parse
WEAVE_ERROR parse( System::PacketBuffer *buff, ReferencedTLVData & aTarget )
Mengurai objek ReferencedTLVData dari PacketBuffer yang disediakan.
Mengurai objek ReferencedTLVData dari buffer inet (dengan asumsi hanya berisi TLV).
Detail | |||||
---|---|---|---|---|---|
Parameter |
|
||||
Hasil |
WEAVE_ERROR yang mencerminkan keberhasilan panggilan penguraian yang mendasarinya.
|
parse
WEAVE_ERROR parse( MessageIterator & i, ReferencedTLVData & aTarget )
Mengurai objek ReferencedTLVData dari MessageIterator yang disediakan.
Mengurai objek ReferenceTLVData dari objek MessageIterator yang dianggap mengarah ke bagian TLV pesan.
Perlu diperhatikan bahwa tidak ada "penguraian" aktual yang dilakukan di sini karena TLV dibiarkan di buffer dan tidak dimanipulasi sama sekali. Metode ini terutama hanya menyiapkan struktur ReferencedTLVData untuk digunakan nanti.
Detail | |||||
---|---|---|---|---|---|
Parameter |
|
||||
Nilai Pengembalian |
|