nl::Weave::Profiller:DataManagement_Current::ResourceIdentifier

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

Kaynağın kimliğini kapsayan bir yapıdır.

Özet

ResourceIdentifier, belirli bir tür için genelleştirilmiş 64 bit nesne kimliği veya UUID olabilir. Harici olarak kodlandığında aşağıdaki gösterimler desteklenir:

Temsilde belirtilen kimliğe sahip DEVICE türü genelleştirilmiş nesneye karşılık gelen imzasız 64 bit tamsayı

10 sekizli bayt bayt olarak kodlanmış genel bir gösterim. İlk iki sekizli, kaynak türünü 16 bit, küçük uçlu bir tam sayı olarak kodlar. Kalan 8 bayt ise küçük bir 64 bit kaynak kimliği kodlar.

ResourceIdentifiers, WDM kodu genelinde mevcut kuralları da oluşturur: Boş bir ResourceIdentifier, DEVICE'un düğüm kimliğine karşılık gelir ve en yaygın kullanım alanları için oluşturucular sağlanır.

İnşaat Ustaları ve Yıkıcılar

ResourceIdentifier()
Belirtilmemiş bir ResourceID'ye karşılık gelen bir ResourceIdentifier oluşturun.
ResourceIdentifier(const uint64_t & aNodeId)
Belirli bir aNodeId değerine göre DEVICE türünde bir ResourceIdentifier oluşturun.
ResourceIdentifier(uint16_t aResourceType, const uint64_t & aResourceId)
Belirtilen kimlikle belirtilen tür için ResourceIdentifier oluşturun.
ResourceIdentifier(uint16_t aResourceType, const uint8_t *aResourceId, size_t aResourceIdLen)
Belirtilen kimlikle belirtilen tür için ResourceIdentifier oluşturun.

Herkese açık türler

@125{
  RESOURCE_TYPE_RESERVED = 0
}
enum
@126 enum
NodeId için 'self' anlamına gelen özel bir değeri tanımlar.
@127 enum

Herkese açık özellikler

ResourceId
uint64_t
ResourceIdBytes[8]
uint8_t

Herkese açık işlevler

FromString(const char *inBuffer, size_t inBufferLen)
Bir kaynağın standart dize gösterimini kaynak nesnesine ayrıştırma.
FromString(const char *inBuffer, size_t inBufferLen, const uint64_t & aSelfNodeId)
Bir kaynağın standart dize gösterimini kaynak nesnesine ayrıştırma.
FromTLV(nl::Weave::TLV::TLVReader & aReader)
Bir TLV temsilinden bir ResourceIdentifier öğesini bu nesneye serileştirin.
FromTLV(nl::Weave::TLV::TLVReader & aReader, const uint64_t & aSelfNodeId)
Bir TLV temsilinden bir ResourceIdentifier öğesini bu nesneye serileştirin.
GetResourceId() const
uint64_t
ResourceId'yi almak için bir erişen işlevi.
GetResourceType() const
uint16_t
ResourceType'ı almak için bir accessor işlevi.
ResourceTypeAsString(void) const
const char *
ResourceType'ın dize temsilini oluşturun.
ToString(char *buffer, size_t bufferLen)
ResourceIdentifier bölümünü yazdırılabilir bir dizeye dönüştürün.
ToTLV(nl::Weave::TLV::TLVWriter & aWriter) const
Bağlam Path::ResourceID etiketi kullanarak kaynağı bir TLV temsiline serileştirin.
ToTLV(nl::Weave::TLV::TLVWriter & aWriter, const uint64_t & aTag) const
Belirli bir etiketi kullanarak kaynağı TLV biçiminde serileştirin.

Herkese açık statik işlevler

ResourceTypeAsString(uint16_t aResourceType)
const char *
Bir kaynak türünün dize temsilini oluşturun.

Arkadaşlık dersleri

operator==
friend bool

Herkese açık türler

@125

 @125
Özellikler
RESOURCE_TYPE_RESERVED

Ayrılmış kaynak türü.

Sıralama, Schema::Weave:::Common::ResourceType enums enum değerleriyle çakışmaması için seçilmiştir. Şu anda, AYRILMIŞ kaynak türü için iki ResourceId değeri mümkündür: kNodeIdNotSpecified, birimleştirilmiş bir ResourceIdentifier'a karşılık gelir. SELF_NODE_ID, diğer herhangi bir temsilden SELF ile yeniden eşlenecek bir kaynağa karşılık gelir.

@126

 @126

NodeId için 'self' anlamına gelen özel bir değeri tanımlar.

Belirli WDM etkileşimlerinde, kaynak için kendi değerine sahip olmak, Weave mesajında ifade edilen cihazın kaynak düğüm kimliğiyle gereksiz olduğundan bu bilgilerin sıkıştırılmasına olanak tanır.

@127

 @127

Herkese açık özellikler

Kaynak Kimliği

uint64_t ResourceId

ResourceIdBytes

uint8_t ResourceIdBytes[8]

Herkese açık işlevler

FromString

WEAVE_ERROR FromString(
  const char *inBuffer,
  size_t inBufferLen
)

Bir kaynağın standart dize gösterimini kaynak nesnesine ayrıştırma.

Bir kaynağın standart dize gösterimini kaynak nesnesine dönüştürür. Kaynakların yalnızca bir alt kümesinin dize olarak temsil edilebileceğini unutmayın. Özellikle Weave'deki referans uygulaması, yalnızca ResourceTypeEnum'da belirtildiği şekilde standart kaynak kaynaklarını ayrıştırır.

Ayrıntılar
Parametreler
[in] inBuffer
Ayrıştırılacak kaynak kimliğini içeren bir arabellek
[in] inBufferLen
Ayrıştırılacak dizenin uzunluğu (bayt cinsinden)

FromString

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

Bir kaynağın standart dize gösterimini kaynak nesnesine ayrıştırma.

Bir kaynağın standart dize gösterimini kaynak nesnesine dönüştürür. Kaynakların yalnızca bir alt kümesinin dize olarak temsil edilebileceğini unutmayın. Özellikle Weave'deki referans uygulaması, yalnızca ResourceTypeEnum'da belirtildiği şekilde standart kaynak kaynaklarını ayrıştırır.

Ayrıntılar
Parametreler
[in] inBuffer
Ayrıştırılacak kaynak kimliğini içeren bir arabellek
[in] inBufferLen
Ayrıştırılacak dizenin uzunluğu (bayt cinsinden)
[in] aSelfNodeId
Hangi cihaz kimliğinin SELF_NODE_ID ile eşleştirileceğini gösteren 64 bit kimliği

Gönderen

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

Bir TLV temsilinden bir ResourceIdentifier öğesini bu nesneye serileştirin.

Ayrıntılar
Parametreler
[in] aReader
ResourceIdentifier öğesine yerleştirilmiş bir TLV okuyucu
İadeler
Başarıyla ilgili WEAVE_NO_ERROR. ResourceIdentifier doğru şekilde okunamıyorsa TLVReader'dan gelen hatalar.

Gönderen

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

Bir TLV temsilinden bir ResourceIdentifier öğesini bu nesneye serileştirin.

Ayrıntılar
Parametreler
[in] aReader
ResourceIdentifier öğesine yerleştirilmiş bir TLV okuyucu
[in] aSelfNodeId
Serileştirilmiş temsilden SELF_NODE_ID ile yeniden eşlenecek 64 bit ResourceID
İadeler
Başarıyla ilgili WEAVE_NO_ERROR. ResourceIdentifier doğru şekilde okunamıyorsa TLVReader'dan gelen hatalar.

GetResourceId

uint64_t GetResourceId() const 

ResourceId'yi almak için bir erişen işlevi.

GetResourceType

uint16_t GetResourceType() const 

ResourceType'ı almak için bir accessor işlevi.

KaynakTanımlayıcı

 ResourceIdentifier()

Belirtilmemiş bir ResourceID'ye karşılık gelen bir ResourceIdentifier oluşturun.

Belirtilmemiş kaynak kimliği, kNodeIdNotSpeficied kaynağına sahip AYRILMIŞ bir kaynak türünden oluşur.

KaynakTanımlayıcı

 ResourceIdentifier(
  const uint64_t & aNodeId
)

Belirli bir aNodeId değerine göre DEVICE türünde bir ResourceIdentifier oluşturun.

Ayrıntılar
Parametreler
[in] aNodeId
Belirtilen Kaynak Kimliğinin NodeId

KaynakTanımlayıcı

 ResourceIdentifier(
  uint16_t aResourceType,
  const uint64_t & aResourceId
)

Belirtilen kimlikle belirtilen tür için ResourceIdentifier oluşturun.

Ayrıntılar
Parametreler
[in] aResourceType
Adlandırılacak kaynağın türü
[in] aResourceId
Adlandırılacak kaynağın kimliği

KaynakTanımlayıcı

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

Belirtilen kimlikle belirtilen tür için ResourceIdentifier oluşturun.

Ayrıntılar
Parametreler
[in] aResourceType
Adlandırılacak kaynağın türü
[in] aResourceId
Bir bayt dizisi olarak temsil edilecek adın kimliği
[in] aResourceIdLen
Kimliğin bayt cinsinden uzunluğu

Kaynak TürüAsString

const char * ResourceTypeAsString(
  void
) const 

ResourceType'ın dize temsilini oluşturun.

Dönüştürülen kaynak türleri, ResourceTypeEnum.h ve 0'da numaralandırılmış kaynaklardır (Resource_TYPE_RESERVED'e karşılık gelir)

ToString

WEAVE_ERROR ToString(
  char *buffer,
  size_t bufferLen
)

ResourceIdentifier bölümünü yazdırılabilir bir dizeye dönüştürün.

Ayrıntılar
Parametreler
[in] buffer
Yazdırılacak arabellek
[in] bufferLen
Tampon uzunluğu

TOTLV

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

Bağlam Path::ResourceID etiketi kullanarak kaynağı bir TLV temsiline serileştirin.

Ayrıntılar
Parametreler
[in] aWriter
ResourceIdentifier öğesini serileştirileceği bir TLV yazarı

TOTLV

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

Belirli bir etiketi kullanarak kaynağı TLV biçiminde serileştirin.

Ayrıntılar
Parametreler
[in] aWriter
ResourceIdentifier öğesini serileştirileceği bir TLV yazarı
[in] aTag
Serileştirilmiş ResourceIdentifier adını veren bir etiket

Herkese açık statik işlevler

Kaynak TürüAsString

const char * ResourceTypeAsString(
  uint16_t aResourceType
)

Bir kaynak türünün dize temsilini oluşturun.

Dönüştürülen kaynak türleri, ResourceTypeEnum.h ve 0'da numaralandırılmış kaynaklardır (Resource_TYPE_RESERVED'e karşılık gelir)

Ayrıntılar
Parametreler
[in] aResourceType
Dize gösterimine dönüştürülecek kaynak türü sıralama.

Arkadaşlık dersleri

operatör==

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