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 के आधार पर, Device टाइप का 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)
इस ऑब्जेक्ट में, TLV रेप्रज़ेंटेशन से ResourceIdentifier को डीसीरियलाइज़ करें.
FromTLV(nl::Weave::TLV::TLVReader & aReader, const uint64_t & aSelfNodeId)
इस ऑब्जेक्ट में, TLV रेप्रज़ेंटेशन से 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 टैग का इस्तेमाल करके, संसाधन को TLV रिप्रज़ेंटेशन में सीरीज़ बनाएं.
ToTLV(nl::Weave::TLV::TLVWriter & aWriter, const uint64_t & aTag) const
दिए गए टैग का इस्तेमाल करके, संसाधन को TLV रिप्रज़ेंटेशन में क्रम में लगाएं.

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

ResourceTypeAsString(uint16_t aResourceType)
const char *
किसी संसाधन टाइप को स्ट्रिंग के तौर पर दिखाना.

दोस्तों के लिए क्लास

operator==
friend bool

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

@125

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

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

ईनम को इस तरह से चुना जाता है कि यह Schema::Weave:::Common::ResourceType enum में मौजूद ईनम मानों से मेल नहीं खाता. फ़िलहाल, RESERVED संसाधन टाइप के लिए दो ResourceId वैल्यू इस्तेमाल की जा सकती हैं: kNodeIdNotनोट एक यूनिट वाली एक 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
)

इस ऑब्जेक्ट में, TLV प्रतिनिधि से ResourceIdentifier को डीसीरियलाइज़ करें.

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

FromTLV

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

इस ऑब्जेक्ट में, TLV प्रतिनिधि से ResourceIdentifier को डीसीरियलाइज़ करें.

ब्यौरा
पैरामीटर
[in] aReader
ResourceIdentifier एलिमेंट में TLV रीडर
[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 बनाएं जिसके बारे में जानकारी न दी गई हो.

अनजान संसाधन आईडी एक ट्यूपल है, जिसमें kNodeIdNotSpe ब्रैंड के संसाधन के साथ रिज़र्व किए गए संसाधन का प्रकार शामिल होता है.

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 से जुड़ी) में की गई है

टूस्ट्रिंग

WEAVE_ERROR ToString(
  char *buffer,
  size_t bufferLen
)

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

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

ToTLV

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

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

ब्यौरा
पैरामीटर
[in] aWriter
ResourceIdentifier को क्रम में लगाने के लिए, एक TLV राइटर

ToTLV

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

दिए गए टैग का इस्तेमाल करके, संसाधन को TLV रिप्रज़ेंटेशन में क्रम में लगाएं.

ब्यौरा
पैरामीटर
[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)