nl:: Weave:: TLV
Weave TLV biçiminde kodlanmış verilerle çalışmaya ilişkin tanımlar.
Özet
Weave TLV, basit yapılandırılmış veriler için genelleştirilmiş bir kodlama yöntemidir. Yaygın olarak kullanılan JSON serileştirme biçimiyle birçok özelliği paylaşır ve kablo üzerinde çok daha kompakttır.
Sıralamalar |
|
---|---|
@71
|
enum |
@73
|
enum |
@74{
|
enum |
@75
|
enum |
TLVCommonProfiles{
|
enum |
TLVElementType
|
enum |
TLVFieldSize
|
enum |
TLVTagControl
|
enum |
TLVTagFields
|
enum |
TLVType
|
enum TLV öğesi türünü tanımlayan bir numaralandırma. |
Değişkenler |
|
---|---|
kWeaveTLVCopyChunkSize = 16
|
const size_t
Bir okuyucu nesnesinden TLV öğesini yazara kopyalar.
|
sTagSizes = { 0, 1, 2, 4, 2, 4, 6, 8 }[]
|
const uint8_t
|
İşlevler |
|
---|---|
CommonTag(uint32_t tagNum)
|
uint64_t
Ortak bir profil TLV etiketinin API temsilini oluşturur.
|
ContextTag(uint8_t tagNum)
|
uint64_t
Bağlama özgü TLV etiketinin API temsilini oluşturur.
|
GetTLVFieldSize(uint8_t type)
|
TLVFieldSize
|
IsContextTag(uint64_t tag)
|
bool
Sağlanan etiket bağlama özgü bir etiketse true değerini döndürür.
|
IsProfileTag(uint64_t tag)
|
bool
Sağlanan etiket profile özel bir etiketse "true" değerini döndürür.
|
IsSpecialTag(uint64_t tag)
|
bool
|
IsValidTLVType(uint8_t type)
|
bool
Belirtilen TLV türü geçerliyse true değerini döndürür.
|
ProfileIdFromTag(uint64_t tag)
|
uint32_t
TLV etiketindeki profil kimliğini döndürür.
|
ProfileNumFromTag(uint64_t tag)
|
uint16_t
TLV etiketindeki profil numarasını döndürür.
|
ProfileTag(uint32_t profileId, uint32_t tagNum)
|
uint64_t
Bir profil kimliği ve etiket numarasından profile özgü TLV etiketinin API gösterimini oluşturur.
|
ProfileTag(uint16_t vendorId, uint16_t profileNum, uint32_t tagNum)
|
uint64_t
Tedarikçi firma kimliği, profil numarası ve etiket numarasından profile özgü bir TLV etiketinin API gösterimini oluşturur.
|
TLVFieldSizeToBytes(TLVFieldSize fieldSize)
|
uint8_t
|
TLVTypeHasLength(uint8_t type)
|
bool
Belirtilen TLV türü, ilişkili bir uzunluk alanının varlığını ifade ediyorsa true değerini döndürür.
|
TLVTypeHasValue(uint8_t type)
|
bool
Belirtilen TLV türü, ilişkili bir değer alanının varlığını ifade ediyorsa true değerini döndürür.
|
TLVTypeIsContainer(uint8_t type)
|
bool
Belirtilen TLV türü bir kapsayıcıysa true değerini döndürür.
|
TLVTypeIsString(uint8_t type)
|
bool
Belirtilen TLV türü bir UTF8 veya bayt dizesiyse true değerini döndürür.
|
TagNumFromTag(uint64_t tag)
|
uint32_t
TLV etiketindeki etiket numarasını döndürür.
|
VendorIdFromTag(uint64_t tag)
|
uint16_t
TLV etiketinden tedarikçi firma kimliğini döndürür.
|
Sınıflar |
|
---|---|
nl:: |
|
nl:: |
|
nl:: |
Weave TLV biçiminde kodlanmış veriler için bellek açısından verimli bir ayrıştırıcı sağlar. |
nl:: |
TLV kodlamasındaki öğeleri düzenlemek/eklemek/silmek için birleşik bir Okuyucu/Yazar arayüzü sunar. |
nl:: |
Weave TLV biçiminde veri yazmak için bellek açısından verimli bir kodlayıcı sağlar. |
nl:: |
WeaveCircularTLVBuffer nl::Weave::TLV::TLVWriter ve nl::Weave::TLVTLVReader için dairesel depolama alanı sağlar. |
Ad alanları |
|
---|---|
nl:: |
Bu ad alanı, hata ayıklamak ve Weave TLV'yi günlüğe kaydetmek için kullanılan türler ve arayüzler içerir. |
nl:: |
Bu ad alanı, Weave TLV'yi yönetmek ve çalışmak için kullanılan türleri ve yardımcı program arayüzlerini içerir. |
Sıralamalar
@71
@71
@73
@73
@74
@74
Özellikler | |
---|---|
AnonymousTag
|
Etiketi olmayan bir TLV öğesini belirten değer (ör. anonim bir öğe) kullanır. |
75'te
@75
TLVCommonProfiles
TLVCommonProfiles
Özellikler | |
---|---|
kProfileIdNotSpecified
|
Bir değişkende veya üyede profil kimliği olmadığını belirtmek için kullanılır. Bu, temelde WeaveProfiles.h dosyasında tanımlanan kWeaveProfile_NotSpecified ile aynıdır. |
TLVElementType
TLVElementType
TLVFieldSize
TLVFieldSize
TLVTagControl
TLVTagControl
TLVTagFields
TLVTagFields
Değişkenler
kWeaveTLVCopyChunkSize
const size_t kWeaveTLVCopyChunkSize = 16
Bir okuyucu nesnesinden TLV öğesini yazara kopyalar.
CopyElement() yöntemi, türü ve değeri bir TLVReader nesnesinden alınan yeni TLV öğesini kodlar. Yöntem çağrıldığında, sağlanan okuyucu nesnesinin kaynak TLV öğesine yerleştirilmesi beklenir. Yeni kodlanmış öğe, giriş kapsayıcısıyla aynı tür ve içeriğe sahip olur, ancak etiket belirtilen bağımsız değişkene ayarlanır. Sağlanan öğe bir TLV kapsayıcısıysa (yapı, dizi veya yol) kapsayıcının tüm içeriği kopyalanır.
Ayrıntılar | |||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parametreler |
|
||||||||||||||||||
Döndürülen Değerler |
|
sTagSizes
const uint8_t sTagSizes[] = { 0, 1, 2, 4, 2, 4, 6, 8 }
İşlevler
CommonTag
uint64_t CommonTag( uint32_t tagNum )
Ortak bir profil TLV etiketinin API temsilini oluşturur.
Ayrıntılar | |||
---|---|---|---|
Parametreler |
|
||
İadeler |
Etiketi temsil eden 64 bitlik bir tam sayı.
|
ContextTag
uint64_t ContextTag( uint8_t tagNum )
Bağlama özgü TLV etiketinin API temsilini oluşturur.
Ayrıntılar | |||
---|---|---|---|
Parametreler |
|
||
İadeler |
Etiketi temsil eden 64 bitlik bir tam sayı.
|
GetTLVFieldSize
TLVFieldSize GetTLVFieldSize( uint8_t type )
IsContextTag
bool IsContextTag( uint64_t tag )
Sağlanan etiket bağlama özgü bir etiketse true değerini döndürür.
IsProfileTag
bool IsProfileTag( uint64_t tag )
Sağlanan etiket profile özel bir etiketse "true" değerini döndürür.
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 )
ProfileTag
uint64_t ProfileTag( uint32_t profileId, uint32_t tagNum )
Bir profil kimliği ve etiket numarasından profile özgü TLV etiketinin API gösterimini oluşturur.
Ayrıntılar | |||||
---|---|---|---|---|---|
Parametreler |
|
||||
İadeler |
Etiketi temsil eden 64 bitlik bir tam sayı.
|
ProfileTag
uint64_t ProfileTag( uint16_t vendorId, uint16_t profileNum, uint32_t tagNum )
Tedarikçi firma kimliği, profil numarası ve etiket numarasından profile özgü bir TLV etiketinin API gösterimini oluşturur.
Ayrıntılar | |||||||
---|---|---|---|---|---|---|---|
Parametreler |
|
||||||
İadeler |
Etiketi temsil eden 64 bitlik bir tam sayı.
|
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 etiketindeki etiket numarasını döndürür.
Ayrıntılar | |||
---|---|---|---|
Parametreler |
|
||
İadeler |
İlişkilendirilmiş etiket numarası.
|
IsProfileTag() ve IsContextTag()