nl::Weave::Profiles::DataManagement_Current::ResourceIdentifier

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

रिसॉर्स के आईडी को इकट्ठा करने वाला स्ट्रक्चर.

खास जानकारी

ResourceIdentifier, किसी खास तरह का सामान्य 64-बिट ऑब्जेक्ट आईडी या यूयूआईडी हो सकता है. जब बाहर से कोड में बदला जाता है, तब नीचे दिए गए प्रज़ेंटेशन का इस्तेमाल किया जा सकता है:

यह एक ऐसा 64-बिट पूर्णांक है जिसमें साइन-इन नहीं किया गया है. यह इंटीजर में दिए गए आईडी के साथ, अलग-अलग तरह के डिवाइस के सामान्य ऑब्जेक्ट से जुड़ा है

एक सामान्य प्रज़ेंटेशन जिसे 10 ऑक्टेट की बाइट स्ट्रिंग के तौर पर एन्कोड किया जाता है. पहले दो ऑक्टेट, रिसॉर्स टाइप को 16-बिट, छोटे एंडियन पूर्णांक के रूप में एन्कोड करते हैं. बाकी 8 बाइट, एक छोटे एंडियन 64-बिट रिसॉर्स आईडी को कोड में बदलते हैं.

ResourceIdentifiers में पूरे WDM कोड में मौजूद कन्वेंशन भी शामिल होते हैं: एक खाली ResourceIdentifier, डिवाइस के नोड आईडी से जुड़ा होता है और सबसे सामान्य इस्तेमाल-केस के लिए कंस्ट्रक्टर दिए जाते हैं.

कंस्ट्रक्टर और डिस्ट्रक्टर

ResourceIdentifier()
किसी ऐसे ResourceID के मुताबिक ResourceIdentifier बनाना चाहिए जिसके बारे में नहीं बताया गया है.
ResourceIdentifier(const uint64_t & aNodeId)
किसी दिए गए aNodeId के आधार पर, डिवाइस टाइप का ResourceIdentifier बनाएं.
ResourceIdentifier(uint16_t aResourceType, const uint64_t & aResourceId)
दिए गए आईडी के साथ खास टाइप का ResourceIdentifier बनाएं.
ResourceIdentifier(uint16_t aResourceType, const uint8_t *aResourceId, size_t aResourceIdLen)
दिए गए आईडी के साथ खास टाइप का ResourceIdentifier बनाएं.

सार्वजनिक टाइप

@125{
  RESOURCE_TYPE_RESERVED = 0
}
enum
@126 enum
NodeId के लिए एक खास वैल्यू तय करता है, जो 'self' के बारे में बताती है.
@127 enum

सार्वजनिक एट्रिब्यूट

ResourceId
uint64_t
ResourceIdBytes[8]
uint8_t

सार्वजनिक फ़ंक्शन

FromString(const char *inBuffer, size_t inBufferLen)
किसी संसाधन के कैननिकल स्ट्रिंग प्रज़ेंटेशन को रिसॉर्स ऑब्जेक्ट में पार्स करें.
FromString(const char *inBuffer, size_t inBufferLen, const uint64_t & aSelfNodeId)
किसी संसाधन के कैननिकल स्ट्रिंग प्रज़ेंटेशन को रिसॉर्स ऑब्जेक्ट में पार्स करें.
FromTLV(nl::Weave::TLV::TLVReader & aReader)
इस ऑब्जेक्ट में, टीएलवी के रिप्रज़ेंटेशन से ResourceIdentifier का इस्तेमाल करें.
FromTLV(nl::Weave::TLV::TLVReader & aReader, const uint64_t & aSelfNodeId)
इस ऑब्जेक्ट में, टीएलवी के रिप्रज़ेंटेशन से ResourceIdentifier का इस्तेमाल करें.
GetResourceId() const
uint64_t
ResourceId फ़ेच करने के लिए ऐक्सेसर फ़ंक्शन.
GetResourceType() const
uint16_t
ResourceType फ़ेच करने के लिए ऐक्सेसर फ़ंक्शन.
ResourceTypeAsString(void) const
const char *
ResourceType का स्ट्रिंग प्रज़ेंटेशन बनाएं.
ToString(char *buffer, size_t bufferLen)
ResourceIdentifier को प्रिंट की जा सकने वाली स्ट्रिंग में बदलें.
ToTLV(nl::Weave::TLV::TLVWriter & aWriter) const
कॉन्टेक्स्ट पाथ::ResourceID टैग का इस्तेमाल करके, संसाधन को टीएलवी में शामिल करें.
ToTLV(nl::Weave::TLV::TLVWriter & aWriter, const uint64_t & aTag) const
दिए गए टैग का इस्तेमाल करके, संसाधन को टीएलवी में शामिल करें.

सार्वजनिक स्टैटिक फ़ंक्शन

ResourceTypeAsString(uint16_t aResourceType)
const char *
किसी रिसॉर्स टाइप का स्ट्रिंग प्रज़ेंटेशन बनाएं.

फ़्रेंड क्लास

operator==
friend bool

सार्वजनिक टाइप

@125

 @125
प्रॉपर्टी
RESOURCE_TYPE_RESERVED

एक रिज़र्व किया गया संसाधन टाइप.

Enum को इस तरह से चुना जाता है कि यह Schema::Weave:::Common::ResourceType enums के एनम वैल्यू से टकराव न करता हो. इस समय, RESERVED संसाधन प्रकार के लिए दो ResourceId मान संभव हैं: kNodeIdNotId, इकाई के तौर पर दिए गए ResourceIdentifier से जुड़ा है और SELF_NODE_ID किसी ऐसे संसाधन से जुड़ा है जो किसी भी दूसरे तरीके से SELF पर फिर से मैप करेगा.

@126

 @126

NodeId के लिए एक खास वैल्यू तय करता है, जो 'self' के बारे में बताती है.

कुछ WDM इंटरैक्शन में, संसाधन के लिए खुद का मान होने से उस जानकारी को कंप्रेस करने में मदद मिलती है, क्योंकि यह Weave में बताए गए डिवाइस के सोर्स नोड आईडी के लिए ग़ैर-ज़रूरी है.

@127

 @127

सार्वजनिक एट्रिब्यूट

ResourceId

uint64_t ResourceId

ResourceIdBytes

uint8_t ResourceIdBytes[8]

सार्वजनिक फ़ंक्शन

FromString

WEAVE_ERROR FromString(
  const char *inBuffer,
  size_t inBufferLen
)

किसी संसाधन के कैननिकल स्ट्रिंग प्रज़ेंटेशन को रिसॉर्स ऑब्जेक्ट में पार्स करें.

किसी संसाधन के कैननिकल स्ट्रिंग प्रज़ेंटेशन को रिसॉर्स ऑब्जेक्ट में बदलता है. ध्यान दें कि सिर्फ़ संसाधनों के किसी सबसेट को स्ट्रिंग के तौर पर दिखाया जा सकता है. खास तौर पर, Weave में लागू करने का रेफ़रंस सिर्फ़ कैननिकल टाइप के रिसॉर्स को ही पार्स करेगा, जैसा कि ResourceTypeEnum में बताया गया है.

जानकारी
पैरामीटर
[in] inBuffer
एक बफ़र जिसमें पार्स किया जाने वाला संसाधन आईडी होता है
[in] inBufferLen
पार्स की जाने वाली स्ट्रिंग की लंबाई (बाइट में)

FromString

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

किसी संसाधन के कैननिकल स्ट्रिंग प्रज़ेंटेशन को रिसॉर्स ऑब्जेक्ट में पार्स करें.

किसी संसाधन के कैननिकल स्ट्रिंग प्रज़ेंटेशन को रिसॉर्स ऑब्जेक्ट में बदलता है. ध्यान दें कि सिर्फ़ संसाधनों के किसी सबसेट को स्ट्रिंग के तौर पर दिखाया जा सकता है. खास तौर पर, Weave में लागू करने का रेफ़रंस सिर्फ़ कैननिकल टाइप के रिसॉर्स को ही पार्स करेगा, जैसा कि ResourceTypeEnum में बताया गया है.

जानकारी
पैरामीटर
[in] inBuffer
एक बफ़र जिसमें पार्स किया जाने वाला संसाधन आईडी होता है
[in] inBufferLen
पार्स की जाने वाली स्ट्रिंग की लंबाई (बाइट में)
[in] aSelfNodeId
इस 64-बिट आईडी से पता चलता है कि किस डिवाइस आईडी को SELF_NODE_ID पर मैप करना चाहिए

FromTLV

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

इस ऑब्जेक्ट में, टीएलवी के रिप्रज़ेंटेशन से ResourceIdentifier का इस्तेमाल करें.

जानकारी
पैरामीटर
[in] aReader
ResourceIdentifier एलिमेंट पर टीएलवी रीडर की पोज़िशन
लौटाए गए सामान
सफल होने पर WEAVE_NO_ERROR. अगर ResourceIdentifier को ठीक से नहीं पढ़ा जा सकता, तो TLVReader से जुड़ी गड़बड़ियां.

FromTLV

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

इस ऑब्जेक्ट में, टीएलवी के रिप्रज़ेंटेशन से ResourceIdentifier का इस्तेमाल करें.

जानकारी
पैरामीटर
[in] aReader
ResourceIdentifier एलिमेंट पर टीएलवी रीडर की पोज़िशन
[in] aSelfNodeId
64-बिट का ResourceID, जिसे सीरियल वाले वर्शन से SELF_NODE_ID पर रीमैप किया जाएगा
लौटाए गए सामान
सफल होने पर WEAVE_NO_ERROR. अगर ResourceIdentifier को ठीक से नहीं पढ़ा जा सकता, तो TLVReader से जुड़ी गड़बड़ियां.

GetResourceId

uint64_t GetResourceId() const 

ResourceId फ़ेच करने के लिए ऐक्सेसर फ़ंक्शन.

GetResourceType

uint16_t GetResourceType() const 

ResourceType फ़ेच करने के लिए ऐक्सेसर फ़ंक्शन.

ResourceIdentifier

 ResourceIdentifier()

किसी ऐसे ResourceID के मुताबिक ResourceIdentifier बनाना चाहिए जिसके बारे में नहीं बताया गया है.

बिना जानकारी वाला रिसॉर्स आईडी एक टपल है, जिसमें kNodeIdNotSpeficied संसाधन के साथ RESERVED संसाधन टाइप शामिल होता है.

ResourceIdentifier

 ResourceIdentifier(
  const uint64_t & aNodeId
)

किसी दिए गए aNodeId के आधार पर, डिवाइस टाइप का ResourceIdentifier बनाएं.

जानकारी
पैरामीटर
[in] aNodeId
दिए गए रिसॉर्स आईडी का NodeId

ResourceIdentifier

 ResourceIdentifier(
  uint16_t aResourceType,
  const uint64_t & aResourceId
)

दिए गए आईडी के साथ खास टाइप का ResourceIdentifier बनाएं.

जानकारी
पैरामीटर
[in] aResourceType
नाम दिए जाने वाले संसाधन का टाइप
[in] aResourceId
नाम वाले संसाधन का आईडी

ResourceIdentifier

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

दिए गए आईडी के साथ खास टाइप का ResourceIdentifier बनाएं.

जानकारी
पैरामीटर
[in] aResourceType
नाम दिए जाने वाले संसाधन का टाइप
[in] aResourceId
नाम किए जाने वाले संसाधन का आईडी, बाइट के कलेक्शन में दिखाया जाता है
[in] aResourceIdLen
आईडी की लंबाई बाइट में

ResourceTypeAsString

const char * ResourceTypeAsString(
  void
) const 

ResourceType का स्ट्रिंग प्रज़ेंटेशन बनाएं.

रूपांतरित किए गए संसाधन प्रकार वे संसाधन हैं, जिनकी ResourceTypeEnum.h और 0 (संसाधन_TYPE_RESERVED के अनुपालन में) में अंकित हैं

ToString

WEAVE_ERROR ToString(
  char *buffer,
  size_t bufferLen
)

ResourceIdentifier को प्रिंट की जा सकने वाली स्ट्रिंग में बदलें.

जानकारी
पैरामीटर
[in] buffer
प्रिंट करने के लिए बफ़र
[in] bufferLen
बफ़र की लंबाई

ToTLV

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

कॉन्टेक्स्ट पाथ::ResourceID टैग का इस्तेमाल करके, संसाधन को टीएलवी में शामिल करें.

जानकारी
पैरामीटर
[in] aWriter
ResourceIdentifier को सीरियलाइज़ करने के लिए, TLV राइटर

ToTLV

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

दिए गए टैग का इस्तेमाल करके, संसाधन को टीएलवी में शामिल करें.

जानकारी
पैरामीटर
[in] aWriter
ResourceIdentifier को सीरियलाइज़ करने के लिए, TLV राइटर
[in] aTag
सीरियल के हिसाब से बनाए गए ResourceIdentifier को नाम देने वाला टैग

सार्वजनिक स्टैटिक फ़ंक्शन

ResourceTypeAsString

const char * ResourceTypeAsString(
  uint16_t aResourceType
)

किसी रिसॉर्स टाइप का स्ट्रिंग प्रज़ेंटेशन बनाएं.

रूपांतरित किए गए संसाधन प्रकार वे संसाधन हैं, जिनकी ResourceTypeEnum.h और 0 (संसाधन_TYPE_RESERVED के अनुपालन में) में अंकित हैं

जानकारी
पैरामीटर
[in] aResourceType
रिसॉर्स टाइप की सूची, जिसे स्ट्रिंग रिप्रज़ेंटेशन में बदला जाना है.

फ़्रेंड क्लास

ऑपरेटर==

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