En Google, luchamos por la equidad racial de la comunidad negra. Más información

nl :: Tejido:: Perfiles: ReferencedTLVData

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

Del mismo modo, tenemos que ser capaces de representar una gran mancha de edad de TLV de datos.

Resumen

Herencia

Hereda de: nl :: Armadura :: Perfiles :: RetainedPacketBuffer

Constructores y Destructores

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

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
Liberar a un ReferencedTLVData objeto, es decir, que undefine.
init ( System::PacketBuffer *aBuffer)
Inicializar el ReferencedTLVData objeto dado un PacketBuffer.
init ( MessageIterator & i)
Inicialice un ReferencedTLVData objeto 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
Comprobar si un ReferencedTLVData objeto tiene nada en ella.
isFree (void)
bool
Comprobar si un ReferencedTLVData objeto es "libre", es decir,
operator== (const ReferencedTLVData &) const
bool
Disponibilidad de una ReferencedTLVData objeto contra otro por la igualdad.
pack ( System::PacketBuffer *buff)
Paquete de una ReferencedTLVData objeto directamente en una 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)
Analiza una ReferencedTLVData objeto desde una PacketBuffer suministrado.
parse ( MessageIterator & i, ReferencedTLVData & aTarget)
Analiza una ReferencedTLVData objeto desde una suministrado MessageIterator .

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 TLV datos --------------

El constructor sin argumentos para TLV de datos. Proporciona un objeto libre / no inicializado que deben ser sometidos a uno de los init () métodos definidos aquí con el fin de ser útil.

libre

void free(
  void
)

Liberar a un ReferencedTLVData objeto, es decir, que undefine.

en eso

WEAVE_ERROR init(
  System::PacketBuffer *aBuffer
)

Inicializar el ReferencedTLVData objeto dado un PacketBuffer.

Inicialice un ReferencedTLVData objeto dado un búfer lleno de TLV . Esto supone que el tampón contiene SOLAMENTE TLV .

Detalles
Parámetros
[in] aBuffer
Una memoria intermedia de mensajes en la que los TLV reside.
Valores devueltos
WEAVE_NO_ERROR
Incondicionalmente

en eso

WEAVE_ERROR init(
  MessageIterator & i
)

Inicialice un ReferencedTLVData objeto dado un MessageIterator .

Inicialice un ReferencedTLVData objeto dado un MessageIterator . En este caso, el TLV es que la última porción de la memoria intermedia y se pasa en un iterador mensaje que apunta a la misma.

Detalles
Parámetros
[in] i
Un iterador mensaje que apunta a TLV a ser extraído.
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.

Inicializar ReferencedTLVData objeto con una cadena de bytes que contiene 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 el TLV de datos
[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 ReferencedTLVData objeto. 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 empaquetan y envían. 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 llama cuando es el momento para escribir algunas 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
)

Comprobar si un ReferencedTLVData objeto tiene nada en ella.

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
)

Comprobar si un ReferencedTLVData objeto es "libre", es decir,

indefinido.

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

operador ==

bool operator==(
  const ReferencedTLVData &
) const 

Disponibilidad de una ReferencedTLVData objeto contra otro por 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
)

Paquete de una ReferencedTLVData objeto directamente en una 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
)

PackagingLength

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
)

Analiza una ReferencedTLVData objeto desde una PacketBuffer suministrado.

Analiza una ReferencedTLVData objeto fuera de un tampón de inet (suponiendo que sólo contiene TLV ).

Detalles
Parámetros
[in] buff
el búfer desde el que leer.
[out] aTarget
un ReferencedTLVData objeto de "relleno" 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
)

Analiza una ReferencedTLVData objeto desde una suministrado MessageIterator .

Analiza un objeto ReferenceTLVData de un MessageIterator objeto supone que se señala en el TLV parte de un mensaje.

Tenga en cuenta que no "análisis" real se hace aquí desde el TLV se deja en la memoria intermedia y no manipulado en absoluto. Este método principalmente sólo establece el ReferencedTLVData estructura para su uso posterior.

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