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: DataManagement_Current :: ResourceIdentifier

#include <src/lib/profiles/data-management/Current/ResourceIdentifier.h>

Una estructura que encapsula el ID de un recurso.

Resumen

El ResourceIdentifier puede ser un ID de objeto de 64 bits generalizado de un tipo particular o un UUID. Cuando se codifica externamente, se admiten las siguientes representaciones:

un entero de 64 bits sin signo correspondiente al objeto generalizado de tipo DEVICE con el ID especificado en la representación

una representación generalizada codificada como una cadena de bytes de 10 octetos. Los primeros dos octetos codifican el tipo de recurso como un entero little endian de 16 bits, y los 8 bytes restantes codifican un ID de recurso little endian de 64 bits.

ResourceIdentifiers también incorpora las convenciones presentes en todo el código WDM: un ResourceIdentifier vacío corresponde al ID de nodo del DEVICE, y se proporcionan constructores para los casos de uso más comunes.

Constructores y Destructores

ResourceIdentifier ()
Construya un ResourceIdentifier correspondiente a un ResourceID no especificado.
ResourceIdentifier (const uint64_t & aNodeId)
Construya un ResourceIdentifier de tipo DEVICE basado en un aNodeId dado.
ResourceIdentifier (uint16_t aResourceType, const uint64_t & aResourceId)
Construya el ResourceIdentifier del tipo especificado con el ID dado.
ResourceIdentifier (uint16_t aResourceType, const uint8_t *aResourceId, size_t aResourceIdLen)
Construya el ResourceIdentifier del tipo especificado con el ID dado.

Tipos públicos

@125 {
RESOURCE_TYPE_RESERVED = 0
}
enumeración
@126 enumeración
Define un valor especial para NodeId que se refiere a 'self'.
@127 enumeración

Atributos públicos

ResourceId
uint64_t
ResourceIdBytes [8]
uint8_t

Funciones publicas

FromString (const char *inBuffer, size_t inBufferLen)
Analizar una representación de cadena canónica de un recurso en un objeto de recurso.
FromString (const char *inBuffer, size_t inBufferLen, const uint64_t & aSelfNodeId)
Analizar una representación de cadena canónica de un recurso en un objeto de recurso.
FromTLV (nl::Weave::TLV::TLVReader & aReader)
Deserializar un ResourceIdentifier de una representación TLV en este objeto.
FromTLV (nl::Weave::TLV::TLVReader & aReader, const uint64_t & aSelfNodeId)
Deserializar un ResourceIdentifier de una representación TLV en este objeto.
GetResourceId () const
uint64_t
Una función de acceso para obtener el ResourceId.
GetResourceType () const
uint16_t
Una función de acceso para obtener ResourceType.
ResourceTypeAsString (void) const
const char *
Produce una representación de cadena del ResourceType.
ToString (char *buffer, size_t bufferLen)
Convierta ResourceIdentifier en una cadena imprimible.
ToTLV (nl::Weave::TLV::TLVWriter & aWriter) const
Serialice el recurso en una representación TLV utilizando una etiqueta Path :: ResourceID de contexto.
ToTLV (nl::Weave::TLV::TLVWriter & aWriter, const uint64_t & aTag) const
Serialice el recurso en una representación de TLV utilizando una etiqueta determinada.

Funciones estáticas públicas

ResourceTypeAsString (uint16_t aResourceType)
const char *
Produce una representación de cadena de un tipo de recurso.

Clases de amigos

operator==
friend bool

Tipos públicos

@ 125

 @125
Propiedades
RESOURCE_TYPE_RESERVED

Un tipo de recurso reservado.

La enumeración se elige de manera que no entre en conflicto con los valores de enumeración de las enumeraciones Schema :: Weave ::: Common :: ResourceType. Por el momento, son posibles dos valores ResourceId para el tipo de recurso RESERVED: un kNodeIdNotSpecified corresponde a un ResourceIdentifier unitializado, y SELF_NODE_ID corresponde a un recurso que se reasignará a SELF desde cualquier otra representación.

@ 126

 @126

Define un valor especial para NodeId que se refiere a 'self'.

En ciertas interacciones WDM, tener un valor de recurso propio permite comprimir esa información, ya que es redundante para el ID del nodo de origen del dispositivo expresado en Weave. mensaje en sí

@ 127

 @127

Atributos públicos

ResourceId

uint64_t ResourceId

ResourceIdBytes

uint8_t ResourceIdBytes[8]

Funciones publicas

FromString

WEAVE_ERROR FromString(
  const char *inBuffer,
  size_t inBufferLen
)

Analizar una representación de cadena canónica de un recurso en un objeto de recurso.

Convierte la representación de cadena canónica de un recurso en un objeto de recurso. Tenga en cuenta que solo un subconjunto de recursos se puede representar como una cadena, en particular, la implementación de referencia en Weave solo analizará recursos de tipos canónicos como se expresa en ResourceTypeEnum.

Detalles
Parámetros
[in] inBuffer
Un búfer que contiene el ID del recurso que se va a analizar.
[in] inBufferLen
La longitud (en bytes) de la cadena que se analizará.

FromString

WEAVE_ERROR FromString(
  const char *inBuffer,
  size_t inBufferLen,
  const uint64_t & aSelfNodeId
)

Analizar una representación de cadena canónica de un recurso en un objeto de recurso.

Convierte la representación de cadena canónica de un recurso en un objeto de recurso. Tenga en cuenta que solo un subconjunto de recursos se puede representar como una cadena, en particular, la implementación de referencia en Weave solo analizará recursos de tipos canónicos como se expresa en ResourceTypeEnum.

Detalles
Parámetros
[in] inBuffer
Un búfer que contiene el ID del recurso que se va a analizar.
[in] inBufferLen
La longitud (en bytes) de la cadena que se analizará.
[in] aSelfNodeId
El ID de 64 bits que indica qué ID de dispositivo debe asignarse a un SELF_NODE_ID

Desde TLV

WEAVE_ERROR FromTLV(
  nl::Weave::TLV::TLVReader & aReader
)

Deserializar un ResourceIdentifier de una representación TLV en este objeto.

Detalles
Parámetros
[in] aReader
Un lector de TLV colocado en el elemento ResourceIdentifier
Devoluciones
WEAVE_NO_ERROR en caso de éxito. Errores de TLVReader si ResourceIdentifier no se puede leer correctamente.

Desde TLV

WEAVE_ERROR FromTLV(
  nl::Weave::TLV::TLVReader & aReader,
  const uint64_t & aSelfNodeId
)

Deserializar un ResourceIdentifier de una representación TLV en este objeto.

Detalles
Parámetros
[in] aReader
Un lector de TLV colocado en el elemento ResourceIdentifier
[in] aSelfNodeId
un ResourceID de 64 bits que se reasignará de la representación serializada a SELF_NODE_ID
Devoluciones
WEAVE_NO_ERROR en caso de éxito. Errores de TLVReader si ResourceIdentifier no se puede leer correctamente.

GetResourceId

uint64_t GetResourceId() const 

Una función de acceso para obtener el ResourceId.

GetResourceType

uint16_t GetResourceType() const 

Una función de acceso para obtener ResourceType.

ResourceIdentifier

 ResourceIdentifier()

Construya un ResourceIdentifier correspondiente a un ResourceID no especificado.

El ID de recurso no especificado es una tupla que consta de un tipo de recurso RESERVADO con un recurso kNodeIdNotSpeficied.

ResourceIdentifier

 ResourceIdentifier(
  const uint64_t & aNodeId
)

Construya un ResourceIdentifier de tipo DEVICE basado en un aNodeId dado.

Detalles
Parámetros
[in] aNodeId
NodeId del ID de recurso proporcionado

ResourceIdentifier

 ResourceIdentifier(
  uint16_t aResourceType,
  const uint64_t & aResourceId
)

Construya el ResourceIdentifier del tipo especificado con el ID dado.

Detalles
Parámetros
[in] aResourceType
El tipo de recurso que se va a nombrar
[in] aResourceId
El ID del recurso que se va a nombrar

ResourceIdentifier

 ResourceIdentifier(
  uint16_t aResourceType,
  const uint8_t *aResourceId,
  size_t aResourceIdLen
)

Construya el ResourceIdentifier del tipo especificado con el ID dado.

Detalles
Parámetros
[in] aResourceType
El tipo de recurso que se va a nombrar
[in] aResourceId
El ID del recurso que se va a nombrar representado como una matriz de bytes
[in] aResourceIdLen
La longitud del ID en bytes

ResourceTypeAsString

const char * ResourceTypeAsString(
  void
) const 

Produce una representación de cadena del ResourceType.

Los tipos de recursos convertidos son los enumerados en ResourceTypeEnum.hy el 0 (correspondiente al RESOURCE_TYPE_RESERVED)

Encadenar

WEAVE_ERROR ToString(
  char *buffer,
  size_t bufferLen
)

Convierta ResourceIdentifier en una cadena imprimible.

Detalles
Parámetros
[in] buffer
Un búfer para imprimir
[in] bufferLen
La longitud del búfer

ToTLV

WEAVE_ERROR ToTLV(
  nl::Weave::TLV::TLVWriter & aWriter
) const 

Serialice el recurso en una representación TLV utilizando una etiqueta Path :: ResourceID de contexto.

Detalles
Parámetros
[in] aWriter
Un escritor de TLV para serializar ResourceIdentifier en

ToTLV

WEAVE_ERROR ToTLV(
  nl::Weave::TLV::TLVWriter & aWriter,
  const uint64_t & aTag
) const 

Serialice el recurso en una representación de TLV utilizando una etiqueta determinada.

Detalles
Parámetros
[in] aWriter
Un escritor de TLV para serializar ResourceIdentifier en
[in] aTag
Una etiqueta que nombra el ResourceIdentifier serializado

Funciones estáticas públicas

ResourceTypeAsString

const char * ResourceTypeAsString(
  uint16_t aResourceType
)

Produce una representación de cadena de un tipo de recurso.

Los tipos de recursos convertidos son los enumerados en ResourceTypeEnum.hy el 0 (correspondiente al RESOURCE_TYPE_RESERVED)

Detalles
Parámetros
[in] aResourceType
Enum de tipo de recurso que se convertirá en una representación de cadena.

Clases de amigos

operador ==

friend bool operator==(const ResourceIdentifier &lhs, const ResourceIdentifier &rhs)