nl:: Weave:: Profiles:: ReferencedTLVData
#include <src/lib/profiles/common/WeaveMessage.h>
इसी तरह, हमें टीएलवी डेटा का एक बड़ा पुराना ब्लॉब दिखाना होगा.
खास जानकारी
इनहेरिटेंस
इनसे इनहेरिट की गई: nl::Weave::Profiles::RetainedPacketBuffer
कंस्ट्रक्टर और डिस्ट्रक्टर |
|
---|---|
ReferencedTLVData(void)
-------------- टीएलवी के डेटा की परिभाषाएं --------------
|
सार्वजनिक टाइप |
|
---|---|
TLVWriteCallback)(TLV::TLVWriter &aWriter, void *aAppState)
|
typedefvoid(*
|
सार्वजनिक एट्रिब्यूट |
|
---|---|
theData
|
uint8_t *
|
theLength
|
uint16_t
|
theMaxLength
|
uint16_t
|
सार्वजनिक फ़ंक्शन |
|
---|---|
free(void)
|
void
एक ReferencedTLVData ऑब्जेक्ट खाली करें, जिसका मतलब है कि यह, उसकी परिभाषा के मुताबिक नहीं है.
|
init(System::PacketBuffer *aBuffer)
|
किसी PaetBuffer के साथ ReferencedTLVData ऑब्जेक्ट को शुरू करें.
|
init(MessageIterator & i)
|
MessageIterator के साथ, ReferencedTLVData ऑब्जेक्ट को शुरू करें.
|
init(uint16_t aLength, uint16_t aMaxLength, uint8_t *aByteString)
|
किसी बाइट स्ट्रिंग के साथ,ReferencedTLVObject को शुरू करें.
|
init(TLVWriteCallback aWriteCallback, void *anAppState)
|
कॉलबैक फ़ंक्शन दिए गए रेफ़रेंसटीएलवीडेटा ऑब्जेक्ट को शुरू करें.
|
isEmpty(void)
|
bool
देखें कि ReferencedTLVData ऑब्जेक्ट में कुछ है या नहीं.
|
isFree(void)
|
bool
देखें कि क्या ReferencedTLVData ऑब्जेक्ट "मुफ़्त" है, यानी कि
|
operator==(const ReferencedTLVData &) const
|
bool
समानता के लिए, ReferencedTLVData ऑब्जेक्ट की दूसरे के सामने जांच करें.
|
pack(System::PacketBuffer *buff)
|
किसी ReferencedTLVData ऑब्जेक्ट को सीधे पैकेटBuffer में पैक करें.
|
pack(MessageIterator & i, uint32_t maxLen)
|
|
packedLength(void)
|
uint16_t
यह मानते हुए डेटा की लंबाई दें कि ऑब्जेक्ट को बफ़र में पैक किया गया है.
|
सार्वजनिक स्टैटिक फ़ंक्शन |
|
---|---|
parse(System::PacketBuffer *buff, ReferencedTLVData & aTarget)
|
दिए गए पैकेटBuffer से, ReferencedTLVData ऑब्जेक्ट को पार्स करें.
|
parse(MessageIterator & i, ReferencedTLVData & aTarget)
|
दिए गए MessageIterator से, ReferencedTLVData ऑब्जेक्ट को पार्स करें.
|
सार्वजनिक टाइप
TLVWriteCallback
void(* TLVWriteCallback)(TLV::TLVWriter &aWriter, void *aAppState)
सार्वजनिक एट्रिब्यूट
theData
uint8_t * theData
theLength
uint16_t theLength
theMaxLength
uint16_t theMaxLength
सार्वजनिक फ़ंक्शन
ReferencedTLVData
ReferencedTLVData( void )
बिना किसी शुल्क के यह ऑफ़र पाएं
void free( void )
एक ReferencedTLVData ऑब्जेक्ट खाली करें, जिसका मतलब है कि यह, उसकी परिभाषा के मुताबिक नहीं है.
init
WEAVE_ERROR init( System::PacketBuffer *aBuffer )
किसी PaetBuffer के साथ ReferencedTLVData ऑब्जेक्ट को शुरू करें.
TLV के पूरे बफ़र के तौर पर, ReferencedTLVData ऑब्जेक्ट को शुरू करें. इसमें यह माना जाता है कि बफ़र में सिर्फ़ टीएलवी शामिल है.
जानकारी | |||
---|---|---|---|
पैरामीटर |
|
||
रिटर्न वैल्यू |
|
init
WEAVE_ERROR init( MessageIterator & i )
MessageIterator के साथ, ReferencedTLVData ऑब्जेक्ट को शुरू करें.
MessageIterator के साथ, ReferencedTLVData ऑब्जेक्ट को शुरू करें. इस मामले में, टीएलवी, बफ़र का आखिरी हिस्सा है और हम मैसेज इटरेटर को पास करते हैं जो इसकी तरफ़ इशारा करता है.
जानकारी | |||
---|---|---|---|
पैरामीटर |
|
||
रिटर्न वैल्यू |
|
init
WEAVE_ERROR init( uint16_t aLength, uint16_t aMaxLength, uint8_t *aByteString )
किसी बाइट स्ट्रिंग के साथ,ReferencedTLVObject को शुरू करें.
ReferencedTLVData ऑब्जेक्ट को, उस बाइट स्ट्रिंग के साथ शुरू करें जिसमें TLV शामिल है. यह इनीशियलाइज़र टूल है, जिसका इस्तेमाल हम तब करते हैं, जब कोई पैकरबफ़र न हो, क्योंकि हम पैक करने और भेजने के लिए इनमें से एक बना रहे हैं.
जानकारी | |||||||
---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||
रिटर्न वैल्यू |
|
init
WEAVE_ERROR init( TLVWriteCallback aWriteCallback, void *anAppState )
कॉलबैक फ़ंक्शन दिए गए रेफ़रेंसटीएलवीडेटा ऑब्जेक्ट को शुरू करें.
ReferencedTLVData ऑब्जेक्ट को शुरू करें. डेटा की साफ़ तौर पर जानकारी देने के बजाय, यह वर्शन फ़ंक्शन, राइट कॉलबैक, और एक रेफ़रंस ऑब्जेक्ट देता है. इसे TLVWriter ऑब्जेक्ट के साथ भेजा जाएगा. ऐसा तब किया जाएगा, जब रेफ़र किए गए डेटा को पैक करके भेजा जाएगा. उस कॉलबैक का सिग्नेचर यह है:
typedef void (*TLVWriteCallback)(TLV::TLVWriter &aWriter, void *aAppState);
जानकारी | |||||
---|---|---|---|---|---|
पैरामीटर |
|
||||
रिटर्न वैल्यू |
|
isEmpty
bool isEmpty( void )
देखें कि ReferencedTLVData ऑब्जेक्ट में कुछ है या नहीं.
इस तरह के ऑब्जेक्ट के कुछ "होने" के दो तरीके हो सकते हैं. या तो इसकी लंबाई 0 हो सकती है या इसमें कोई कॉलबैक नहीं हो सकता है.
जानकारी | |
---|---|
लौटाए गए सामान |
अगर डेटा सेट की लंबाई 0 है या इसमें राइट कॉलबैक नहीं है, तो 'सही' है. ऐसा नहीं होने पर 'गलत' है.
|
isFree
bool isFree( void )
देखें कि क्या ReferencedTLVData ऑब्जेक्ट "मुफ़्त" है, यानी कि
तय नहीं है.
जानकारी | |
---|---|
लौटाए गए सामान |
अगर ऑब्जेक्ट की जानकारी नहीं दी गई है, तो वैल्यू 'सही' होगी. ऐसा नहीं होने पर 'गलत' होगा.
|
ऑपरेटर==
bool operator==( const ReferencedTLVData & ) const
समानता के लिए, ReferencedTLVData ऑब्जेक्ट की दूसरे के सामने जांच करें.
ध्यान दें कि यह सिर्फ़ उन दो ऑब्जेक्ट के मामले में काम का है जिनमें असल डेटा मौजूद हो और जो बफ़र या स्ट्रिंग की मदद से सुरक्षित हो.
जानकारी | |||||
---|---|---|---|---|---|
पैरामीटर |
|
||||
रिटर्न वैल्यू |
|
पैक
WEAVE_ERROR pack( System::PacketBuffer *buff )
किसी ReferencedTLVData ऑब्जेक्ट को सीधे पैकेटBuffer में पैक करें.
जानकारी | |||
---|---|---|---|
पैरामीटर |
|
||
लौटाए गए सामान |
इसमें WEAVE_ERROR का इस्तेमाल किया गया है, जो पैक कॉल की सफलता को दिखाता है.
|
पैक
WEAVE_ERROR pack( MessageIterator & i, uint32_t maxLen )
packedLength
uint16_t packedLength( void )
यह मानते हुए डेटा की लंबाई दें कि ऑब्जेक्ट को बफ़र में पैक किया गया है.
जानकारी | |
---|---|
लौटाए गए सामान |
पैक किए गए डेटा की इंटीजर लंबाई.
|
सार्वजनिक स्टैटिक फ़ंक्शन
parse
WEAVE_ERROR parse( System::PacketBuffer *buff, ReferencedTLVData & aTarget )
दिए गए पैकेटBuffer से, ReferencedTLVData ऑब्जेक्ट को पार्स करें.
इनेट बफ़र में ReferencedTLVData ऑब्जेक्ट को पार्स करें (यह मानते हुए कि इसमें सिर्फ़ TLV शामिल है).
जानकारी | |||||
---|---|---|---|---|---|
पैरामीटर |
|
||||
लौटाए गए सामान |
मौजूदा पार्स कॉल की सफलता को दिखाने वाला WEAVE_ERROR है.
|
parse
WEAVE_ERROR parse( MessageIterator & i, ReferencedTLVData & aTarget )
दिए गए MessageIterator से, ReferencedTLVData ऑब्जेक्ट को पार्स करें.
MessageIterator ऑब्जेक्ट से, उस रेफ़रंस TLVData ऑब्जेक्ट को पार्स करें जो मैसेज के TLV हिस्से की तरफ़ पॉइंट करता हो.
ध्यान दें कि यहां कोई असल "पार्सिंग" नहीं की गई है, क्योंकि टीएलवी को बफ़र में छोड़ दिया गया है और उसमें कोई बदलाव नहीं किया गया है. यह तरीका मुख्य रूप से, बाद में इस्तेमाल करने के लिए, ReferencedTLVData स्ट्रक्चर को सेट अप करता है.
जानकारी | |||||
---|---|---|---|---|---|
पैरामीटर |
|
||||
रिटर्न वैल्यू |
|