nl:: Weave:: Profiles:: DataManagement_Current:: ResourceIdentifier
#include <src/lib/profiles/data-management/Current/ResourceIdentifier.h>
Structure encapsulant l'ID d'une ressource.
Résumé
L'identifiant ResourceIdentifier peut être un ID d'objet généralisé 64 bits d'un type particulier ou un UUID. Lorsqu'elles sont encodées en externe, les représentations suivantes sont acceptées:
Entier de 64 bits non signé correspondant à l'objet généralisé de type DEVICE avec l'ID spécifié dans la représentation
une représentation généralisée encodée sous la forme d'une chaîne d'octets de 10 octets. Les deux premiers octets encodent le type de ressource sous la forme d'un entier small-endian de 16 bits, les 8 octets restants codant un ID de ressource small endian de 64 bits.
Les objets ResourceIdentifiers incorporent également les conventions présentes dans tout le code WDM: un ResourceIdentifier vide correspond à l'ID de nœud de l'APPAREIL, et des constructeurs sont fournis pour les cas d'utilisation les plus courants.
Constructeurs et destructeurs |
|
---|---|
ResourceIdentifier()
Construisez un identifiant ResourceIdentifier correspondant à un ID de ressource non spécifié.
|
|
ResourceIdentifier(const uint64_t & aNodeId)
Construire un ResourceIdentifier de type DEVICE en fonction d'un aNodeId donné.
|
|
ResourceIdentifier(uint16_t aResourceType, const uint64_t & aResourceId)
Construisez l'élément ResourceIdentifier du type spécifié avec l'ID donné.
|
|
ResourceIdentifier(uint16_t aResourceType, const uint8_t *aResourceId, size_t aResourceIdLen)
Construisez l'identifiant ResourceIdentifier du type spécifié avec l'ID donné.
|
Types publics |
|
---|---|
@125{
|
énum |
@126
|
énum Définit une valeur spéciale pour NodeId qui fait référence à "self". |
@127
|
énum |
Attributs publics |
|
---|---|
ResourceId
|
uint64_t
|
ResourceIdBytes[8]
|
uint8_t
|
Fonctions publiques |
|
---|---|
FromString(const char *inBuffer, size_t inBufferLen)
|
Analyser une représentation sous forme de chaîne canonique d'une ressource dans un objet ressource.
|
FromString(const char *inBuffer, size_t inBufferLen, const uint64_t & aSelfNodeId)
|
Analyser une représentation sous forme de chaîne canonique d'une ressource dans un objet ressource.
|
FromTLV(nl::Weave::TLV::TLVReader & aReader)
|
Désérialiser un identifiant ResourceIdentifier à partir d'une représentation TLV dans cet objet
|
FromTLV(nl::Weave::TLV::TLVReader & aReader, const uint64_t & aSelfNodeId)
|
Désérialiser un identifiant ResourceIdentifier à partir d'une représentation TLV dans cet objet
|
GetResourceId() const
|
uint64_t
Une fonction d'accesseur pour récupérer le ResourceId.
|
GetResourceType() const
|
uint16_t
Fonction d'accesseur permettant d'extraire le ResourceType.
|
ResourceTypeAsString(void) const
|
const char *
Produire une représentation sous forme de chaîne de l'élément ResourceType.
|
ToString(char *buffer, size_t bufferLen)
|
Convertissez ResourceIdentifier en une chaîne imprimable.
|
ToTLV(nl::Weave::TLV::TLVWriter & aWriter) const
|
Sérialisez la ressource dans une représentation TLV à l'aide d'une balise de contexte "Path::ResourceID".
|
ToTLV(nl::Weave::TLV::TLVWriter & aWriter, const uint64_t & aTag) const
|
Sérialisez la ressource dans une représentation TLV à l'aide d'une balise donnée.
|
Fonctions statiques publiques |
|
---|---|
ResourceTypeAsString(uint16_t aResourceType)
|
const char *
Produire une représentation sous forme de chaîne d'un type de ressource.
|
Cours d'amis |
|
---|---|
operator==
|
friend bool
|
Types publics
@125
@125
Propriétés | |
---|---|
RESOURCE_TYPE_RESERVED
|
Type de ressource réservé. L'énumération est choisie de sorte qu'elle n'entre pas en conflit avec les valeurs d'énumération des énumérations Schema::Weave:::Common::ResourceType. À l'heure actuelle, deux valeurs ResourceId sont possibles pour le type de ressource RESERVED (RÉSERVÉ) : kNodeIdNotSpecified correspond à un ResourceIdentifier unitaire, et SELF_NODE_ID correspond à une ressource qui sera remappé sur SELF à partir de toute autre représentation. |
@126
@126
Définit une valeur spéciale pour NodeId qui fait référence à "self".
Dans certaines interactions WDM, la valeur "self" pour la ressource permet de compresser ces informations, car elles sont redondantes par rapport à l'ID du nœud source de l'appareil exprimé dans Weave. s'envoyer un message
@127
@127
Attributs publics
ResourceId
uint64_t ResourceId
ResourceIdBytes
uint8_t ResourceIdBytes[8]
Fonctions publiques
FromString
WEAVE_ERROR FromString( const char *inBuffer, size_t inBufferLen )
Analyser une représentation sous forme de chaîne canonique d'une ressource dans un objet ressource.
Convertit la représentation sous forme de chaîne canonique d'une ressource en objet ressource. Notez que seul un sous-ensemble de ressources peut être représenté sous forme de chaîne. En particulier, l'implémentation de référence dans Weave n'analyse que les ressources de types canoniques tels qu'indiqués dans ResourceTypeEnum.
Détails | |||||
---|---|---|---|---|---|
Paramètres |
|
FromString
WEAVE_ERROR FromString( const char *inBuffer, size_t inBufferLen, const uint64_t & aSelfNodeId )
Analyser une représentation sous forme de chaîne canonique d'une ressource dans un objet ressource.
Convertit la représentation sous forme de chaîne canonique d'une ressource en objet ressource. Notez que seul un sous-ensemble de ressources peut être représenté sous forme de chaîne. En particulier, l'implémentation de référence dans Weave n'analyse que les ressources de types canoniques tels qu'indiqués dans ResourceTypeEnum.
Détails | |||||||
---|---|---|---|---|---|---|---|
Paramètres |
|
FromTLV
WEAVE_ERROR FromTLV( nl::Weave::TLV::TLVReader & aReader )
Désérialiser un identifiant ResourceIdentifier à partir d'une représentation TLV dans cet objet
Détails | |||
---|---|---|---|
Paramètres |
|
||
Renvoie |
WEAVE_NO_ERROR en cas de réussite. Erreurs de TLVReader si ResourceIdentifier ne peut pas être lu correctement.
|
FromTLV
WEAVE_ERROR FromTLV( nl::Weave::TLV::TLVReader & aReader, const uint64_t & aSelfNodeId )
Désérialiser un identifiant ResourceIdentifier à partir d'une représentation TLV dans cet objet
Détails | |||||
---|---|---|---|---|---|
Paramètres |
|
||||
Renvoie |
WEAVE_NO_ERROR en cas de réussite. Erreurs de TLVReader si ResourceIdentifier ne peut pas être lu correctement.
|
GetResourceId
uint64_t GetResourceId() const
Fonction d'accesseur permettant d'extraire le ResourceId.
GetResourceType
uint16_t GetResourceType() const
Fonction d'accesseur permettant d'extraire le ResourceType.
ResourceIdentifier
ResourceIdentifier()
Construisez un identifiant ResourceIdentifier correspondant à un ID de ressource non spécifié.
L'ID de ressource non spécifié est un tuple composé d'un type de ressource RESERVED (RÉSERVÉ) avec une ressource kNodeIdNotSpeficied.
ResourceIdentifier
ResourceIdentifier( const uint64_t & aNodeId )
Construire un ResourceIdentifier de type DEVICE en fonction d'un aNodeId donné.
Détails | |||
---|---|---|---|
Paramètres |
|
ResourceIdentifier
ResourceIdentifier( uint16_t aResourceType, const uint64_t & aResourceId )
Construisez l'élément ResourceIdentifier du type spécifié avec l'ID donné.
Détails | |||||
---|---|---|---|---|---|
Paramètres |
|
ResourceIdentifier
ResourceIdentifier( uint16_t aResourceType, const uint8_t *aResourceId, size_t aResourceIdLen )
Construisez l'élément ResourceIdentifier du type spécifié avec l'ID donné.
Détails | |||||||
---|---|---|---|---|---|---|---|
Paramètres |
|
ResourceTypeAsString
const char * ResourceTypeAsString( void ) const
Produire une représentation sous forme de chaîne de l'élément ResourceType.
Les types de ressources convertis sont ceux énumérés dans ResourceTypeEnum.h et le 0 (correspondant à RESOURCE_TYPE_RESERVED).
ToString
WEAVE_ERROR ToString( char *buffer, size_t bufferLen )
Convertissez ResourceIdentifier en une chaîne imprimable.
Détails | |||||
---|---|---|---|---|---|
Paramètres |
|
ToTLV
WEAVE_ERROR ToTLV( nl::Weave::TLV::TLVWriter & aWriter ) const
Sérialisez la ressource dans une représentation TLV à l'aide d'une balise de contexte Path::ResourceID.
Détails | |||
---|---|---|---|
Paramètres |
|
ToTLV
WEAVE_ERROR ToTLV( nl::Weave::TLV::TLVWriter & aWriter, const uint64_t & aTag ) const
Sérialisez la ressource dans une représentation TLV à l'aide d'une balise donnée.
Détails | |||||
---|---|---|---|---|---|
Paramètres |
|
Fonctions statiques publiques
ResourceTypeAsString
const char * ResourceTypeAsString( uint16_t aResourceType )
Produire une représentation sous forme de chaîne d'un type de ressource.
Les types de ressources convertis sont ceux énumérés dans ResourceTypeEnum.h et le 0 (correspondant à RESOURCE_TYPE_RESERVED).
Détails | |||
---|---|---|---|
Paramètres |
|
Cours d'amis
opérateur==
friend bool operator==(const ResourceIdentifier &lhs, const ResourceIdentifier &rhs)