nl:: Weave:: Profiles:: DataManagement_Current:: ResourceIdentifier
#include <src/lib/profiles/data-management/Current/ResourceIdentifier.h>
מבנה שכולל את מזהה המשאב.
סיכום
ResourceIdentifier יכול להיות מזהה אובייקט כללי של 64 ביט מסוג מסוים או מזהה ייחודי אוניברסלי (UUID). כאשר מקודדים באופן חיצוני, המערכת תומכת בייצוגים הבאים:
מספר שלם לא חתום של 64 סיביות שתואם לאובייקט הכללי מסוג DEVICE עם המזהה שצוין בייצוג
ייצוג כללי המקודד כמחרוזת בייטים של 10 אוקטטים. שתי 8 הבייטים הראשונים מקודדים את סוג המשאב כמספר שלם אנדיאני קטן של 16 ביט, ו-8 הבייטים הנותרים מקודדים מזהה משאב endian קטן של 64 ביט.
מזהי ResourceIdentifier גם משקפים את המוסכמות הקיימות בקוד 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{
|
טיפוסים בני מנייה (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)
|
מבצעים deserialize של ResourceIdentifier מייצוג TLV לאובייקט הזה.
|
FromTLV(nl::Weave::TLV::TLVReader & aReader, const uint64_t & aSelfNodeId)
|
מבצעים deserialize של 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
|
יוצרים סדרה של המשאב לייצוג 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 מסכימה::Weave:::Common::ResourceType enum. בשלב זה, יש שני ערכי ResourceId לסוג המשאב RESERVED: kNodeIdNotSpecified תואם ל-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.
פרטים | |||||
---|---|---|---|---|---|
פרמטרים |
|
FromString
WEAVE_ERROR FromString( const char *inBuffer, size_t inBufferLen, const uint64_t & aSelfNodeId )
ניתוח ייצוג של מחרוזת קנונית של משאב לאובייקט משאב.
הפונקציה ממירה את הייצוג במחרוזת הקנונית של משאב לאובייקט משאב. שימו לב שאפשר לייצג רק קבוצת משנה של משאבים כמחרוזת. באופן ספציפי, הטמעת ההפניה ב-Weave תנתח רק משאבים מסוגים קנוניים, כפי שמצוין ב-ResourceTypeEnum.
פרטים | |||||||
---|---|---|---|---|---|---|---|
פרמטרים |
|
FromTLV
WEAVE_ERROR FromTLV( nl::Weave::TLV::TLVReader & aReader )
מבצעים deserialize של ResourceIdentifier מייצוג TLV לאובייקט הזה.
פרטים | |||
---|---|---|---|
פרמטרים |
|
||
החזרות |
WEAVE_NO_ERROR מהצלחה. שגיאות מ-TLVReader אם לא ניתן לקרוא את ResourceIdentifier כמו שצריך.
|
FromTLV
WEAVE_ERROR FromTLV( nl::Weave::TLV::TLVReader & aReader, const uint64_t & aSelfNodeId )
מבצעים deserialize של ResourceIdentifier מייצוג TLV לאובייקט הזה.
פרטים | |||||
---|---|---|---|---|---|
פרמטרים |
|
||||
החזרות |
WEAVE_NO_ERROR מהצלחה. שגיאות מ-TLVReader אם לא ניתן לקרוא את ResourceIdentifier כמו שצריך.
|
GetResourceId
uint64_t GetResourceId() const
פונקציית גישה לאחזור ה-ResourceId.
GetResourceType
uint16_t GetResourceType() const
פונקציית גישה לאחזור ה-ResourceType.
ResourceIdentifier
ResourceIdentifier()
ליצור ResourceIdentifier בהתאם ל-ResourceID שלא צוין.
מזהה המשאב שלא צוין הוא tuple שמכיל סוג משאב RESERVED עם משאב kNodeIdNotSpeficied.
ResourceIdentifier
ResourceIdentifier( const uint64_t & aNodeId )
בונים ResourceIdentifier מסוג DEVICE על סמך aNodeId נתון.
פרטים | |||
---|---|---|---|
פרמטרים |
|
ResourceIdentifier
ResourceIdentifier( uint16_t aResourceType, const uint64_t & aResourceId )
בונים את ResourceIdentifier מהסוג שצוין עם המזהה הנתון.
פרטים | |||||
---|---|---|---|---|---|
פרמטרים |
|
ResourceIdentifier
ResourceIdentifier( uint16_t aResourceType, const uint8_t *aResourceId, size_t aResourceIdLen )
בונים את ResourceIdentifier מהסוג שצוין עם המזהה הנתון.
פרטים | |||||||
---|---|---|---|---|---|---|---|
פרמטרים |
|
ResourceTypeAsString
const char * ResourceTypeAsString( void ) const
מפיקים ייצוג במחרוזת של ResourceType.
סוגי המשאבים שהומרו הם סוגי המשאבים הרשומים ב-ResourceTypeEnum.h ו-0 (בהתאם ל-Resource_TYPE_RESERVED)
מחרוזת ToString
WEAVE_ERROR ToString( char *buffer, size_t bufferLen )
ממירים את ResourceIdentifier למחרוזת שניתן להדפיס.
פרטים | |||||
---|---|---|---|---|---|
פרמטרים |
|
ToTLV
WEAVE_ERROR ToTLV( nl::Weave::TLV::TLVWriter & aWriter ) const
יוצרים סדרה של המשאב לייצוג TLV באמצעות התג Path::ResourceID.
פרטים | |||
---|---|---|---|
פרמטרים |
|
ToTLV
WEAVE_ERROR ToTLV( nl::Weave::TLV::TLVWriter & aWriter, const uint64_t & aTag ) const
מסדרים את המשאב בייצוג של TLV באמצעות תג נתון.
פרטים | |||||
---|---|---|---|---|---|
פרמטרים |
|
פונקציות סטטיות ציבוריות
ResourceTypeAsString
const char * ResourceTypeAsString( uint16_t aResourceType )
יוצרים ייצוג במחרוזת של סוג משאב.
סוגי המשאבים שהומרו הם סוגי המשאבים הרשומים ב-ResourceTypeEnum.h ו-0 (בהתאם ל-Resource_TYPE_RESERVED)
פרטים | |||
---|---|---|---|
פרמטרים |
|
כיתות חברים
אופרטור==
friend bool operator==(const ResourceIdentifier &lhs, const ResourceIdentifier &rhs)