nl:: Weave:: Profiles:: ReferencedTLVData
#include <src/lib/profiles/common/WeaveMessage.h>
Benzer şekilde, büyük bir eski TLV veri blobunu temsil edebilmemiz gerekir.
Özet
Devralma
Devralır: nl::Weave::Profiles::RetainedPacketBuffer
Oluşturucular ve Yıkıcılar |
|
---|---|
ReferencedTLVData(void)
-------------- TLV verilerinin tanımları --------------
|
Herkese açık türler |
|
---|---|
TLVWriteCallback)(TLV::TLVWriter &aWriter, void *aAppState)
|
typedefvoid(*
|
Herkese açık özellikler |
|
---|---|
theData
|
uint8_t *
|
theLength
|
uint16_t
|
theMaxLength
|
uint16_t
|
Kamu işlevleri |
|
---|---|
free(void)
|
void
Bir ReferencedTLVData nesnesini serbest bırakın; diğer bir deyişle, tanımını kaldırın.
|
init(System::PacketBuffer *aBuffer)
|
Bir PacketBuffer belirtildiğinde ReferencedTLVData nesnesini başlatın.
|
init(MessageIterator & i)
|
MessageIterator ile bir ReferencedTLVData nesnesini başlatın.
|
init(uint16_t aLength, uint16_t aMaxLength, uint8_t *aByteString)
|
Bayt dizesiyle bir ReferencedTLVObject'i başlatın.
|
init(TLVWriteCallback aWriteCallback, void *anAppState)
|
Bir geri çağırma işlevi verilen RefererencedTLVData nesnesini başlatın.
|
isEmpty(void)
|
bool
ReferencedTLVData nesnesinin içinde herhangi bir şey olup olmadığını kontrol edin.
|
isFree(void)
|
bool
ReferencedTLVData nesnesinin "free" olup olmadığını kontrol edin (ör.
|
operator==(const ReferencedTLVData &) const
|
bool
Eşitlik açısından ReferencedTLVData nesnesini başka bir öğeyle karşılaştırarak kontrol edin.
|
pack(System::PacketBuffer *buff)
|
ReferencedTLVData nesnesini doğrudan bir PacketBuffer içine paketleyin.
|
pack(MessageIterator & i, uint32_t maxLen)
|
|
packedLength(void)
|
uint16_t
Nesnenin bir arabelleğe yerleştirilmiş olduğu varsayılarak veri uzunluğunu döndürün.
|
Herkese açık statik işlevler |
|
---|---|
parse(System::PacketBuffer *buff, ReferencedTLVData & aTarget)
|
Sağlanan bir PacketBuffer'dan ReferencedTLVData nesnesini ayrıştırın.
|
parse(MessageIterator & i, ReferencedTLVData & aTarget)
|
Sağlanan bir MessageIterator öğesinden bir ReferencedTLVData nesnesini ayrıştırın.
|
Herkese açık türler
TLVWriteCallback
void(* TLVWriteCallback)(TLV::TLVWriter &aWriter, void *aAppState)
Herkese açık özellikler
theData
uint8_t * theData
theLength
uint16_t theLength
theMaxLength
uint16_t theMaxLength
Kamu işlevleri
ReferencedTLVData
ReferencedTLVData( void )
ücretsiz
void free( void )
Bir ReferencedTLVData nesnesini serbest bırakın; diğer bir deyişle, tanımını kaldırın.
init
WEAVE_ERROR init( System::PacketBuffer *aBuffer )
Bir PacketBuffer belirtildiğinde ReferencedTLVData nesnesini başlatın.
TLV dolu bir arabellek dahilinde bir ReferencedTLVData nesnesini başlatın. Bu, arabelleğin YALNIZCA TLV içerdiği varsayılır.
Ayrıntılar | |||
---|---|---|---|
Parametreler |
|
||
Döndürülen Değerler |
|
init
WEAVE_ERROR init( MessageIterator & i )
MessageIterator ile bir ReferencedTLVData nesnesini başlatın.
MessageIterator ile bir ReferencedTLVData nesnesini başlatın. Bu durumda TLV, arabelleğin son kısmıdır ve ona işaret eden bir ileti yineleyiciyi aktarırız.
Ayrıntılar | |||
---|---|---|---|
Parametreler |
|
||
Döndürülen Değerler |
|
init
WEAVE_ERROR init( uint16_t aLength, uint16_t aMaxLength, uint8_t *aByteString )
Bayt dizesiyle bir ReferencedTLVObject'i başlatın.
ReferencedTLVData nesnesini, TLV'yi içeren bir bayt dizesiyle başlatın. Bu başlatıcı, PacketrBuffer yoksa paketlemek ve göndermek için bunlardan birini oluşturduğumuz için kullanıyoruz.
Ayrıntılar | |||||||
---|---|---|---|---|---|---|---|
Parametreler |
|
||||||
Döndürülen Değerler |
|
init
WEAVE_ERROR init( TLVWriteCallback aWriteCallback, void *anAppState )
Bir geri çağırma işlevi verilen RefererencedTLVData nesnesini başlatın.
Bir ReferencedTLVData nesnesini başlatın. Bu sürüm, verileri açık bir şekilde sağlamak yerine işlev, yazma geri çağırması ve başvurulan verilerin paketlenmesi ve gönderilmesi gerektiğinde bir TLVWriter nesnesiyle birlikte kendisine aktarılacak bir referans nesnesi sağlar. Söz konusu geri çağırmanın imzası:
typedef void (*TLVWriteCallback)(TLV::TLVWriter &aWriter, void *aAppState);
Ayrıntılar | |||||
---|---|---|---|---|---|
Parametreler |
|
||||
Döndürülen Değerler |
|
isEmpty
bool isEmpty( void )
ReferencedTLVData nesnesinin içinde herhangi bir şey olup olmadığını kontrol edin.
Böyle bir nesnenin bir şeye "sahip olabileceği" iki yol vardır. Uzunluğu 0 olabilir VEYA yazma geri çağırması olmayabilir.
Ayrıntılar | |
---|---|
İadeler |
Veri kümesi 0 uzunluktaysa veya elde geri çağırma yoksa doğru, aksi takdirde yanlış değerini alır.
|
isFree
bool isFree( void )
ReferencedTLVData nesnesinin "free" olup olmadığını kontrol edin (ör.
tanımlanmadı.
Ayrıntılar | |
---|---|
İadeler |
nesne tanımlanmamışsa true (doğru), değilse false (yanlış) değerini alır.
|
operatör==
bool operator==( const ReferencedTLVData & ) const
Eşitlik açısından ReferencedTLVData nesnesini başka bir öğeyle karşılaştırarak kontrol edin.
Bunun yalnızca, bir tampon veya dizeyle desteklenen gerçek verileri olan iki nesne söz konusu olduğunda mantıklı olduğunu unutmayın.
Ayrıntılar | |||||
---|---|---|---|---|---|
Parametreler |
|
||||
Döndürülen Değerler |
|
paket
WEAVE_ERROR pack( System::PacketBuffer *buff )
ReferencedTLVData nesnesini doğrudan bir PacketBuffer içine paketleyin.
Ayrıntılar | |||
---|---|---|---|
Parametreler |
|
||
İadeler |
temel paket çağrısının başarısını yansıtan bir WEAVE_ERROR.
|
paket
WEAVE_ERROR pack( MessageIterator & i, uint32_t maxLen )
packedLength
uint16_t packedLength( void )
Nesnenin bir arabelleğe yerleştirilmiş olduğu varsayılarak veri uzunluğunu döndürün.
Ayrıntılar | |
---|---|
İadeler |
paketlenmiş verilerin tam sayı uzunluğu.
|
Herkese açık statik işlevler
parse
WEAVE_ERROR parse( System::PacketBuffer *buff, ReferencedTLVData & aTarget )
Sağlanan bir PacketBuffer'dan ReferencedTLVData nesnesini ayrıştırın.
Bir ReferencedTLVData nesnesini inet arabelleğinden ayrıştırın (yalnızca TLV içerdiği varsayılır).
Ayrıntılar | |||||
---|---|---|---|---|---|
Parametreler |
|
||||
İadeler |
temel ayrıştırma çağrısının başarısını yansıtan bir WEAVE_ERROR.
|
parse
WEAVE_ERROR parse( MessageIterator & i, ReferencedTLVData & aTarget )
Sağlanan bir MessageIterator öğesinden bir ReferencedTLVData nesnesini ayrıştırın.
İletinin TLV bölümünü işaret ettiği varsayılan bir MessageIterator nesnesinden ReferenceTLVData nesnesini ayrıştırın.
TLV arabellekte kaldığı ve hiçbir şekilde değiştirilmediği için burada gerçek bir "ayrıştırma" işleminin yapılmadığını unutmayın. Bu yöntem esas olarak, daha sonra kullanılmak üzere ReferencedTLVData yapısını ayarlar.
Ayrıntılar | |||||
---|---|---|---|---|---|
Parametreler |
|
||||
Döndürülen Değerler |
|