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. وبدلاً من توفير البيانات بشكل صريح، يوفر هذا الإصدار الدالة استدعاء الدالة write وكائن المرجع الذي سيتم تمريره إليه مع كائن TLVWriter عندما من المفترض أن يتم تجميع البيانات المشار إليها وإرسالها. وفي ما يلي توقيع معاودة الاتصال هذه:
typedef void (*TLVWriteCallback)(TLV::TLVWriter &aWriter, void *aAppState);
التفاصيل | |||||
---|---|---|---|---|---|
المَعلمات |
|
||||
قيم الإرجاع |
|
isEmpty
bool isEmpty( void )
تحقَّق من أنّ الكائن ReferencedTLVData يتضمّن أي محتوى.
هناك طريقتان محتملتان يمكن من خلالهما أن "يحتوي" هذا الكائن على شيء ما. يمكن أن يكون طوله صفرًا أو لا يمكن كتابة معاودة الاتصال به.
التفاصيل | |
---|---|
المرتجعات |
true إذا كانت مجموعة البيانات تحتوي على طول 0 أو لم يكن هناك رد اتصال في اليد، أو false إذا لم يكن هناك أي رد اتصال.
|
isFree
bool isFree( void )
تحقَّق مما إذا كان الكائن ReferencedTLVData "مجانيًا"، أي
غير محددة.
التفاصيل | |
---|---|
المرتجعات |
true إذا كان الكائن غير معرَّف، أو false في الحالات الأخرى.
|
==
bool operator==( const ReferencedTLVData & ) const
حدِّد كائن ReferencedTLVData مقارنةً بكائن آخر للتأكّد من المساواة.
لاحظ أن هذا يكون منطقيًا فقط في حالة كائنين يحتويان على بيانات فعلية مدعومة بمخزن مؤقت أو سلسلة.
التفاصيل | |||||
---|---|---|---|---|---|
المَعلمات |
|
||||
قيم الإرجاع |
|
حزمة
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 من المخزن المؤقت للإدخال (بافتراض أنّه يحتوي فقط على TLV)
التفاصيل | |||||
---|---|---|---|---|---|
المَعلمات |
|
||||
المرتجعات |
WEAVE_ERROR من شأنها إظهار نجاح استدعاء التحليل الأساسي.
|
parse
WEAVE_ERROR parse( MessageIterator & i, ReferencedTLVData & aTarget )
تحليل كائن ReferencedTLVData من عنصر MessageIterator مقدّم.
تحليل كائن ReferenceTLVData من كائن MessageIterator المفترَض أنه يشير إلى جزء TLV من الرسالة
يُرجى العِلم أنّه لا يتم هنا إجراء أي "تحليل" فعلي لأنّ TLV تُترك في المخزن المؤقت ولا يتم التلاعب بها على الإطلاق. تعمل هذه الطريقة بشكل أساسي على إعداد بنية ReferencedTLVData لاستخدامها لاحقًا.
التفاصيل | |||||
---|---|---|---|---|---|
المَعلمات |
|
||||
قيم الإرجاع |
|