nl:: بافت:: پروفایل ها:: DataManagement_Current:: ResourceIdentifier

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

ساختاری که شناسه یک منبع را در بر می گیرد.

خلاصه

ResourceIdentifier ممکن است یک شناسه شی 64 بیتی تعمیم یافته از یک نوع خاص یا یک UUID باشد. هنگامی که به صورت خارجی کدگذاری می شود، نمایش های زیر پشتیبانی می شوند:

یک عدد صحیح 64 بیتی بدون علامت مربوط به شی تعمیم یافته از نوع DEVICE با شناسه مشخص شده در نمایش

یک نمایش تعمیم یافته که به عنوان یک رشته بایت از 10 اکتت رمزگذاری شده است. دو اکتت اول نوع منبع را به صورت یک عدد صحیح اندیان 16 بیتی کدگذاری می کنند و 8 بایت باقی مانده شناسه منبع 64 بیتی اندیان را کدگذاری می کنند.

ResourceIdentifiers همچنین قراردادهای موجود در کد WDM را در بر می گیرد: یک ResourceIdentifier خالی مربوط به شناسه گره DEVICE است و سازنده برای رایج ترین موارد استفاده ارائه شده است.

سازندگان و ویرانگرها

ResourceIdentifier ()
یک ResourceIdentifier مطابق با یک ResourceID نامشخص بسازید.
ResourceIdentifier (const uint64_t & aNodeId)
یک ResourceIdentifier از نوع DEVICE بر اساس یک NodeId معین بسازید.
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 را از یک بازنمایی TLV در این شیء غیراصولی کنید.
FromTLV ( nl::Weave::TLV::TLVReader & aReader, const uint64_t & aSelfNodeId)
یک ResourceIdentifier را از یک بازنمایی TLV در این شیء غیراصولی کنید.
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
با استفاده از تگ Context Path::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

یک نوع منبع رزرو شده

enum طوری انتخاب می شود که با مقادیر enum موجود در Schema::Weave:::Common::ResourceType در تضاد نباشد. در حال حاضر، دو مقدار ResourceId برای نوع منبع RESERVED امکان پذیر است: یک kNodeIdNotSpecified مربوط به یک ResourceIdentifier یکپارچه شده است، و SELF_NODE_ID مربوط به منبعی است که از هر نمایش دیگری به SELF نگاشت می شود.

@126

 @126

یک مقدار ویژه برای NodeId تعریف می کند که به "self" اشاره دارد.

در برخی از فعل و انفعالات WDM، داشتن مقدار خود برای منبع، امکان فشرده سازی آن اطلاعات را فراهم می کند، زیرا در شناسه گره منبع دستگاه بیان شده در Weave اضافی است. خود پیام

@127

 @127

صفات عمومی

شناسه منبع

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 نگاشت شود

از TLV

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

یک ResourceIdentifier را از یک بازنمایی TLV در این شیء غیراصولی کنید.

جزئیات
مولفه های
[in] aReader
یک خواننده TLV که روی عنصر ResourceIdentifier قرار دارد
برمی گرداند
WEAVE_NO_ERROR در موفقیت. اگر ResourceIdentifier به درستی خوانده نشود، خطاهای TLVReader.

از TLV

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

یک ResourceIdentifier را از یک بازنمایی TLV در این شیء غیراصولی کنید.

جزئیات
مولفه های
[in] aReader
یک خواننده TLV که روی عنصر ResourceIdentifier قرار دارد
[in] aSelfNodeId
یک ResourceID 64 بیتی که از نمایش سریالی در SELF_NODE_ID دوباره نقشه برداری می شود
برمی گرداند
WEAVE_NO_ERROR در موفقیت. اگر ResourceIdentifier به درستی خوانده نشود، خطاهای TLVReader.

GetResourceId

uint64_t GetResourceId() const 

یک تابع دسترسی برای واکشی ResourceId.

GetResourceType

uint16_t GetResourceType() const 

یک تابع دسترسی برای واکشی ResourceType.

ResourceIdentifier

 ResourceIdentifier()

یک ResourceIdentifier مطابق با یک ResourceID نامشخص بسازید.

شناسه منبع نامشخص یک تاپل متشکل از یک نوع منبع RESERVED با منبع kNodeIdNotSpeficied است.

ResourceIdentifier

 ResourceIdentifier(
  const uint64_t & aNodeId
)

یک ResourceIdentifier از نوع DEVICE بر اساس یک NodeId معین بسازید.

جزئیات
مولفه های
[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 (مرتبط با RESOURCE_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 

با استفاده از تگ Context Path::ResourceID، منبع را به یک نمایش TLV سریال کنید.

جزئیات
مولفه های
[in] aWriter
یک نویسنده TLV برای سریال‌سازی ResourceIdentifier

ToTLV

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

با استفاده از یک برچسب داده شده، منبع را به یک نمایش TLV سریال کنید.

جزئیات
مولفه های
[in] aWriter
یک نویسنده TLV برای سریال‌سازی ResourceIdentifier
[in] aTag
برچسبی که ResourceIdentifier سریال شده را نامگذاری می کند

توابع استاتیک عمومی

ResourceTypeAsString

const char * ResourceTypeAsString(
  uint16_t aResourceType
)

یک نمایش رشته ای از یک نوع منبع تولید کنید.

انواع منابع تبدیل شده آنهایی هستند که در ResourceTypeEnum.h و 0 (مرتبط با RESOURCE_TYPE_RESERVED) شمارش شده اند.

جزئیات
مولفه های
[in] aResourceType
یک نوع منبع enum که باید به نمایش رشته ای تبدیل شود.

کلاس های دوستان

اپراتور==

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