nl:: Weave:: Profiles:: DataManagement_Current:: ResourceIdentifier
#include <src/lib/profiles/data-management/Current/ResourceIdentifier.h>
Una struttura che incapsula l'ID di una risorsa.
Riepilogo
ResourceIdentifier può essere un ID oggetto generalizzato a 64 bit di un tipo specifico o un UUID. Se codificate esternamente sono supportate le seguenti rappresentazioni:
un numero intero a 64 bit non firmato corrispondente all'oggetto generalizzato di tipo DEVICE con l'ID specificato nella rappresentazione.
una rappresentazione generalizzata codificata come stringa di byte di 10 ottetti. I primi due ottetti codificano il tipo di risorsa come un piccolo numero intero endian a 16 bit, con i restanti 8 byte che codificano il tipo di risorsa endian come piccolo ID risorsa a 64 bit.
I ResourceIdentifier incorporano anche le convenzioni presenti in tutto il codice WDM: un ResourceIdentifier vuoto corrisponde all'ID nodo del DEVICE e vengono forniti i costruttori per i casi d'uso più comuni.
Costruttori e distruttori |
|
---|---|
ResourceIdentifier()
Crea un ResourceIdentifier corrispondente a un ResourceID non specificato.
|
|
ResourceIdentifier(const uint64_t & aNodeId)
Crea un ResourceIdentifier di tipo DEVICE in base a un determinato aNodeId.
|
|
ResourceIdentifier(uint16_t aResourceType, const uint64_t & aResourceId)
Crea il valore ResourceIdentifier del tipo specificato con l'ID specificato.
|
|
ResourceIdentifier(uint16_t aResourceType, const uint8_t *aResourceId, size_t aResourceIdLen)
Crea il valore ResourceIdentifier del tipo specificato con l'ID specificato.
|
Tipi pubblici |
|
---|---|
@125{
|
enum |
@126
|
enum Definisce un valore speciale per NodeId che fa riferimento a "self". |
@127
|
enum |
Attributi pubblici |
|
---|---|
ResourceId
|
uint64_t
|
ResourceIdBytes[8]
|
uint8_t
|
Funzioni pubbliche |
|
---|---|
FromString(const char *inBuffer, size_t inBufferLen)
|
Analizza una rappresentazione stringa canonica di una risorsa in un oggetto risorsa.
|
FromString(const char *inBuffer, size_t inBufferLen, const uint64_t & aSelfNodeId)
|
Analizza una rappresentazione stringa canonica di una risorsa in un oggetto risorsa.
|
FromTLV(nl::Weave::TLV::TLVReader & aReader)
|
Deserializza un oggetto ResourceIdentifier da una rappresentazione TLV in questo oggetto.
|
FromTLV(nl::Weave::TLV::TLVReader & aReader, const uint64_t & aSelfNodeId)
|
Deserializza un oggetto ResourceIdentifier da una rappresentazione TLV in questo oggetto.
|
GetResourceId() const
|
uint64_t
Una funzione di accesso per recuperare il ResourceId.
|
GetResourceType() const
|
uint16_t
Una funzione di accesso per recuperare il valore ResourceType.
|
ResourceTypeAsString(void) const
|
const char *
Genera una rappresentazione in formato stringa di ResourceType.
|
ToString(char *buffer, size_t bufferLen)
|
Converti il valore ResourceIdentifier in una stringa stampabile.
|
ToTLV(nl::Weave::TLV::TLVWriter & aWriter) const
|
Serializza la risorsa in una rappresentazione TLV utilizzando un tag Path::ResourceID di contesto.
|
ToTLV(nl::Weave::TLV::TLVWriter & aWriter, const uint64_t & aTag) const
|
Serializza la risorsa in una rappresentazione TLV utilizzando un determinato tag.
|
Funzioni statiche pubbliche |
|
---|---|
ResourceTypeAsString(uint16_t aResourceType)
|
const char *
Genera una rappresentazione stringa di un tipo di risorsa.
|
Classi di amici |
|
---|---|
operator==
|
friend bool
|
Tipi pubblici
@125
@125
Proprietà | |
---|---|
RESOURCE_TYPE_RESERVED
|
Un tipo di risorsa prenotata. L'enumerazione viene scelta in modo tale da non entrare in conflitto con i valori enum delle enum Schema::Weave:::Common::ResourceType. Al momento, sono possibili due valori ResourceId per il tipo di risorsa RESERVED: kNodeIdNotSpecified corrisponde a un ResourceIdentifier unitalizzato e SELF_NODE_ID corrisponde a una risorsa che verrà rimappata a SELF da qualsiasi altra rappresentazione. |
@126
@126
Definisce un valore speciale per NodeId che fa riferimento a "self".
In alcune interazioni WDM, avere un valore self per la risorsa consente di comprimere queste informazioni, poiché sono ridondanti rispetto all'ID nodo sorgente del dispositivo espresso in Weave. messaggio stesso
@127
@127
Attributi pubblici
ID risorsa
uint64_t ResourceId
ResourceIdBytes
uint8_t ResourceIdBytes[8]
Funzioni pubbliche
FromString
WEAVE_ERROR FromString( const char *inBuffer, size_t inBufferLen )
Analizza una rappresentazione stringa canonica di una risorsa in un oggetto risorsa.
Converte la rappresentazione canonica stringa di una risorsa in un oggetto di risorsa. Tieni presente che solo un sottoinsieme di risorse può essere rappresentato come una stringa. In particolare, l'implementazione del riferimento in Weave analizzerà solo le risorse di tipo canonico come espresso nel ResourceTypeEnum.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
FromString
WEAVE_ERROR FromString( const char *inBuffer, size_t inBufferLen, const uint64_t & aSelfNodeId )
Analizza una rappresentazione stringa canonica di una risorsa in un oggetto risorsa.
Converte la rappresentazione canonica stringa di una risorsa in un oggetto di risorsa. Tieni presente che solo un sottoinsieme di risorse può essere rappresentato come una stringa. In particolare, l'implementazione del riferimento in Weave analizzerà solo le risorse di tipo canonico come espresso nel ResourceTypeEnum.
Dettagli | |||||||
---|---|---|---|---|---|---|---|
Parametri |
|
FromTLV
WEAVE_ERROR FromTLV( nl::Weave::TLV::TLVReader & aReader )
Deserializza un oggetto ResourceIdentifier da una rappresentazione TLV in questo oggetto.
Dettagli | |||
---|---|---|---|
Parametri |
|
||
Restituisce |
WEAVE_NO_ERROR all'operazione riuscita. Errori da TLVReader se non è possibile leggere correttamente ResourceIdentifier.
|
FromTLV
WEAVE_ERROR FromTLV( nl::Weave::TLV::TLVReader & aReader, const uint64_t & aSelfNodeId )
Deserializza un oggetto ResourceIdentifier da una rappresentazione TLV in questo oggetto.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
||||
Restituisce |
WEAVE_NO_ERROR all'operazione riuscita. Errori da TLVReader se non è possibile leggere correttamente ResourceIdentifier.
|
GetResourceId
uint64_t GetResourceId() const
Una funzione di accesso per recuperare il ResourceId.
GetResourceType
uint16_t GetResourceType() const
Una funzione di accesso per recuperare il valore ResourceType.
ResourceIdentifier
ResourceIdentifier()
Crea un ResourceIdentifier corrispondente a un ResourceID non specificato.
L'ID risorsa non specificato è una tupla composta da un tipo di risorsa PRENOTATO con una risorsa kNodeIdNotSpeficied.
ResourceIdentifier
ResourceIdentifier( const uint64_t & aNodeId )
Crea un ResourceIdentifier di tipo DEVICE in base a un determinato aNodeId.
Dettagli | |||
---|---|---|---|
Parametri |
|
ResourceIdentifier
ResourceIdentifier( uint16_t aResourceType, const uint64_t & aResourceId )
Crea il valore ResourceIdentifier del tipo specificato con l'ID specificato.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
ResourceIdentifier
ResourceIdentifier( uint16_t aResourceType, const uint8_t *aResourceId, size_t aResourceIdLen )
Crea il valore ResourceIdentifier del tipo specificato con l'ID specificato.
Dettagli | |||||||
---|---|---|---|---|---|---|---|
Parametri |
|
ResourceTypeAsString
const char * ResourceTypeAsString( void ) const
Genera una rappresentazione in formato stringa di ResourceType.
I tipi di risorse convertiti sono quelli enumerati in ResourceTypeEnum.h e il valore 0 (corrispondente a RESOURCE_TYPE_RESERVED)
ToString
WEAVE_ERROR ToString( char *buffer, size_t bufferLen )
Converti il valore ResourceIdentifier in una stringa stampabile.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
ToTLV
WEAVE_ERROR ToTLV( nl::Weave::TLV::TLVWriter & aWriter ) const
Serializza la risorsa in una rappresentazione TLV utilizzando un tag Path::ResourceID di contesto.
Dettagli | |||
---|---|---|---|
Parametri |
|
ToTLV
WEAVE_ERROR ToTLV( nl::Weave::TLV::TLVWriter & aWriter, const uint64_t & aTag ) const
Serializza la risorsa in una rappresentazione TLV utilizzando un determinato tag.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
Funzioni statiche pubbliche
ResourceTypeAsString
const char * ResourceTypeAsString( uint16_t aResourceType )
Genera una rappresentazione stringa di un tipo di risorsa.
I tipi di risorse convertiti sono quelli enumerati in ResourceTypeEnum.h e il valore 0 (corrispondente a RESOURCE_TYPE_RESERVED)
Dettagli | |||
---|---|---|---|
Parametri |
|
Classi di amici
operatore==
friend bool operator==(const ResourceIdentifier &lhs, const ResourceIdentifier &rhs)