nl:: Weave:: Profiles:: ReferencedTLVData
#include <src/lib/profiles/common/WeaveMessage.h>
Musimy też być w stanie przedstawić duży, stary blob danych TLV.
Podsumowanie
Dziedziczenie
Dziedziczy z: nl::Weave::Profiles::RetainedPacketBuffer
Konstruktory i niszczyciele |
|
---|---|
ReferencedTLVData(void)
-------------- definicje danych TLV --------------
|
Typy publiczne |
|
---|---|
TLVWriteCallback)(TLV::TLVWriter &aWriter, void *aAppState)
|
typedefvoid(*
|
Atrybuty publiczne |
|
---|---|
theData
|
uint8_t *
|
theLength
|
uint16_t
|
theMaxLength
|
uint16_t
|
Funkcje publiczne |
|
---|---|
free(void)
|
void
Uwolnij obiekt ReferencedTLVData, czyli cofnij jego definicję.
|
init(System::PacketBuffer *aBuffer)
|
Zainicjuj obiekt ReferencedTLVData dla danego PacketBuffer.
|
init(MessageIterator & i)
|
Zainicjuj obiekt ReferencedTLVData za pomocą obiektu MessageIterator.
|
init(uint16_t aLength, uint16_t aMaxLength, uint8_t *aByteString)
|
Zainicjuj obiekt ReferencedTLVObject za pomocą ciągu bajtów.
|
init(TLVWriteCallback aWriteCallback, void *anAppState)
|
Zainicjuj obiekt RefererencedTLVData z użyciem funkcji wywołania zwrotnego.
|
isEmpty(void)
|
bool
Sprawdź, czy obiekt ReferencedTLVData zawiera cokolwiek.
|
isFree(void)
|
bool
Sprawdź, czy obiekt ReferencedTLVData jest „wolny”, tzn.
|
operator==(const ReferencedTLVData &) const
|
bool
Sprawdź, czy obiekt ReferencedTLVData ma równość.
|
pack(System::PacketBuffer *buff)
|
Zapakuj obiekt ReferencedTLVData bezpośrednio do obiektu PacketBuffer.
|
pack(MessageIterator & i, uint32_t maxLen)
|
|
packedLength(void)
|
uint16_t
Zwraca długość danych przy założeniu, że obiekt został spakowany do bufora.
|
Publiczne funkcje statyczne |
|
---|---|
parse(System::PacketBuffer *buff, ReferencedTLVData & aTarget)
|
Analizuj obiekt ReferencedTLVData z dostarczonego pliku PacketBuffer.
|
parse(MessageIterator & i, ReferencedTLVData & aTarget)
|
Przeanalizuj obiekt ReferencedTLVData z podanego MessageIterator.
|
Typy publiczne
TLVWriteCallback
void(* TLVWriteCallback)(TLV::TLVWriter &aWriter, void *aAppState)
Atrybuty publiczne
theData
uint8_t * theData
theLength
uint16_t theLength
theMaxLength
uint16_t theMaxLength
Funkcje publiczne
ReferencedTLVData
ReferencedTLVData( void )
init
WEAVE_ERROR init( System::PacketBuffer *aBuffer )
Zainicjuj obiekt ReferencedTLVData dla danego PacketBuffer.
Zainicjuj obiekt ReferencedTLVData w buforze pełnym TLV. Zakładamy przy tym, że bufor zawiera TYLKO TLV.
Szczegóły | |||
---|---|---|---|
Parametry |
|
||
Zwracane wartości |
|
init
WEAVE_ERROR init( MessageIterator & i )
Zainicjuj obiekt ReferencedTLVData za pomocą obiektu MessageIterator.
Zainicjuj obiekt ReferencedTLVData za pomocą obiektu MessageIterator. W tym przypadku TLV jest ostatnią częścią bufora i przekazywanym iteratorem komunikatu, który do niej wskazuje.
Szczegóły | |||
---|---|---|---|
Parametry |
|
||
Zwracane wartości |
|
init
WEAVE_ERROR init( uint16_t aLength, uint16_t aMaxLength, uint8_t *aByteString )
Zainicjuj obiekt ReferencedTLVObject za pomocą ciągu bajtów.
Zainicjuj obiekt ReferencedTLVData ciągiem bajtów zawierającym TLV. Tego inicjatora używamy, gdy nie ma obiektu PacketrBuffer, ponieważ tworzymy taki bufor do spakowania i wysłania.
Szczegóły | |||||||
---|---|---|---|---|---|---|---|
Parametry |
|
||||||
Zwracane wartości |
|
init
WEAVE_ERROR init( TLVWriteCallback aWriteCallback, void *anAppState )
Zainicjuj obiekt RefererencedTLVData z użyciem funkcji wywołania zwrotnego.
Zainicjuj obiekt ReferencedTLVData. Zamiast bezpośrednio dostarczać dane, ta wersja udostępnia funkcję, wywołanie zwrotne zapisu i obiekt referencyjny, które są do niej przekazywane wraz z obiektem TLVWriter, gdy przyporządkowane dane powinny zostać spakowane i wysłane. Podpis tego wywołania zwrotnego:
typedef void (*TLVWriteCallback)(TLV::TLVWriter &aWriter, void *aAppState);
Szczegóły | |||||
---|---|---|---|---|---|
Parametry |
|
||||
Zwracane wartości |
|
Puste
bool isEmpty( void )
Sprawdź, czy obiekt ReferencedTLVData zawiera cokolwiek.
Istnieją 2 sposoby, na jakie taki obiekt może „przekazywać” coś. Może mieć 0 długości LUB nie mieć wywołania zwrotnego zapisu.
Szczegóły | |
---|---|
Zwroty |
true (prawda), jeśli zbiór danych ma długość 0 lub nie ma wywołania zwrotnego zapisu. W przeciwnym razie ma wartość false.
|
isFree
bool isFree( void )
Sprawdź, czy obiekt ReferencedTLVData jest „wolny”, tzn.
nie zdefiniowano.
Szczegóły | |
---|---|
Zwroty |
true (prawda), jeśli obiekt jest niezdefiniowany. W przeciwnym razie ma wartość false (fałsz).
|
operator==
bool operator==( const ReferencedTLVData & ) const
Sprawdź, czy obiekt ReferencedTLVData ma równość.
Zwróć uwagę, że ma to sens tylko w przypadku 2 obiektów, które zawierają rzeczywiste dane poparte buforem lub ciągiem znaków.
Szczegóły | |||||
---|---|---|---|---|---|
Parametry |
|
||||
Zwracane wartości |
|
paczka
WEAVE_ERROR pack( System::PacketBuffer *buff )
Zapakuj obiekt ReferencedTLVData bezpośrednio do obiektu PacketBuffer.
Szczegóły | |||
---|---|---|---|
Parametry |
|
||
Zwroty |
błąd WEAVE_ERROR odzwierciedlający powodzenie podstawowego wywołania pakietu.
|
paczka
WEAVE_ERROR pack( MessageIterator & i, uint32_t maxLen )
packedLength
uint16_t packedLength( void )
Zwraca długość danych przy założeniu, że obiekt został spakowany do bufora.
Szczegóły | |
---|---|
Zwroty |
liczba całkowita długości spakowanych danych.
|
Publiczne funkcje statyczne
analizowa
WEAVE_ERROR parse( System::PacketBuffer *buff, ReferencedTLVData & aTarget )
Analizuj obiekt ReferencedTLVData z dostarczonego pliku PacketBuffer.
Przeprowadź analizę obiektu ReferencedTLVData z bufora początkowego (przy założeniu, że zawiera on tylko obiekt TLV).
Szczegóły | |||||
---|---|---|---|---|---|
Parametry |
|
||||
Zwroty |
błąd WEAVE_ERROR odzwierciedlający powodzenie podstawowego wywołania analizy.
|
analizowa
WEAVE_ERROR parse( MessageIterator & i, ReferencedTLVData & aTarget )
Przeanalizuj obiekt ReferencedTLVData z podanego MessageIterator.
Przeanalizuj obiekt ReferenceTLVData z obiektu MessageIterator, który zakłada, że wskazuje część wiadomości TLV.
Pamiętaj, że nie można stosować funkcji „analizowania” w tym przypadku, ponieważ TLV pozostaje w buforze i nie jest poddawany manipulacjom. Ta metoda służy głównie do konfigurowania struktury ReferencedTLVData do późniejszego użycia.
Szczegóły | |||||
---|---|---|---|---|---|
Parametry |
|
||||
Zwracane wartości |
|