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

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

מבנה שכולל את מזהה משאב.

סיכום

ה-ResourceIdentifier יכול להיות מזהה אובייקט כללי של 64 ביט מסוג מסוים, או מזהה ייחודי אוניברסלי (UUID). כאשר הם מקודדים באופן חיצוני, הייצוגים הבאים נתמכים:

מספר שלם ללא סימן 64 סיביות שתואם לאובייקט הכללי מסוג DEVICE עם המזהה שצוין בייצוג

ייצוג כללי שמקודד כמחרוזת של 10 אוקטטים בבייטים. שתי 8 הבייטים הראשונים מקודדים את סוג המשאב כמספר שלם אנדיאני קטן של 16 סיביות, כש-8 הבייטים הנותרים מקודדים מזהה משאב אנדיאני קטן של 64 סיביות.

מזהי ResourceIdentifie מדגימים גם את המוסכמות שקיימות בקוד WDM: שדה ResourceIdentifier ריק מתאים למזהה הצומת של ה-DEVICE, ובנאים מספקים את הבנאים לתרחישי השימוש הנפוצים ביותר.

בונים והורסים

ResourceIdentifier()
יוצרים ResourceIdentifier בהתאם ל-ResourceID שלא צוין.
ResourceIdentifier(const uint64_t & aNodeId)
יוצרים ResourceIdentifier מסוג DEVICE על סמך aNodeId נתון.
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 שמתייחס ל 'עצמי'.
@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)
יש לבצע פעולת deserialize של ResourceIdentifier מייצוג TLV לאובייקט הזה.
FromTLV(nl::Weave::TLV::TLVReader & aReader, const uint64_t & aSelfNodeId)
יש לבצע פעולת deserialize של ResourceIdentifier מייצוג TLV לאובייקט הזה.
GetResourceId() const
uint64_t
פונקציית accessor לאחזור ה-ResourceId.
GetResourceType() const
uint16_t
פונקציית accessor לאחזור ה-ResourceType.
ResourceTypeAsString(void) const
const char *
יוצרים ייצוג מחרוזת של ה-ResourceType.
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

סוג משאב שמור.

ה-enum נבחר כך שהוא לא מתנגש עם ערכי enum מ-Schema::Weave:::Common::ResourceType enums. בשלב זה, יש שני ערכים של ResourceId עבור סוג המשאב 'הזמנה מחדש': kNodeIdNotSpecified תואם ל-ResourceIdentifier מאוחד, ו-SELF_NODE_ID תואם למשאב שימופה מחדש אל SELF מכל ייצוג אחר.

@126

 @126

מגדיר ערך מיוחד עבור NodeId שמתייחס ל 'עצמי'.

באינטראקציות 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
)

יש לבצע פעולת deserialize של ResourceIdentifier מייצוג TLV לאובייקט הזה.

פרטים
פרמטרים
[in] aReader
קורא TLV שממוקם ברכיב ResourceIdentifier
החזרות
WEAVE_NO_ERROR התבצע בהצלחה. שגיאות ב-TLVReader אם לא ניתן לקרוא כראוי את ResourceIdentifier.

FromTLV

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

יש לבצע פעולת deserialize של ResourceIdentifier מייצוג TLV לאובייקט הזה.

פרטים
פרמטרים
[in] aReader
קורא TLV שממוקם ברכיב ResourceIdentifier
[in] aSelfNodeId
ResourceID של 64 סיביות שימופה מחדש מהייצוג הסידורי אל SELF_NODE_ID
החזרות
WEAVE_NO_ERROR התבצע בהצלחה. שגיאות ב-TLVReader אם לא ניתן לקרוא כראוי את ResourceIdentifier.

GetResourceId

uint64_t GetResourceId() const 

פונקציית accessor לאחזור ה-ResourceId.

GetResourceType

uint16_t GetResourceType() const 

פונקציית accessor לאחזור ה-ResourceType.

ResourceIdentifier

 ResourceIdentifier()

יוצרים ResourceIdentifier בהתאם ל-ResourceID שלא צוין.

מזהה המשאב שלא צוין הוא tuple שכולל סוג משאב RESERVED עם משאב kNodeIdNotSpepicied.

ResourceIdentifier

 ResourceIdentifier(
  const uint64_t & aNodeId
)

יוצרים ResourceIdentifier מסוג DEVICE על סמך aNodeId נתון.

פרטים
פרמטרים
[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 

עורכים את המשאב לסידרה לייצוג TLV באמצעות תג הקשר Path::ResourceID.

פרטים
פרמטרים
[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)