nl:: Weave:: Profiles:: ReferencedTLVData
#include <src/lib/profiles/common/WeaveMessage.h>
De même, nous devons être en mesure de représenter un ancien blob de données TLV.
Résumé
Héritage
Hérite de: nl::Weave::Profiles::RetainedPacketBuffer
Constructeurs et destructeurs |
|
---|---|
ReferencedTLVData(void)
-------------- Définitions des données TLV --------------
|
Types publics |
|
---|---|
TLVWriteCallback)(TLV::TLVWriter &aWriter, void *aAppState)
|
typedefvoid(*
|
Attributs publics |
|
---|---|
theData
|
uint8_t *
|
theLength
|
uint16_t
|
theMaxLength
|
uint16_t
|
Fonctions publiques |
|
---|---|
free(void)
|
void
Libérez un objet ReferencedTLVData, c'est-à-dire qu'il n'est pas défini.
|
init(System::PacketBuffer *aBuffer)
|
Initialisez l'objet ReferencedTLVData en fonction d'un objet PacketBuffer.
|
init(MessageIterator & i)
|
Initialisez un objet ReferencedTLVData en fonction d'un élément MessageIterator.
|
init(uint16_t aLength, uint16_t aMaxLength, uint8_t *aByteString)
|
Initialiser un objet ReferencedTLVObject en fonction d'une chaîne d'octets.
|
init(TLVWriteCallback aWriteCallback, void *anAppState)
|
Initialiser un objet RefererencedTLVData en fonction d'une fonction de rappel.
|
isEmpty(void)
|
bool
Vérifiez si un objet ReferencedTLVData contient quoi que ce soit.
|
isFree(void)
|
bool
Vérifiez si un objet ReferencedTLVData est "sans frais", c'est-à-dire si
|
operator==(const ReferencedTLVData &) const
|
bool
Comparez un objet ReferencedTLVData à un autre objet pour voir si les valeurs sont égales.
|
pack(System::PacketBuffer *buff)
|
Empaquetez un objet ReferencedTLVData directement dans un PacketBuffer.
|
pack(MessageIterator & i, uint32_t maxLen)
|
|
packedLength(void)
|
uint16_t
Renvoyez la longueur des données en supposant que l'objet a été empaqueté dans un tampon.
|
Fonctions statiques publiques |
|
---|---|
parse(System::PacketBuffer *buff, ReferencedTLVData & aTarget)
|
Analyser un objet ReferencedTLVData à partir d'un PacketBuffer fourni.
|
parse(MessageIterator & i, ReferencedTLVData & aTarget)
|
Analyser un objet ReferencedTLVData à partir d'un objet MessageIterator fourni.
|
Types publics
TLVWriteCallback
void(* TLVWriteCallback)(TLV::TLVWriter &aWriter, void *aAppState)
Attributs publics
theData
uint8_t * theData
theLength
uint16_t theLength
theMaxLength
uint16_t theMaxLength
Fonctions publiques
ReferencedTLVData
ReferencedTLVData( void )
init
WEAVE_ERROR init( System::PacketBuffer *aBuffer )
Initialisez l'objet ReferencedTLVData en fonction d'un objet PacketBuffer.
Initialisez un objet ReferencedTLVData à partir d'un tampon plein de TLV. Cela suppose que le tampon contient UNIQUEMENT TLV.
Détails | |||
---|---|---|---|
Paramètres |
|
||
Valeurs renvoyées |
|
init
WEAVE_ERROR init( MessageIterator & i )
Initialisez un objet ReferencedTLVData en fonction d'un élément MessageIterator.
Initialisez un objet ReferencedTLVData en fonction d'un élément MessageIterator. Dans ce cas, la valeur TLV correspond à la dernière partie du tampon, et nous transmettons un itérateur de message qui pointe vers cette dernière.
Détails | |||
---|---|---|---|
Paramètres |
|
||
Valeurs renvoyées |
|
init
WEAVE_ERROR init( uint16_t aLength, uint16_t aMaxLength, uint8_t *aByteString )
Initialiser un objet ReferencedTLVObject en fonction d'une chaîne d'octets.
Initialisez l'objet ReferencedTLVData avec une chaîne d'octets contenant TLV. Cet initialiseur est celui que nous utilisons en l'absence de PacketrBuffer, car nous en créons un à empaqueter et à envoyer.
Détails | |||||||
---|---|---|---|---|---|---|---|
Paramètres |
|
||||||
Valeurs renvoyées |
|
init
WEAVE_ERROR init( TLVWriteCallback aWriteCallback, void *anAppState )
Initialiser un objet RefererencedTLVData en fonction d'une fonction de rappel.
Initialisez un objet ReferencedTLVData. Au lieu de fournir explicitement les données, cette version fournit une fonction, le rappel d'écriture et un objet de référence, qui lui est transmis, avec un objet TLVWriter, lorsque les données référencées sont censées être empaquetées et envoyées. La signature de ce rappel est la suivante:
typedef void (*TLVWriteCallback)(TLV::TLVWriter &aWriter, void *aAppState);
Détails | |||||
---|---|---|---|---|---|
Paramètres |
|
||||
Valeurs renvoyées |
|
est vide
bool isEmpty( void )
Vérifiez si un objet ReferencedTLVData contient quoi que ce soit.
Un tel objet pourrait "avoir" de deux façons quelque chose. Soit il ne pouvait avoir aucune longueur, soit il ne pouvait pas avoir de rappel en écriture.
Détails | |
---|---|
Renvoie |
"true" si l'ensemble de données a une longueur de 0 ou s'il n'y a pas de rappel d'écriture en main, "false" dans le cas contraire.
|
isFree
bool isFree( void )
Vérifiez si un objet ReferencedTLVData est "sans frais", c'est-à-dire si
non défini.
Détails | |
---|---|
Renvoie |
La valeur est "true" si l'objet n'est pas défini et la valeur "false" dans le cas contraire.
|
opérateur==
bool operator==( const ReferencedTLVData & ) const
Comparez un objet ReferencedTLVData à un autre objet pour voir si les valeurs sont égales.
Notez que cela n'a de sens que dans le cas de deux objets contenant des données réelles et reposant sur un tampon ou une chaîne.
Détails | |||||
---|---|---|---|---|---|
Paramètres |
|
||||
Valeurs renvoyées |
|
pack
WEAVE_ERROR pack( System::PacketBuffer *buff )
Empaquetez un objet ReferencedTLVData directement dans un PacketBuffer.
Détails | |||
---|---|---|---|
Paramètres |
|
||
Renvoie |
Une erreur WEAVE_ERROR reflétant la réussite de l'appel de pack sous-jacent
|
pack
WEAVE_ERROR pack( MessageIterator & i, uint32_t maxLen )
packedLength
uint16_t packedLength( void )
Renvoyez la longueur des données en supposant que l'objet a été empaqueté dans un tampon.
Détails | |
---|---|
Renvoie |
la longueur entière
des données empaquetées.
|
Fonctions statiques publiques
parse
WEAVE_ERROR parse( System::PacketBuffer *buff, ReferencedTLVData & aTarget )
Analyser un objet ReferencedTLVData à partir d'un PacketBuffer fourni.
Analyser un objet ReferencedTLVData d'un tampon Inet (en supposant qu'il ne contient que TLV).
Détails | |||||
---|---|---|---|---|---|
Paramètres |
|
||||
Renvoie |
Une erreur WEAVE_ERROR reflétant la réussite de l'appel d'analyse sous-jacent
|
parse
WEAVE_ERROR parse( MessageIterator & i, ReferencedTLVData & aTarget )
Analyser un objet ReferencedTLVData à partir d'un objet MessageIterator fourni.
Analyser un objet ReferenceTLVData à partir d'un objet MessageIterator supposé pointer vers la partie TLV d'un message
Notez qu'aucune "analyse" réelle est effectuée ici, car la valeur TLV est conservée dans la mémoire tampon et n'a pas été manipulée. Cette méthode configure principalement la structure ReferencedTLVData pour une utilisation ultérieure.
Détails | |||||
---|---|---|---|---|---|
Paramètres |
|
||||
Valeurs renvoyées |
|