En Google, luchamos por la equidad racial de la comunidad negra. Más información
Se usó la API de Cloud Translation para traducir esta página.
Switch to English

nl :: Tejido:: Perfiles: ReferencedTLVData

#include <src/lib/profiles/common/WeaveMessage.h>

De manera similar, debemos ser capaces de representar una gran cantidad de datos TLV .

Resumen

Herencia

Se hereda de: nl :: Weave :: Profiles :: RetainedPacketBuffer

Constructores y Destructores

ReferencedTLVData (void)
-------------- definiciones para datos TLV --------------

Tipos públicos

TLVWriteCallback )(TLV::TLVWriter &aWriter, void *aAppState) typedef
void(*

Atributos públicos

theData
uint8_t *
theLength
uint16_t
theMaxLength
uint16_t

Funciones publicas

free (void)
void
Libere un objeto ReferencedTLVData , es decir, elimínelo.
init ( System::PacketBuffer *aBuffer)
Inicialice el objeto ReferencedTLVData dado un PacketBuffer.
init ( MessageIterator & i)
Inicialice un objeto ReferencedTLVData dado un MessageIterator .
init (uint16_t aLength, uint16_t aMaxLength, uint8_t *aByteString)
Inicialice un ReferencedTLVObject dado una cadena de bytes.
init (TLVWriteCallback aWriteCallback, void *anAppState)
Inicialice un objeto RefererencedTLVData dada una función de devolución de llamada.
isEmpty (void)
bool
Compruebe si un objeto ReferencedTLVData tiene algo en él.
isFree (void)
bool
Compruebe si un objeto ReferencedTLVData es "gratuito", es decir
operator== (const ReferencedTLVData &) const
bool
Compare un objeto ReferencedTLVData con otro para verificar la igualdad.
pack ( System::PacketBuffer *buff)
Empaquete un objeto ReferencedTLVData directamente en un PacketBuffer.
pack ( MessageIterator & i, uint32_t maxLen)
packedLength (void)
uint16_t
Devuelve la longitud de los datos asumiendo que el objeto se ha empaquetado en un búfer.

Funciones estáticas públicas

parse ( System::PacketBuffer *buff, ReferencedTLVData & aTarget)
Analizar un objeto ReferencedTLVData de un PacketBuffer proporcionado.
parse ( MessageIterator & i, ReferencedTLVData & aTarget)
Analizar un objeto ReferencedTLVData de un MessageIterator proporcionado.

Tipos públicos

TLVWriteCallback

void(* TLVWriteCallback)(TLV::TLVWriter &aWriter, void *aAppState)

Atributos públicos

los datos

uint8_t * theData

la longitud

uint16_t theLength

theMaxLength

uint16_t theMaxLength

Funciones publicas

ReferencedTLVData

 ReferencedTLVData(
  void
)

-------------- definiciones para datos TLV --------------

El constructor sin argumentos para datos TLV . Entrega un objeto libre / no inicializado que debe estar sujeto a uno de los métodos init () definidos aquí para que sea útil.

gratis

void free(
  void
)

Libere un objeto ReferencedTLVData , es decir, elimínelo.

en eso

WEAVE_ERROR init(
  System::PacketBuffer *aBuffer
)

Inicialice el objeto ReferencedTLVData dado un PacketBuffer.

Inicialice un objeto ReferencedTLVData dado un búfer lleno de TLV . Esto supone que el búfer SÓLO contiene TLV .

Detalles
Parámetros
[in] aBuffer
Un búfer de mensajes en el que reside el TLV .
Valores devueltos
WEAVE_NO_ERROR
Incondicionalmente

en eso

WEAVE_ERROR init(
  MessageIterator & i
)

Inicialice un objeto ReferencedTLVData dado un MessageIterator .

Inicialice un objeto ReferencedTLVData dado un MessageIterator . En este caso, el TLV es la última parte del búfer y pasamos un iterador de mensaje que apunta a él.

Detalles
Parámetros
[in] i
Un iterador de mensaje que apunta al TLV que se va a extraer.
Valores devueltos
WEAVE_NO_ERROR
Incondicionalmente

en eso

WEAVE_ERROR init(
  uint16_t aLength,
  uint16_t aMaxLength,
  uint8_t *aByteString
)

Inicialice un ReferencedTLVObject dado una cadena de bytes.

Inicialice el objeto ReferencedTLVData con una cadena de bytes que contenga TLV . Este inicializador es el que usamos si no hay PacketrBuffer porque estamos creando uno de estos para empaquetar y enviar.

Detalles
Parámetros
[in] aLength
Una longitud para los datos de TLV
[in] aMaxLength
La longitud total del búfer
[in] aByteString
Un puntero a los datos de la cadena.
Valores devueltos
WEAVE_NO_ERROR
Incondicionalmente

en eso

WEAVE_ERROR init(
  TLVWriteCallback aWriteCallback,
  void *anAppState
)

Inicialice un objeto RefererencedTLVData dada una función de devolución de llamada.

Inicialice un objeto ReferencedTLVData . En lugar de proporcionar explícitamente los datos, esta versión proporciona la función, la devolución de llamada de escritura y un objeto de referencia, que se le pasará, junto con un objeto TLVWriter, cuando se supone que los datos referenciados se empaquetarán y enviarán. La firma de esa devolución de llamada es:

typedef void (*TLVWriteCallback)(TLV::TLVWriter &aWriter, void *aAppState);

Detalles
Parámetros
[in] aWriteCallback
la función que se llamará cuando sea el momento de escribir algún TLV .
[in] anAppState
un objeto de estado de la aplicación que se pasará a la devolución de llamada junto con el escritor.
Valores devueltos
WEAVE_NO_ERROR
Sobre el éxito.
WEAVE_ERROR_INVALID_ARGUMENT
Si no se proporciona la devolución de llamada de escritura.

esta vacio

bool isEmpty(
  void
)

Compruebe si un objeto ReferencedTLVData tiene algo en él.

Hay dos formas posibles de que un objeto así "tenga" algo. O podría tener una longitud 0 O no podría tener devolución de llamada de escritura.

Detalles
Devoluciones
Es verdadero si el conjunto de datos tiene una longitud 0 o no hay devolución de llamada de escritura en la mano, falso en caso contrario.

está libre

bool isFree(
  void
)

Compruebe si un objeto ReferencedTLVData es "gratuito", es decir

indefinido.

Detalles
Devoluciones
Es verdadero si el objeto no está definido, falso en caso contrario.

operador ==

bool operator==(
  const ReferencedTLVData &
) const 

Compare un objeto ReferencedTLVData con otro para verificar la igualdad.

Tenga en cuenta que esto solo tiene sentido en el caso de dos objetos que tienen datos reales respaldados por un búfer o una cadena.

Detalles
Parámetros
[in] Another
un objeto para comparar
Valores devueltos
true
Los objetos son iguales.
false
Las cadenas de objetos no son iguales.

paquete

WEAVE_ERROR pack(
  System::PacketBuffer *buff
)

Empaquete un objeto ReferencedTLVData directamente en un PacketBuffer.

Detalles
Parámetros
[in] buff
el búfer para llenar.
Devoluciones
un WEAVE_ERROR que refleja el éxito de la llamada del paquete subyacente.

paquete

WEAVE_ERROR pack(
  MessageIterator & i,
  uint32_t maxLen
)

empaquetadoLongitud

uint16_t packedLength(
  void
)

Devuelve la longitud de los datos asumiendo que el objeto se ha empaquetado en un búfer.

Detalles
Devoluciones
la longitud entera de los datos empaquetados.

Funciones estáticas públicas

analizar gramaticalmente

WEAVE_ERROR parse(
  System::PacketBuffer *buff,
  ReferencedTLVData & aTarget
)

Analizar un objeto ReferencedTLVData de un PacketBuffer proporcionado.

Analice un objeto ReferencedTLVData de un búfer inet (asumiendo que solo contiene TLV ).

Detalles
Parámetros
[in] buff
el búfer para leer.
[out] aTarget
un objeto ReferencedTLVData para "llenar" con el resultado.
Devoluciones
un WEAVE_ERROR que refleja el éxito de la llamada de análisis subyacente.

analizar gramaticalmente

WEAVE_ERROR parse(
  MessageIterator & i,
  ReferencedTLVData & aTarget
)

Analizar un objeto ReferencedTLVData de un MessageIterator proporcionado.

Analizar un objeto ReferenceTLVData de un objeto MessageIterator que se supone que apunta a la parte TLV de un mensaje.

Tenga en cuenta que aquí no se realiza ningún "análisis" real, ya que el TLV se deja en el búfer y no se manipula en absoluto. Este método principalmente configura la estructura ReferencedTLVData para su uso posterior.

Detalles
Parámetros
[in] i
Un iterador sobre el mensaje que se está analizando.
[out] aTarget
Un lugar para poner el resultado del análisis.
Valores devueltos
WEAVE_NO_ERROR
Incondicionalmente