Google is committed to advancing racial equity for Black communities. See how.

এনএল :: তাঁত :: প্রোফাইল :: রেফারেন্সড টিএলভিডাটা

#include <src/lib/profiles/common/WeaveMessage.h>

একইভাবে, আমরা একটি বড় পুরাতন ফোঁটা প্রতিনিধিত্ব করতে সক্ষম হতে হবে TLV তথ্য।

সারসংক্ষেপ

উত্তরাধিকার

থেকে উত্তরাধিকারী nl এর :: বুনা :: প্রোফাইল :: RetainedPacketBuffer

নির্মাণকারী এবং ধ্বংসকারী

ReferencedTLVData (void)
-------------- সংজ্ঞা TLV তথ্য --------------

পাবলিক প্রকার

TLVWriteCallback )(TLV::TLVWriter &aWriter, void *aAppState) টাইপডেফ
void(*

জনসাধারণের গুণাবলী

theData
uint8_t *
theLength
uint16_t
theMaxLength
uint16_t

পাবলিক ফাংশন

free (void)
void
মুক্ত একটি ReferencedTLVData বস্তু, যার ফলে এটি undefine, বলতে হয়।
init ( System::PacketBuffer *aBuffer)
আরম্ভ ReferencedTLVData দেওয়া PacketBuffer অবজেক্ট।
init ( MessageIterator & i)
একটি আরম্ভ ReferencedTLVData দেওয়া একটি অবজেক্টকে MessageIterator
init (uint16_t aLength, uint16_t aMaxLength, uint8_t *aByteString)
বাইট স্ট্রিং প্রদত্ত একটি রেফারেন্সড টিএলভিওবজেক্ট শুরু করুন।
init (TLVWriteCallback aWriteCallback, void *anAppState)
একটি কলব্যাক ফাংশন প্রদত্ত একটি রেফারেন্সেন্সড টিএলভিডাটা অবজেক্টটি শুরু করুন।
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)

জনসাধারণের গুণাবলী

তথ্যটি

uint8_t * theData

দৈর্ঘ

uint16_t theLength

theMaxLength

uint16_t theMaxLength

পাবলিক ফাংশন

রেফারেন্সড টিএলভিডাটা

 ReferencedTLVData(
  void
)

-------------- সংজ্ঞা TLV তথ্য --------------

জন্য নো-ARG কন্সট্রাকটর TLV তথ্য। ফ্রী / uninitialized বস্তুর এক আবশ্যক চলছে উদ্ধার করেন () Init পদ্ধতি অনুক্রমে এখানে সংজ্ঞায়িত উপযোগী হতে হবে।

বিনামূল্যে

void free(
  void
)

মুক্ত একটি ReferencedTLVData বস্তু, যার ফলে এটি undefine, বলতে হয়।

এটা

WEAVE_ERROR init(
  System::PacketBuffer *aBuffer
)

আরম্ভ ReferencedTLVData দেওয়া PacketBuffer অবজেক্ট।

একটি আরম্ভ ReferencedTLVData একটি বাফার পূর্ণ দেওয়া বস্তুর TLV । এই ধরে নেয় যে বাফার শুধুমাত্র রয়েছে TLV

বিশদ
পরামিতি
[in] aBuffer
যার মাধ্যমে কোনো বার্তা বাফার TLV থাকা।
রিটার্ন মান
WEAVE_NO_ERROR
শর্তহীন

এটা

WEAVE_ERROR init(
  MessageIterator & i
)

একটি আরম্ভ ReferencedTLVData দেওয়া একটি অবজেক্টকে MessageIterator

একটি আরম্ভ ReferencedTLVData দেওয়া একটি অবজেক্টকে MessageIterator । এই ক্ষেত্রে, TLV বাফার যে গত অংশ এবং আমরা একটি বার্তা পুনরুক্তিকারীর যে এটি এর প্রতি নির্দেশ মধ্যে পাস।

বিশদ
পরামিতি
[in] i
একটি বার্তা পুনরুক্তিকারীর নির্দেশিত TLV নিষ্কাশিত হতে পারে।
রিটার্ন মান
WEAVE_NO_ERROR
শর্তহীন

এটা

WEAVE_ERROR init(
  uint16_t aLength,
  uint16_t aMaxLength,
  uint8_t *aByteString
)

বাইট স্ট্রিং প্রদত্ত একটি রেফারেন্সড টিএলভিওবজেক্ট শুরু করুন।

আরম্ভ ReferencedTLVData ধারণকারী একটি বাইট স্ট্রিং সঙ্গে আপত্তি TLV । এই ইনিশিয়ালাইজারটি হ'ল আমরা যদি প্যাকেটবার্ফার না রাখি তবে আমরা প্যাক এবং প্রেরণের জন্য এর একটি তৈরি করছি of

বিশদ
পরামিতি
[in] aLength
জন্য একটি দৈর্ঘ্য TLV তথ্য
[in] aMaxLength
বাফারের মোট দৈর্ঘ্য
[in] aByteString
স্ট্রিং ডেটাতে একটি পয়েন্টার
রিটার্ন মান
WEAVE_NO_ERROR
শর্তহীন

এটা

WEAVE_ERROR init(
  TLVWriteCallback aWriteCallback,
  void *anAppState
)

একটি কলব্যাক ফাংশন প্রদত্ত একটি রেফারেন্সেন্সড টিএলভিডিটা অবজেক্টটি শুরু করুন।

একটি আরম্ভ ReferencedTLVData অবজেক্ট। স্পষ্টভাবে ডেটা সরবরাহের পরিবর্তে, এই সংস্করণটি ফাংশন, রাইটিং কলব্যাক এবং একটি রেফারেন্স অবজেক্ট সরবরাহ করে, যখন এটি রেফারেন্সযুক্ত ডেটা প্যাক করে প্রেরণ করা হবে বলে মনে করার সাথে সাথে একটি TLVWriter অবজেক্টের সাথে এটি পাঠানো হবে। এই কলব্যাকের স্বাক্ষরটি হ'ল:

typedef void (*TLVWriteCallback)(TLV::TLVWriter &aWriter, void *aAppState);

বিশদ
পরামিতি
[in] aWriteCallback
যখন এটি এর সময় কিছু লিখতে ফাংশন বলা হবে TLV
[in] anAppState
লেখকের সাথে কলব্যাকে পাস করার জন্য একটি অ্যাপ্লিকেশন স্টেট অবজেক্ট।
রিটার্ন মান
WEAVE_NO_ERROR
সাফল্যের উপর।
WEAVE_ERROR_INVALID_ARGUMENT
লিখন কলব্যাক সরবরাহ করা না হলে।

খালি

bool isEmpty(
  void
)

পরীক্ষা করে দেখুন একটি যদি ReferencedTLVData বস্তুর এটা কিছু হয়েছে।

এই জাতীয় কোনও জিনিস "থাকতে পারে" এমন দুটি উপায় রয়েছে। হয় এর 0 দৈর্ঘ্য থাকতে পারে অথবা এটির কোনও লিখন কলব্যাক নাও থাকতে পারে।

বিশদ
ফিরে আসে
সত্য যদি ডেটা সেটটির দৈর্ঘ্য 0 থাকে বা হাতে কোনও লিখিত কলব্যাক নেই, অন্যথায় মিথ্যা।

মুক্ত

bool isFree(
  void
)

পরীক্ষা করে দেখুন একটি ReferencedTLVData অবজেক্ট "মুক্ত", অর্থাত্

অপরিবর্তিত

বিশদ
ফিরে আসে
সত্য যদি অবজেক্টটি অনির্ধারিত হয়, অন্যথায় মিথ্যা।

অপারেটর ==

bool operator==(
  const ReferencedTLVData &
) const 

একটি চেক ReferencedTLVData সমতার জন্য অন্য বিরুদ্ধে অবজেক্ট।

নোট করুন যে এটি কেবল দুটি বস্তুর ক্ষেত্রে সত্যিকার অর্থে বোধগম্য হয় যার মধ্যে বাফার বা স্ট্রিং দ্বারা সমর্থিত প্রকৃত ডেটা থাকে।

বিশদ
পরামিতি
[in] Another
বিরুদ্ধে পরীক্ষা করার জন্য একটি বিষয়
রিটার্ন মান
true
বস্তু সমান।
false
বস্তুর স্ট্রিং সমান নয়।

প্যাক

WEAVE_ERROR pack(
  System::PacketBuffer *buff
)

প্যাক একটি ReferencedTLVData বস্তুর সরাসরি একটি PacketBuffer মধ্যে।

বিশদ
পরামিতি
[in] buff
পূরণ করতে বাফার।
ফিরে আসে
অন্তর্নিহিত প্যাক কলটির সাফল্য প্রতিফলিত করে একটি WEAVE_ERROR।

প্যাক

WEAVE_ERROR pack(
  MessageIterator & i,
  uint32_t maxLen
)

প্যাকড লেন্থ

uint16_t packedLength(
  void
)

ডেটা দৈর্ঘ্যটি ধরে ধরে ধরে নিন যে অবজেক্টটি একটি বাফারে প্যাক করা হয়েছে।

বিশদ
ফিরে আসে
প্যাক করা ডেটার পূর্ণসংখ্যার দৈর্ঘ্য।

পাবলিক স্ট্যাটিক ফাংশন

পার্স করা

WEAVE_ERROR parse(
  System::PacketBuffer *buff,
  ReferencedTLVData & aTarget
)

একটি বিশ্লেষণ ReferencedTLVData একটি সরবরাহকৃত PacketBuffer থেকে অবজেক্ট।

একটি বিশ্লেষণ ReferencedTLVData একটি Inet বাফার (এটা অভিমানী মাত্র ধারণ করে আউট বস্তুর TLV )।

বিশদ
পরামিতি
[in] buff
থেকে পড়তে বাফার।
[out] aTarget
একটি ReferencedTLVData ফলাফলের সঙ্গে "পরিপূর্ণ" করার বস্তু।
ফিরে আসে
অন্তর্নিহিত পার্স কলটির সাফল্যকে প্রতিফলিত করে একটি WEAVE_ERROR।

পার্স করা

WEAVE_ERROR parse(
  MessageIterator & i,
  ReferencedTLVData & aTarget
)

একটি বিশ্লেষণ ReferencedTLVData একটি সরবরাহকৃত থেকে অবজেক্ট MessageIterator

একটি থেকে একটি ReferenceTLVData বস্তুর বিশ্লেষণ MessageIterator বস্তুর নির্দেশ অবস্থায় গণ্য করা TLV একটি বার্তা অংশ।

লক্ষ্য করুন কোন প্রকৃত "পার্সিং" এখানে সম্পন্ন করা হয় যেহেতু TLV বাফারে ছেড়ে দেওয়া হয় এবং এ সব কাজে ব্যবহৃত হয় না। এই পদ্ধতি প্রধানত মাত্র সেট আপ ReferencedTLVData পরে ব্যবহার করার জন্য গঠন।

বিশদ
পরামিতি
[in] i
বার্তাটি বিশ্লেষণের উপর একটি পুনরাবৃত্তিকারী।
[out] aTarget
বিশ্লেষণের ফলাফল রাখার জায়গা।
রিটার্ন মান
WEAVE_NO_ERROR
শর্তহীন