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

এনএল :: তাঁত :: টিএলভি

বুনা মধ্যে এনকোড ডেটা সঙ্গে কাজ করার জন্য সংজ্ঞা TLV বিন্যাস।

সারসংক্ষেপ

বুনা TLV সহজ কাঠামোবদ্ধ ডেটার জন্য একটি সাধারণ এনকোডিং পদ্ধতি। এটি তারের থেকে যথেষ্ট বেশি কমপ্যাক্ট থাকাকালীন সাধারণত ব্যবহৃত JSON সিরিয়ালাইজেশন ফর্ম্যাটের সাথে অনেকগুলি সম্পত্তি ভাগ করে দেয়।

গণনা

@71 এনাম
@73 এনাম
@74 {
AnonymousTag = kSpecialTagMarker | 0x00000000FFFFFFFFULL
}
এনাম
@75 এনাম
TLVCommonProfiles {
kProfileIdNotSpecified = 0xFFFFFFFF
}
এনাম
TLVElementType এনাম
TLVFieldSize এনাম
TLVTagControl এনাম
TLVTagFields এনাম
TLVType এনাম
একটি শুমার একটি ধরণ চিহ্নিত TLV উপাদান।

পরিবর্তনশীল

kWeaveTLVCopyChunkSize = 16
const size_t
কপি একটি TLV লেখক মধ্যে একটি পাঠক বস্তু থেকে উপাদান।
sTagSizes = { 0, 1, 2, 4, 2, 4, 6, 8 }[]
const uint8_t

কার্যাদি

CommonTag (uint32_t tagNum)
uint64_t
একটি সাধারণ প্রোফাইলের এপিআই উপস্থাপনা উত্পন্ন TLV ট্যাগ।
ContextTag (uint8_t tagNum)
uint64_t
প্রসঙ্গ-নির্দিষ্ট জন্য API উপস্থাপনা উত্পন্ন TLV ট্যাগ।
GetTLVFieldSize (uint8_t type)
TLVFieldSize
IsContextTag (uint64_t tag)
bool
সরবরাহকৃত ট্যাগটি একটি প্রাসঙ্গিক-নির্দিষ্ট ট্যাগ হলে সত্য হয়।
IsProfileTag (uint64_t tag)
bool
সরবরাহ করা ট্যাগের সত্যটি ফিরে আসে একটি প্রোফাইল-নির্দিষ্ট ট্যাগ।
IsSpecialTag (uint64_t tag)
bool
IsValidTLVType (uint8_t type)
bool
রিটার্নস সত্য যদি নির্দিষ্ট করা TLV টাইপ বৈধ।
ProfileIdFromTag (uint64_t tag)
uint32_t
A থেকে প্রোফাইল আইডি ফেরত পাঠায় TLV ট্যাগ।
ProfileNumFromTag (uint64_t tag)
uint16_t
A থেকে প্রফাইল সংখ্যা TLV ট্যাগ।
ProfileTag (uint32_t profileId, uint32_t tagNum)
uint64_t
একটি প্রোফাইল-নির্দিষ্ট এপিআই উপস্থাপনা উত্পন্ন TLV একটি প্রোফাইল আইডি এবং ট্যাগ সংখ্যা থেকে ট্যাগ।
ProfileTag (uint16_t vendorId, uint16_t profileNum, uint32_t tagNum)
uint64_t
একটি প্রোফাইল-নির্দিষ্ট এপিআই উপস্থাপনা উত্পন্ন TLV বিক্রেতা আইডি, প্রোফাইল নম্বর এবং ট্যাগ সংখ্যা থেকে ট্যাগ।
TLVFieldSizeToBytes (TLVFieldSize fieldSize)
uint8_t
TLVTypeHasLength (uint8_t type)
bool
রিটার্নস সত্য যদি নির্দিষ্ট করা TLV টাইপ এই ক্ষেত্রে সংশ্লিষ্ট দৈর্ঘ্য ক্ষেত্রের উপস্থিতি বোঝা।
TLVTypeHasValue (uint8_t type)
bool
রিটার্নস সত্য যদি নির্দিষ্ট করা TLV টাইপ এই ক্ষেত্রে সংশ্লিষ্ট মানটি ক্ষেত্রের উপস্থিতি বোঝা।
TLVTypeIsContainer (uint8_t type)
bool
রিটার্নস সত্য যদি নির্দিষ্ট করা TLV টাইপ একটা ধারক।
TLVTypeIsString (uint8_t type)
bool
রিটার্নস সত্য যদি নির্দিষ্ট করা TLV ধরনের একটি UTF8 হওয়া বা বাইট স্ট্রিং।
TagNumFromTag (uint64_t tag)
uint32_t
A থেকে ট্যাগ সংখ্যা ফেরত পাঠায় TLV ট্যাগ।
VendorIdFromTag (uint64_t tag)
uint16_t
A থেকে বিক্রেতার আইডি ফেরত পাঠায় TLV ট্যাগ।

ক্লাস

nl এর :: বুনা :: TLV :: CircularTLVReader
nl এর :: বুনা :: TLV :: CircularTLVWriter
nl এর :: বুনা :: TLV :: TLVReader

বুনা মধ্যে এনকোড ডেটার জন্য একটি মেমরি দক্ষ পার্সার প্রদান করে TLV বিন্যাস।

nl এর :: বুনা :: TLV :: TLVUpdater

সম্পাদনা / যোগ / উপাদান মুছে ফেলার জন্য একটি ইউনিফাইড রিডার / লেখক ইন্টারফেস প্রদান TLV এনকোডিং।

nl এর :: বুনা :: TLV :: TLVWriter

বুনা ডাটা লেখার জন্য একটি মেমরি দক্ষ এনকোডার প্রদান করে TLV বিন্যাস।

nl এর :: বুনা :: TLV :: WeaveCircularTLVBuffer

WeaveCircularTLVBuffer জন্য বিজ্ঞপ্তি স্টোরেজ উপলব্ধnl এর :: বুনা :: TLV :: TLVWriter এবং nl এর :: বুনা :: TLVTLVReader।

নেমস্পেসেস

nl এর :: বুনা :: TLV :: ডিবাগ

এই নামস্থান ডিবাগিং এবং বুনা লগ-ইন-এর জন্য ধরনের এবং ইন্টারফেস অন্তর্ভুক্ত TLV

nl এর :: বুনা :: TLV :: উপযোগিতা

এই নামস্থান পরিচালনা এবং বুনা সঙ্গে কাজ করার জন্য ধরনের এবং উপযোগ ইন্টারফেসগুলি অন্তর্ভুক্ত TLV

গণনা

@ 71

 @71

@ 73

 @73

@ 74

 @74
সম্পত্তি
AnonymousTag

একটি বোধক একটি মান TLV উপাদান কোন ট্যাগ আছে (অর্থাত

একটি বেনামী উপাদান)।

@ 75

 @75

TLVCommonProfiles

 TLVCommonProfiles
সম্পত্তি
kProfileIdNotSpecified

কোনও ভেরিয়েবল বা সদস্যের প্রোফাইল আইডির অনুপস্থিতি নির্দেশ করতে ব্যবহৃত হয়।

এই মূলত একই হিসাবে kWeaveProfile_NotSpecified সংজ্ঞায়িত হয় WeaveProfiles.h

টিএলভিএলেমেন্ট টাইপ

 TLVElementType

টিএলভিফিল্ডসাইজ

 TLVFieldSize

TLVTagControl

 TLVTagControl

টিএলভিটাগফিল্ডস

 TLVTagFields

টিএলভিটাইপ

 TLVType

একটি শুমার একটি ধরণ চিহ্নিত TLV উপাদান।

পরিবর্তনশীল

kWeaveTLVCopyChunkSize

const size_t kWeaveTLVCopyChunkSize = 16

কপি একটি TLV লেখক মধ্যে একটি পাঠক বস্তু থেকে উপাদান।

CopyElement () মেথড একটি নতুন এনকোড TLV উপাদান যার ধরণ এবং মান একটি থেকে নেয়া হয়TLVReader অবজেক্ট। যখন পদ্ধতি বলা হয়, সরবরাহকৃত পাঠক বস্তুর উৎস উপর স্থান হতে বলে আশা করা হচ্ছে TLV উপাদান। নতুন এনকোডযুক্ত উপাদানটির ইনপুট ধারক হিসাবে একই ধরণের এবং সামগ্রী থাকবে তবে তা ট্যাগ নির্দিষ্ট আর্গুমেন্টে সেট করা হবে। সরবরাহকৃত উপাদান একটি হয়, তাহলে TLV ধারক (গঠন, বিন্যাস বা পথ), ধারক সমগ্র সামগ্রী অনুলিপি করা হবে।

বিশদ
পরামিতি
[in] tag
TLV ট্যাগ বা ধারক সাথে এনকোডেড করতে হবে, AnonymousTag যদি ধারক একটি ট্যাগ ছাড়া এনকোড করা উচিত। ট্যাগ মান ট্যাগ সংজ্ঞা ফাংশন এক সঙ্গে নির্মাণ করা উচিত ProfileTag () , ContextTag () বা CommonTag ()
[in] reader
একটি একটি রেফারেন্সTLVReader বস্তুর একটি প্রাক এনকোডেড চিহ্নিতকরণের TLV উপাদান যার প্রকার ও মান কপি দিতে হবে।
রিটার্ন মান
WEAVE_NO_ERROR
যদি পদ্ধতিটি সফল হয়।
WEAVE_ERROR_INCORRECT_STATE
সরবরাহক পাঠক যদি কোনও উপাদানের উপরে অবস্থান না করে থাকে।
WEAVE_ERROR_TLV_CONTAINER_OPEN
যদি কোনও ধারক লেখক বর্তমান লেখকের জন্য খোলা হয় এবং এখনও বন্ধ না হয়।
WEAVE_ERROR_TLV_UNDERRUN
অন্তর্নিহিত তাহলে TLV অকালে শেষ হয়ে সরবরাহকৃত পাঠক সঙ্গে যুক্ত এনকোডিং।
WEAVE_ERROR_INVALID_TLV_ELEMENT
সরবরাহকৃত পাঠক একটি অবৈধ বা অসমর্থিত সম্মুখীন তাহলে TLV উপাদান প্রকার।
WEAVE_ERROR_INVALID_TLV_TAG
সরবরাহকৃত পাঠক একটি সম্মুখীন হলে TLV একটি অবৈধ প্রেক্ষাপটে ট্যাগ, অথবা যদি সরবরাহকৃত ট্যাগ অবৈধ বা প্রসঙ্গের যা নতুন ধারক লেখা হচ্ছে এ অনুপযুক্ত।
WEAVE_ERROR_BUFFER_TOO_SMALL
মান লেখালেখি লেখক যখন আরম্ভ করা হয়েছিল তখন সর্বাধিক সংখ্যক বাইটের সীমা অতিক্রম করবে।
WEAVE_ERROR_NO_MEMORY
যদি কোনও আউটপুট বাফার বরাদ্দ করার প্রচেষ্টা মেমরির অভাবে ব্যর্থ হয়।
other
অন্যান্য ওয়েভ বা প্ল্যাটফর্ম-নির্দিষ্ট ত্রুটিগুলি কনফিগার করা গেটনিউফার () বা ফাইনালাইজবফার () ফাংশনগুলি দ্বারা, বা পাঠক বস্তুর সাথে সম্পর্কিত গেটনেক্সটবার () ফাংশন দ্বারা ফিরে এসেছে।

sTagSizes

const uint8_t sTagSizes[] = { 0, 1, 2, 4, 2, 4, 6, 8 }

কার্যাদি

কমনট্যাগ

uint64_t CommonTag(
  uint32_t tagNum
)

একটি সাধারণ প্রোফাইলের এপিআই উপস্থাপনা উত্পন্ন TLV ট্যাগ।

বিশদ
পরামিতি
[in] tagNum
ট্যাগ হিসাবে নির্ধারিত সাধারণ প্রোফাইল ট্যাগ নম্বর।
ফিরে আসে
ট্যাগটি উপস্থাপন করে একটি 64-বিট পূর্ণসংখ্যা।

কনটেক্সট্যাগ

uint64_t ContextTag(
  uint8_t tagNum
)

প্রসঙ্গ-নির্দিষ্ট জন্য API উপস্থাপনা উত্পন্ন TLV ট্যাগ।

বিশদ
পরামিতি
[in] tagNum
প্রসঙ্গ নির্দিষ্ট ট্যাগ নম্বর ট্যাগ।
ফিরে আসে
ট্যাগটি উপস্থাপন করে একটি 64-বিট পূর্ণসংখ্যা।

গেটটিএলভিফিল্ড সাইজ

TLVFieldSize GetTLVFieldSize(
  uint8_t type
)

ইসকন্টেক্সট্যাগ ag

bool IsContextTag(
  uint64_t tag
)

সরবরাহকৃত ট্যাগটি একটি প্রাসঙ্গিক-নির্দিষ্ট ট্যাগ হলে সত্য হয়।

#ProfileTag

bool IsProfileTag(
  uint64_t tag
)

সরবরাহ করা ট্যাগের সত্যটি ফিরে আসে একটি প্রোফাইল-নির্দিষ্ট ট্যাগ।

ইসস্পেশিয়াল ট্যাগ

bool IsSpecialTag(
  uint64_t tag
)

ইসভালিডটিএলভিটাইপ

bool IsValidTLVType(
  uint8_t type
)

রিটার্নস সত্য যদি নির্দিষ্ট করা TLV টাইপ বৈধ।

বিশদ
ফিরে আসে
true যদি নির্দিষ্ট করা TLV টাইপ বৈধ; অন্যথায় false

প্রোফাইলআইডফ্র্যামটাগ

uint32_t ProfileIdFromTag(
  uint64_t tag
)

A থেকে প্রোফাইল আইডি ফেরত পাঠায় TLV ট্যাগ।

বিশদ
পরামিতি
[in] tag
একটি প্রোফাইল-নির্দিষ্ট এপিআই উপস্থাপনা TLV ট্যাগ।
ফিরে আসে
প্রোফাইল আইডি।

প্রোফাইলনামফ্র্যামটাগ

uint16_t ProfileNumFromTag(
  uint64_t tag
)

A থেকে প্রফাইল সংখ্যা TLV ট্যাগ।

বিশদ
পরামিতি
[in] tag
একটি প্রোফাইল-নির্দিষ্ট এপিআই উপস্থাপনা TLV ট্যাগ।
ফিরে আসে
সম্পর্কিত প্রোফাইল নম্বর।

প্রোফাইল ট্যাগ

uint64_t ProfileTag(
  uint32_t profileId,
  uint32_t tagNum
)

একটি প্রোফাইল-নির্দিষ্ট এপিআই উপস্থাপনা উত্পন্ন TLV একটি প্রোফাইল আইডি এবং ট্যাগ সংখ্যা থেকে ট্যাগ।

বিশদ
পরামিতি
[in] profileId
ট্যাগটির সংজ্ঞায়িত প্রোফাইলের আইডি।
[in] tagNum
ট্যাগটি নির্দিষ্ট করা প্রোফাইল-নির্দিষ্ট ট্যাগ নম্বর।
ফিরে আসে
ট্যাগটি উপস্থাপন করে একটি 64-বিট পূর্ণসংখ্যা।

প্রোফাইল ট্যাগ

uint64_t ProfileTag(
  uint16_t vendorId,
  uint16_t profileNum,
  uint32_t tagNum
)

একটি প্রোফাইল-নির্দিষ্ট এপিআই উপস্থাপনা উত্পন্ন TLV বিক্রেতা আইডি, প্রোফাইল নম্বর এবং ট্যাগ সংখ্যা থেকে ট্যাগ।

বিশদ
পরামিতি
[in] vendorId
ট্যাগ সংজ্ঞায়িত বিক্রেতার আইডি The
[in] profileNum
যে প্রোফাইলটির মধ্যে ট্যাগটি সংজ্ঞায়িত করা হয়েছে তার জন্য বিক্রেতা নির্ধারিত নম্বর।
[in] tagNum
ট্যাগটি নির্দিষ্ট করা প্রোফাইল-নির্দিষ্ট ট্যাগ নম্বর।
ফিরে আসে
ট্যাগটি উপস্থাপন করে একটি 64-বিট পূর্ণসংখ্যা।

টিএলভিফিল্ডসিজোটোবাইটস

uint8_t TLVFieldSizeToBytes(
  TLVFieldSize fieldSize
)

টিএলভিটাইপহ্যাসলেন্থ

bool TLVTypeHasLength(
  uint8_t type
)

রিটার্নস সত্য যদি নির্দিষ্ট করা TLV টাইপ এই ক্ষেত্রে সংশ্লিষ্ট দৈর্ঘ্য ক্ষেত্রের উপস্থিতি বোঝা।

বিশদ
ফিরে আসে
true যদি নির্দিষ্ট করা TLV টাইপ কোনো সংযুক্ত দৈর্ঘ্য ক্ষেত্রের উপস্থিতি বোঝা; অন্যথায় false

TLVTypeHasValue

bool TLVTypeHasValue(
  uint8_t type
)

রিটার্নস সত্য যদি নির্দিষ্ট করা TLV টাইপ এই ক্ষেত্রে সংশ্লিষ্ট মানটি ক্ষেত্রের উপস্থিতি বোঝা।

বিশদ
ফিরে আসে
true যদি নির্দিষ্ট করা TLV টাইপ কোনো সংযুক্ত মানটি ক্ষেত্রের উপস্থিতি বোঝা; অন্যথায় false

TLVTypeIsContainer

bool TLVTypeIsContainer(
  uint8_t type
)

রিটার্নস সত্য যদি নির্দিষ্ট করা TLV টাইপ একটা ধারক।

বিশদ
ফিরে আসে
true যদি নির্দিষ্ট করা TLV টাইপ একটি ধারক হয়; অন্যথায় false

TLVTypeIsString

bool TLVTypeIsString(
  uint8_t type
)

রিটার্নস সত্য যদি নির্দিষ্ট করা TLV ধরনের একটি UTF8 হওয়া বা বাইট স্ট্রিং।

বিশদ
ফিরে আসে
true যদি নির্দিষ্ট করা TLV ধরনের একটি UTF8 হওয়া বা বাইট স্ট্রিং; অন্যথায় false

ট্যাগনামফ্র্যামটাগ

uint32_t TagNumFromTag(
  uint64_t tag
)

A থেকে ট্যাগ সংখ্যা ফেরত পাঠায় TLV ট্যাগ।

বিশদ
পরামিতি
[in] tag
একটি প্রোফাইল-নির্দিষ্ট বা প্রসঙ্গ-নির্দিষ্ট এপিআই উপস্থাপনা TLV ট্যাগ।
ফিরে আসে
সম্পর্কিত ট্যাগ নম্বর।
আরো দেখুন:
IsProfileTag () এবং IsContextTag ()

VendorIdFromTag

uint16_t VendorIdFromTag(
  uint64_t tag
)

A থেকে বিক্রেতার আইডি ফেরত পাঠায় TLV ট্যাগ।

বিশদ
পরামিতি
[in] tag
একটি প্রোফাইল-নির্দিষ্ট এপিআই উপস্থাপনা TLV ট্যাগ।
ফিরে আসে
সম্পর্কিত বিক্রেতা আইডি।