nl::Weave::الملفات الشخصية::DataManagement_Current::ResourceIdentifier

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

بنية تلخّص رقم تعريف المورد

الملخّص

قد يكون ResourceIdentifier إما رقم تعريف كائن 64 بت عامًا لنوع معيّن أو رقم UUID. عند الترميز خارجيًا، يتم تمثيل التمثيلات التالية:

عدد صحيح غير موقَّع 64 بت يتطابق مع الكائن العام من النوع DEVICE الذي يتضمن رقم التعريف المحدد في التمثيل

تمثيل عام مع ترميزه كسلسلة بايت مكوّنة من 10 وحدات ثمانيّة. تُشفِّر أول وحدة ثمانيّة البت في نوع المورد باعتباره عددًا صحيحًا صغيرًا 16 بت، مع وجود 8 بايت متبقية تستخدم رقم تعريف موارد 64 بت صغيرًا.

تجسد معرّفات الموارد أيضًا الاصطلاحات الواردة في رمز WDM: يتطابق ResourceIdentifier فارغًا مع رقم تعريف العُقدة في DEVICE، ويتم توفير أدوات الإنشاء لحالات الاستخدام الأكثر شيوعًا.

الماكينات والبناء

ResourceIdentifier()
أنشئ ResourceIdentifier مطابقًا لمعرّف موارد غير محدّد.
ResourceIdentifier(const uint64_t & aNodeId)
أنشئ ResourceIdentifier من النوع DEVICE استنادًا إلى رقم تعريف محدّد.
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
}
تعداد
@126 تعداد
لتعريف قيمة خاصة للعقدة NodeId التي تشير إلى 'self'.
@127 تعداد

السمات العامة

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
دالة موصّل لجلب معرّف المورد.
GetResourceType() const
uint16_t
دالة موصّل لجلب نوع المورد.
ResourceTypeAsString(void) const
const char *
أنتج تمثيلاً لسلسلة من نوع المورد.
ToString(char *buffer, size_t bufferLen)
حوِّل ResourceIdentifier إلى سلسلة قابلة للطباعة.
ToTLV(nl::Weave::TLV::TLVWriter & aWriter) const
تسلسل المورد إلى تمثيل TLV باستخدام علامة Path::ResourceID للسياق.
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. في الوقت الحالي، يمكن تحديد قيمتَي رقم تعريف المورد لنوع المورد RESERVED: kNodeIdNotSpecified تتطابق مع ResourceIdentifier موحّد، ويتطابق SELF_NODE_ID مع مورد ستتم إعادة ربطه في SELF من أي تمثيل آخر.

@126

 @126

لتعريف قيمة خاصة للعقدة NodeId التي تشير إلى 'self'.

في بعض تفاعلات WDM، يتيح توفُّر قيمة ذاتي للمورد ضغط هذه المعلومات لأنها متكرّرة لمعرّف عقدة المصدر للجهاز الوارد في رسالة Weave نفسها.

@127

 @127

السمات العامة

رقم تعريف المورد

uint64_t ResourceId

معرّفات الموارد

uint8_t ResourceIdBytes[8]

وظائف عامة

سلسلة من

WEAVE_ERROR FromString(
  const char *inBuffer,
  size_t inBufferLen
)

تحليل تمثيل السلسلة الأساسية للمورد في كائن مورد.

لتحويل تمثيل السلسلة الأساسية للمورد إلى كائن مورد. يُرجى العِلم بأنّ مجموعة فرعية من الموارد فقط يمكن تمثيلها كسلسلة، وبالأخص، لن تحلّل عملية تنفيذ المراجع في Weave سوى موارد الأنواع الأساسية كما هو موضّح في ResourceTypeEnum.

التفاصيل
المعلَمات
[in] inBuffer
مخزن مؤقت يحتوي على رقم تعريف المورد المطلوب تحليله
[in] inBufferLen
طول (بالبايت) من السلسلة المطلوب تحليلها

سلسلة من

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

من قناة LLV

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

إزالة الطابع المميّز ResourceIdentifier من تمثيل TLV في هذا العنصر

التفاصيل
المعلَمات
[in] aReader
قارئ TLV موضوع على العنصر ResourceIdentifier
المرتجعات
WEAVE_NO_ERROR على النجاح. أخطاء من TLVReader إذا تعذّرت قراءة ResourceIdentifier بشكل صحيح

من قناة LLV

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

إزالة الطابع المميّز ResourceIdentifier من تمثيل TLV في هذا العنصر

التفاصيل
المعلَمات
[in] aReader
قارئ TLV موضوع على العنصر ResourceIdentifier
[in] aSelfNodeId
رقم تعريف مورد 64 بت ستتم إعادة ربطه من التمثيل التسلسلي إلى SELF_NODE_ID
المرتجعات
WEAVE_NO_ERROR على النجاح. أخطاء من TLVReader إذا تعذّرت قراءة ResourceIdentifier بشكل صحيح

رقم تعريف المورد

uint64_t GetResourceId() const 

دالة موصّل لجلب معرّف المورد.

GetResourceType

uint16_t GetResourceType() const 

دالة موصّل لجلب نوع المورد.

مُعرِّف المورد

 ResourceIdentifier()

أنشئ ResourceIdentifier مطابقًا لمعرّف موارد غير محدّد.

معرّف المورد غير المحدّد هو مكوّن من نوع مورد RESERVED مع مورد kNodeIdNotSpeficied.

مُعرِّف المورد

 ResourceIdentifier(
  const uint64_t & aNodeId
)

أنشئ ResourceIdentifier من النوع DEVICE استنادًا إلى رقم تعريف محدّد.

التفاصيل
المعلَمات
[in] aNodeId
NodeId لرقم تعريف المورد المحدد

مُعرِّف المورد

 ResourceIdentifier(
  uint16_t aResourceType,
  const uint64_t & aResourceId
)

أنشِئ ResourceIdentifier من النوع المحدّد باستخدام رقم التعريف المحدّد.

التفاصيل
المعلَمات
[in] aResourceType
نوع المورد الذي سيتم تسميته
[in] aResourceId
رقم تعريف المورد الذي سيتم تسميته

مُعرِّف المورد

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

أنشِئ ResourceIdentifier من النوع المحدّد باستخدام رقم التعريف المحدّد.

التفاصيل
المعلَمات
[in] aResourceType
نوع المورد الذي سيتم تسميته
[in] aResourceId
رقم تعريف المورد الذي سيتم تسميته باسم مصفوفة من وحدات البايت
[in] aResourceIdLen
طول رقم التعريف بالبايت

نوع المورد AsString

const char * ResourceTypeAsString(
  void
) const 

أنتج تمثيلاً لسلسلة من نوع المورد.

أنواع الموارد التي تم تحويلها هي تلك التي تم سردها في ResourceTypeEnum.h و0 (المقابلة لـ RESOURCE_TYPE_RESERVED)

سلسلة نصية

WEAVE_ERROR ToString(
  char *buffer,
  size_t bufferLen
)

حوِّل ResourceIdentifier إلى سلسلة قابلة للطباعة.

التفاصيل
المعلَمات
[in] buffer
المخزن المؤقت للطباعة في
[in] bufferLen
طول المخزن المؤقت

التوفل

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

تسلسل المورد إلى تمثيل TLV باستخدام علامة Path::ResourceID للسياق.

التفاصيل
المعلَمات
[in] aWriter
كاتب TLV لتسلسل ResourceIdentifier في

التوفل

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

تسلسل المورد إلى تمثيل TLV باستخدام علامة معيّنة.

التفاصيل
المعلَمات
[in] aWriter
كاتب TLV لتسلسل ResourceIdentifier في
[in] aTag
علامة تُسمّى ResourceIdentifier التسلسلي

الدوال الثابتة العامة

نوع المورد AsString

const char * ResourceTypeAsString(
  uint16_t aResourceType
)

أنتج تمثيلاً لسلسلة لنوع المورد.

أنواع الموارد التي تم تحويلها هي تلك التي تم سردها في ResourceTypeEnum.h و0 (المقابلة لـ RESOURCE_TYPE_RESERVED)

التفاصيل
المعلَمات
[in] aResourceType
تعداد نوع المورد المطلوب تحويله إلى تمثيل سلسلة.

دروس أصدقاء

عامل التشغيل==

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