nl:: বুনা:: প্রোফাইল:: উল্লেখিতTLVData
#include <src/lib/profiles/common/WeaveMessage.h>
একইভাবে, আমাদের টিএলভি ডেটার একটি বড় পুরানো ব্লব উপস্থাপন করতে সক্ষম হতে হবে।
সারাংশ
উত্তরাধিকার
থেকে উত্তরাধিকারসূত্রে পাওয়া যায়: 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 একটি রেফারেন্সডটিএলভিডেটা অবজেক্ট মুক্ত করুন, যা বলতে হয়, এটিকে অসংজ্ঞায়িত করুন। |
init ( System::PacketBuffer *aBuffer) | একটি প্যাকেটবাফার দেওয়া রেফারেন্সডটিএলভিডেটা অবজেক্ট শুরু করুন। |
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 সমতার জন্য অন্যের বিপরীতে একটি রেফারেন্সডটিএলভিডেটা বস্তু পরীক্ষা করুন। |
pack ( System::PacketBuffer *buff) | একটি প্যাকেটবাফারে সরাসরি একটি রেফারেন্সডটিএলভিডেটা অবজেক্ট প্যাক করুন। |
pack ( MessageIterator & i, uint32_t maxLen) | |
packedLength (void) | uint16_t অবজেক্টটি একটি বাফারে প্যাক করা হয়েছে বলে ধরে নিয়ে ডেটা দৈর্ঘ্য ফেরত দিন। |
পাবলিক স্ট্যাটিক ফাংশন | |
---|---|
parse ( System::PacketBuffer *buff, ReferencedTLVData & aTarget) | একটি সরবরাহকৃত প্যাকেটবাফার থেকে একটি রেফারেন্সডটিএলভিডেটা অবজেক্ট পার্স করুন। |
parse ( MessageIterator & i, ReferencedTLVData & aTarget) | একটি সরবরাহকৃত MessageIterator থেকে একটি ReferencedTLVData অবজেক্ট পার্স করুন। |
পাবলিক প্রকার
TLVWriteCallback
void(* TLVWriteCallback)(TLV::TLVWriter &aWriter, void *aAppState)
পাবলিক বৈশিষ্ট্য
তথ্য
uint8_t * theData
দৈর্ঘ্য
uint16_t theLength
সর্বোচ্চ দৈর্ঘ্য
uint16_t theMaxLength
পাবলিক ফাংশন
উল্লেখিতTLVData
ReferencedTLVData( void )
বিনামূল্যে
void free( void )
একটি রেফারেন্সডটিএলভিডেটা অবজেক্ট মুক্ত করুন, যা বলতে হয়, এটিকে অসংজ্ঞায়িত করুন।
init
WEAVE_ERROR init( System::PacketBuffer *aBuffer )
একটি প্যাকেটবাফার দেওয়া রেফারেন্সডটিএলভিডেটা অবজেক্ট শুরু করুন।
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 অবজেক্ট শুরু করুন। প্যাকেটরবাফার না থাকলে এই ইনিশিয়ালাইজারটিই আমরা ব্যবহার করি কারণ আমরা প্যাক এবং পাঠানোর জন্য এর মধ্যে একটি তৈরি করছি।
বিস্তারিত | |||||||
---|---|---|---|---|---|---|---|
পরামিতি |
| ||||||
রিটার্ন মান |
|
init
WEAVE_ERROR init( TLVWriteCallback aWriteCallback, void *anAppState )
একটি কলব্যাক ফাংশন দেওয়া একটি রেফারেন্সডটিএলভিডেটা অবজেক্ট শুরু করুন।
একটি রেফারেন্সডটিএলভিডেটা অবজেক্ট শুরু করুন। সুস্পষ্টভাবে ডেটা সরবরাহ করার পরিবর্তে, এই সংস্করণটি ফাংশন, কলব্যাক লিখতে এবং একটি রেফারেন্স অবজেক্ট প্রদান করে, যা একটি TLVWriter অবজেক্ট সহ এটিকে পাস করা হবে, যখন রেফারেন্স করা ডেটা প্যাক করা এবং পাঠানোর কথা। সেই কলব্যাকের স্বাক্ষর হল:
typedef void (*TLVWriteCallback)(TLV::TLVWriter &aWriter, void *aAppState);
বিস্তারিত | |||||
---|---|---|---|---|---|
পরামিতি |
| ||||
রিটার্ন মান |
|
খালি
bool isEmpty( void )
একটি ReferencedTLVData বস্তুর মধ্যে কিছু আছে কিনা তা পরীক্ষা করুন।
এই ধরনের একটি বস্তুর কিছু "থাকতে পারে" দুটি সম্ভাব্য উপায় আছে। হয় এটির দৈর্ঘ্য 0 থাকতে পারে বা এটিতে কোন লিখিত কলব্যাক থাকতে পারে না।
বিস্তারিত | |
---|---|
রিটার্নস | সত্য যদি ডেটা সেটের দৈর্ঘ্য 0 থাকে বা হাতে কলব্যাক লেখা না থাকে, অন্যথায় মিথ্যা। |
বিনামূল্যে
bool isFree( void )
একটি ReferencedTLVData অবজেক্ট "ফ্রি" কিনা চেক করুন, যেমন
অনির্ধারিত
বিস্তারিত | |
---|---|
রিটার্নস | বস্তুটি অনির্ধারিত হলে সত্য, অন্যথায় মিথ্যা। |
অপারেটর==
bool operator==( const ReferencedTLVData & ) const
সমতার জন্য অন্যের বিপরীতে একটি রেফারেন্সডটিএলভিডেটা বস্তু পরীক্ষা করুন।
মনে রাখবেন যে এটি শুধুমাত্র দুটি বস্তুর ক্ষেত্রেই বোধগম্য হয় যেগুলির মধ্যে একটি বাফার বা স্ট্রিং দ্বারা সমর্থিত প্রকৃত ডেটা রয়েছে।
বিস্তারিত | |||||
---|---|---|---|---|---|
পরামিতি |
| ||||
রিটার্ন মান |
|
প্যাক
WEAVE_ERROR pack( System::PacketBuffer *buff )
একটি প্যাকেটবাফারে সরাসরি একটি রেফারেন্সডটিএলভিডেটা অবজেক্ট প্যাক করুন।
বিস্তারিত | |||
---|---|---|---|
পরামিতি |
| ||
রিটার্নস | একটি WEAVE_ERROR অন্তর্নিহিত প্যাক কলের সাফল্যকে প্রতিফলিত করে। |
প্যাক
WEAVE_ERROR pack( MessageIterator & i, uint32_t maxLen )
প্যাক করা দৈর্ঘ্য
uint16_t packedLength( void )
অবজেক্টটি একটি বাফারে প্যাক করা হয়েছে বলে ধরে নিয়ে ডেটা দৈর্ঘ্য ফেরত দিন।
বিস্তারিত | |
---|---|
রিটার্নস | প্যাক করা ডেটার পূর্ণসংখ্যার দৈর্ঘ্য। |
পাবলিক স্ট্যাটিক ফাংশন
পার্স
WEAVE_ERROR parse( System::PacketBuffer *buff, ReferencedTLVData & aTarget )
একটি সরবরাহকৃত প্যাকেটবাফার থেকে একটি রেফারেন্সডটিএলভিডেটা অবজেক্ট পার্স করুন।
একটি inet বাফারের বাইরে একটি ReferencedTLVData অবজেক্টকে পার্স করুন (এটি TLV ধারণ করে)।
বিস্তারিত | |||||
---|---|---|---|---|---|
পরামিতি |
| ||||
রিটার্নস | একটি WEAVE_ERROR অন্তর্নিহিত পার্স কলের সাফল্যকে প্রতিফলিত করে। |
পার্স
WEAVE_ERROR parse( MessageIterator & i, ReferencedTLVData & aTarget )
একটি সরবরাহকৃত MessageIterator থেকে একটি ReferencedTLVData অবজেক্ট পার্স করুন।
একটি MessageIterator অবজেক্ট থেকে একটি ReferenceTLVData অবজেক্ট পার্স করুন যা একটি বার্তার TLV অংশে নির্দেশ করছে বলে ধরে নেওয়া হয়েছে।
মনে রাখবেন যে এখানে কোন প্রকৃত "পার্সিং" করা হয় না যেহেতু TLV বাফারে রেখে দেওয়া হয় এবং মোটেও ম্যানিপুলেট করা হয় না। এই পদ্ধতিটি মূলত পরবর্তীতে ব্যবহারের জন্য ReferencedTLVData কাঠামো সেট আপ করে।
বিস্তারিত | |||||
---|---|---|---|---|---|
পরামিতি |
| ||||
রিটার্ন মান |
|