nl:: بافت:: TLV
تعاریف کار با داده های کدگذاری شده در قالب Weave TLV .
خلاصه
Weave TLV یک روش رمزگذاری تعمیم یافته برای داده های ساختار یافته ساده است. ویژگیهای بسیاری را با فرمت سریالسازی JSON که معمولاً مورد استفاده قرار میگیرد به اشتراک میگذارد در حالی که به طور قابل توجهی فشردهتر است.
شمارش ها | |
---|---|
@71 | enum |
@73 | enum |
@74 { | enum |
@75 | enum |
TLVCommonProfiles { | enum |
TLVElementType | enum |
TLVFieldSize | enum |
TLVTagControl | enum |
TLVTagFields | enum |
TLVType | enum شمارشی که نوع عنصر 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 نمایش API یک تگ TLV نمایه مشترک را ایجاد می کند. |
ContextTag (uint8_t tagNum) | uint64_t نمایش API را برای برچسب TLV مختص زمینه ایجاد می کند. |
GetTLVFieldSize (uint8_t type) | TLVFieldSize |
IsContextTag (uint64_t tag) | bool اگر تگ ارائه شده یک تگ مختص زمینه باشد، مقدار true را برمیگرداند. |
IsProfileTag (uint64_t tag) | bool برگردان واقعی تگ ارائه شده یک تگ مخصوص پروفایل است. |
IsSpecialTag (uint64_t tag) | bool |
IsValidTLVType (uint8_t type) | bool اگر نوع TLV مشخص شده معتبر باشد، true را برمیگرداند. |
ProfileIdFromTag (uint64_t tag) | uint32_t شناسه نمایه را از یک تگ TLV برمیگرداند. |
ProfileNumFromTag (uint64_t tag) | uint16_t شماره نمایه را از یک برچسب TLV برمیگرداند. |
ProfileTag (uint32_t profileId, uint32_t tagNum) | uint64_t نمایش API یک تگ TLV مخصوص پروفایل را از شناسه و شماره تگ نمایه ایجاد می کند. |
ProfileTag (uint16_t vendorId, uint16_t profileNum, uint32_t tagNum) | uint64_t نمایش API یک برچسب TLV خاص نمایه را از شناسه فروشنده، شماره نمایه و شماره برچسب ایجاد می کند. |
TLVFieldSizeToBytes (TLVFieldSize fieldSize) | uint8_t |
TLVTypeHasLength (uint8_t type) | bool اگر نوع TLV مشخص شده دلالت بر وجود یک فیلد طول مرتبط داشته باشد، true را برمیگرداند. |
TLVTypeHasValue (uint8_t type) | bool اگر نوع TLV مشخص شده دلالت بر وجود یک فیلد مقدار مرتبط داشته باشد، true را برمیگرداند. |
TLVTypeIsContainer (uint8_t type) | bool اگر نوع TLV مشخص شده یک ظرف باشد، مقدار true را برمیگرداند. |
TLVTypeIsString (uint8_t type) | bool اگر نوع TLV مشخص شده یک رشته UTF8 یا بایت باشد، مقدار true را برمیگرداند. |
TagNumFromTag (uint64_t tag) | uint32_t شماره برچسب را از یک برچسب TLV برمیگرداند. |
VendorIdFromTag (uint64_t tag) | uint16_t شناسه فروشنده را از یک تگ TLV برمیگرداند. |
کلاس ها | |
---|---|
nl:: بافت:: TLV:: CircularTLVReader | |
nl:: بافت:: TLV:: دایره ایTLVWriter | |
nl:: بافت:: TLV:: TLVReader | یک تجزیه کننده کارآمد حافظه برای داده های کدگذاری شده در قالب Weave TLV فراهم می کند. |
nl:: بافت:: TLV:: TLVUpdater | یک رابط Reader/Writer یکپارچه برای ویرایش/افزودن/حذف عناصر در رمزگذاری TLV فراهم می کند. |
nl:: بافت:: TLV:: TLVWriter | یک رمزگذار کارآمد حافظه برای نوشتن داده ها در قالب Weave TLV ارائه می دهد. |
nl:: بافت:: TLV:: WeaveCircularTLVBuffer | WeaveCircularTLVBuffer ذخیره سازی دایره ای برای nl::Weave::TLV::TLVWriter و nl::Weave::TLVTLVReader فراهم می کند. |
فضاهای نام | |
---|---|
nl:: بافت:: TLV:: اشکال زدایی | این فضای نام شامل انواع و رابطهایی برای اشکالزدایی و ورود به سیستم Weave TLV است. |
nl:: بافت:: TLV:: ابزار | این فضای نام شامل انواع و رابط های کاربردی برای مدیریت و کار با Weave TLV است. |
شمارش ها
@71
@71
@73
@73
@74
@74
خواص | |
---|---|
AnonymousTag | مقداری که نشان دهنده یک عنصر TLV است که برچسب ندارد (به عنوان مثال یک عنصر ناشناس). |
@75
@75
TLVCommonProfiles
TLVCommonProfiles
خواص | |
---|---|
kProfileIdNotSpecified | برای نشان دادن عدم وجود شناسه پروفایل در یک متغیر یا عضو استفاده می شود. این اساساً همان kWeaveProfile_NotSpecified است که در WeaveProfiles.h تعریف شده است. |
TLVElementType
TLVElementType
TLVFieldSize
TLVFieldSize
TLVTagControl
TLVTagControl
TLVTagFields
TLVTagFields
متغیرها
kWeaveTLVCopyChunkSize
const size_t kWeaveTLVCopyChunkSize = 16
یک عنصر TLV را از یک شی خواننده در رایتر کپی می کند.
متد CopyElement() یک عنصر TLV جدید را رمزگذاری می کند که نوع و مقدار آن از یک شی TLVReader گرفته شده است. هنگامی که متد فراخوانی می شود، انتظار می رود که شی خواننده ارائه شده روی عنصر TLV منبع قرار گیرد. عنصر جدید کدگذاری شده دارای همان نوع و محتویات محفظه ورودی خواهد بود، با این حال برچسب روی آرگومان مشخص شده تنظیم می شود. اگر عنصر ارائه شده یک ظرف TLV (ساختار، آرایه یا مسیر) باشد، کل محتویات ظرف کپی می شود.
جزئیات | |||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
پارامترها |
| ||||||||||||||||||
ارزش های بازگشتی |
|
sTagSizes
const uint8_t sTagSizes[] = { 0, 1, 2, 4, 2, 4, 6, 8 }
توابع
CommonTag
uint64_t CommonTag( uint32_t tagNum )
نمایش API یک تگ TLV نمایه مشترک را ایجاد می کند.
جزئیات | |||
---|---|---|---|
پارامترها |
| ||
برمی گرداند | یک عدد صحیح 64 بیتی که نشان دهنده تگ است. |
ContextTag
uint64_t ContextTag( uint8_t tagNum )
نمایش API را برای برچسب TLV مختص زمینه ایجاد می کند.
جزئیات | |||
---|---|---|---|
پارامترها |
| ||
برمی گرداند | یک عدد صحیح 64 بیتی که نشان دهنده تگ است. |
GetTLVFieldSize
TLVFieldSize GetTLVFieldSize( uint8_t type )
IsContextTag
bool IsContextTag( uint64_t tag )
اگر تگ ارائه شده یک تگ مختص زمینه باشد، مقدار true را برمیگرداند.
IsProfileTag
bool IsProfileTag( uint64_t tag )
برگردان واقعی تگ ارائه شده یک تگ مخصوص پروفایل است.
IsSpecialTag
bool IsSpecialTag( uint64_t tag )
IsValidTLVType
bool IsValidTLVType( uint8_t type )
ProfileIdFromTag
uint32_t ProfileIdFromTag( uint64_t tag )
ProfileNumFromTag
uint16_t ProfileNumFromTag( uint64_t tag )
تگ پروفایل
uint64_t ProfileTag( uint32_t profileId, uint32_t tagNum )
نمایش API یک تگ TLV مخصوص پروفایل را از شناسه و شماره تگ نمایه ایجاد می کند.
جزئیات | |||||
---|---|---|---|---|---|
پارامترها |
| ||||
برمی گرداند | یک عدد صحیح 64 بیتی که نشان دهنده تگ است. |
تگ پروفایل
uint64_t ProfileTag( uint16_t vendorId, uint16_t profileNum, uint32_t tagNum )
نمایش API یک برچسب TLV خاص نمایه را از شناسه فروشنده، شماره نمایه و شماره برچسب ایجاد می کند.
جزئیات | |||||||
---|---|---|---|---|---|---|---|
پارامترها |
| ||||||
برمی گرداند | یک عدد صحیح 64 بیتی که نشان دهنده تگ است. |
TLVFieldSizeToBytes
uint8_t TLVFieldSizeToBytes( TLVFieldSize fieldSize )
TLVTypeHasLength
bool TLVTypeHasLength( uint8_t type )
TLVTypeHasValue
bool TLVTypeHasValue( uint8_t type )
TLVTypeIsContainer
bool TLVTypeIsContainer( uint8_t type )
TLVTypeIsString
bool TLVTypeIsString( uint8_t type )
TagNumFromTag
uint32_t TagNumFromTag( uint64_t tag )
شماره برچسب را از یک برچسب TLV برمیگرداند.
جزئیات | |||
---|---|---|---|
پارامترها |
| ||
برمی گرداند | شماره برچسب مرتبط |
IsProfileTag() و IsContextTag()
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates. The OPENTHREAD and related marks are trademarks of the Thread Group and are used under license.
تاریخ آخرین بهروزرسانی 2024-11-13 بهوقت ساعت هماهنگ جهانی.