nl::Weave::Profiles::NetworkProvisioning::NetworkInfo

#include <src/lib/profiles/network-provisioning/NetworkInfo.h>

סוג כלי שירות (service class) לסידור וסידור מחדש של מטענים ייעודיים (payloads) שמועברים דרך פרופיל NetworkProvisioning: הוא כולל מידע שרלוונטי לזיהוי ולהגדרה של רשתות.

סיכום

המחלקה מסתמכת על אחסון ביניים של מידע על הקצאת רשת (תיווך בין האחסון האולטימטיבי של המידע למטען הייעודי (Payload) של הרשת ומשתמשת בניהול זיכרון דינמי כדי לספק זמן ריצה גמיש לאובייקט שמתקבל. לכן, הסיווג הזה לא מתאים לסביבות המוגבלות ביותר, אבל אפשר להשתמש בו במערכות גדולות יותר.

בנייה

NetworkInfo()
~NetworkInfo()

סוגים ציבוריים

@210 טיפוסים בני מנייה (enum)
@211 טיפוסים בני מנייה (enum)

מאפיינים ציבוריים

Hidden
bool
האם הרשת מוסתרת או לא.
NetworkId
int64_t
מזהה הרשת שהוקצה לרשת על ידי המכשיר, 1- אם לא צוין.
NetworkType
סוג הרשת.
ThreadChannel
uint8_t
הערוץ הנוכחי (כרגע [11..26]) שבו פועלת רשת פרוטוקול Thread, או kThreadChannel_NotSpecified.
ThreadExtendedPANId
uint8_t *
מזהה מספר החשבון הקבוע (PAN) הורחב לשרשור.
ThreadNetworkKey
uint8_t *
מפתח הרשת הראשי של ה-thread , או NULL אם לא צוין.
ThreadNetworkName
char *
השם של רשת פרוטוקול Thread, או NULL אם לא צוין.
ThreadPANId
uint32_t
מזהה ה-PAN של ה-thread ב-16 ביט, או kThreadPANId_NotSpecified.
ThreadPSKc
uint8_t *
מפתח ששותף מראש ב-thread של הנציב, או NULL אם לא צוין.
WiFiKey
uint8_t *
מפתח ה-Wi-Fi, או NULL אם לא צוין אחרת.
WiFiKeyLen
uint32_t
האורך בבייטים של מפתח ה-Wi-Fi.
WiFiMode
מצב ההפעלה של רשת ה-Wi-Fi.
WiFiRole
התפקיד שמילא המכשיר ברשת ה-Wi-Fi.
WiFiSSID
char *
ה-SSID של ה-Wi-Fi, או NULL אם הם לא צוינו.
WiFiSecurityType
סוג האבטחה של Wi-Fi.
WirelessSignalStrength
int16_t
עוצמת האות של הרשת, או INT16_MIN אם היא לא זמינה/רלוונטית.

פונקציות ציבוריות

Clear(void)
void
איפוס לברירת המחדל ושחרור כל הערכים באובייקט NetworkInfo הזה.
CopyTo(NetworkInfo & dest)
מחליפים את התוכן של אובייקט NetworkInfo בעותק העמוק של תוכן הארגומנט.
Decode(nl::Weave::TLV::TLVReader & reader)
מיריאליזציה של התוכן של האובייקט NetworkInfo מייצוג ה-TLV שלו.
Encode(nl::Weave::TLV::TLVWriter & writer, uint8_t encodeFlags) const
מסדרים את התוכן של האובייקט NetworkInfo כך שהוא יופיע בייצוג TLV שלו.
MergeTo(NetworkInfo & dest)
ממזגים את התוכן של אובייקט NetworkInfo עם העותק העמוק של תוכן הארגומנט.

פונקציות סטטיות ציבוריות

DecodeList(nl::Weave::TLV::TLVReader & reader, uint16_t & elemCount, NetworkInfo *& elemArray)
מיריאליזציה של רשימה של אלמנטים של NetworkInfo מייצוג ה-TLV שלה.
EncodeList(nl::Weave::TLV::TLVWriter & writer, uint16_t elemCount, const NetworkInfo *elemArray, uint8_t encodeFlags)
הצגה טורית של מערך של אובייקטים של NetworkInfo לייצוג ה-TLV שלה.
EncodeList(nl::Weave::TLV::TLVWriter & writer, uint16_t arrayLen, const NetworkInfo *elemArray, ::nl::Weave::Profiles::NetworkProvisioning::NetworkType networkType, uint8_t encodeFlags, uint16_t & encodedElemCount)
הצגה טורית של מערך של אובייקטים של NetworkInfo בייצוג TLV שלה, תוך בחירה של רשתות מסוג ספציפי בלבד.

סוגים ציבוריים

210@

 @210

@211

 @211

מאפיינים ציבוריים

מוסתר

bool Hidden

האם הרשת מוסתרת או לא.

NetworkId

int64_t NetworkId

מזהה הרשת שהוקצה לרשת על ידי המכשיר, 1- אם לא צוין.

NetworkType

::nl::Weave::Profiles::NetworkProvisioning::NetworkType NetworkType

סוג הרשת.

ThreadChannel

uint8_t ThreadChannel

הערוץ הנוכחי (כרגע [11..26]) שבו פועלת רשת פרוטוקול Thread, או kThreadChannel_NotSpecified.

ThreadExtendedPANId

uint8_t * ThreadExtendedPANId

מזהה מספר החשבון הקבוע (PAN) הורחב לשרשור.

זהו מערך שמוקצה באופן דינמי של 8 אוקטקטים ונמצא בבעלות המחלקה. הוא מושמד בכל תנאי שקורא לאובייקט Clear().

ThreadNetworkKey

uint8_t * ThreadNetworkKey

מפתח הרשת הראשי של ה-thread , או NULL אם לא צוין.

זהו מערך שמוקצה באופן דינמי של אוקטטים שרירותיים, בבעלות המחלקה Dested בכל תנאי שקורא ל-Clear() באובייקט.

ThreadNetworkName

char * ThreadNetworkName

השם של רשת פרוטוקול Thread, או NULL אם לא צוין.

זוהי מחרוזת C עם הקצאה דינמית, שמסתיימת ב-NUL, והיא נמצאת בבעלות המחלקה. הוא מושמד בכל תנאי שקורא לאובייקט Clear().

ThreadPANId

uint32_t ThreadPANId

מזהה ה-PAN של ה-thread ב-16 ביט, או kThreadPANId_NotSpecified.

ThreadPSKc

uint8_t * ThreadPSKc

מפתח ששותף מראש ב-thread של הנציב, או NULL אם לא צוין.

זהו מערך שמוקצה באופן דינמי של אוקטטים שרירותיים, בבעלות המחלקה Dested בכל תנאי שקורא ל-Clear() באובייקט.

WiFiKey

uint8_t * WiFiKey

מפתח ה-Wi-Fi, או NULL אם לא צוין אחרת.

זהו מערך שמוקצה באופן דינמי של אוקטטים שרירותיים, בבעלות המחלקה, והאורך שלהם מוגדר על ידי WiFiKeyLen. הוא מושמד בכל תנאי שקורא לאובייקט Clear().

WiFiKeyLen

uint32_t WiFiKeyLen

האורך בבייטים של מפתח ה-Wi-Fi.

WiFiMode

::nl::Weave::Profiles::NetworkProvisioning::WiFiMode WiFiMode

מצב ההפעלה של רשת ה-Wi-Fi.

WiFiRole

::nl::Weave::Profiles::NetworkProvisioning::WiFiRole WiFiRole

התפקיד שמילא המכשיר ברשת ה-Wi-Fi.

WiFiSSID

char * WiFiSSID

ה-SSID של ה-Wi-Fi, או NULL אם הם לא צוינו.

זוהי מחרוזת C עם הקצאה דינמית, שמסתיימת ב-NUL, והיא נמצאת בבעלות המחלקה. הוא מושמד בכל תנאי שקורא לאובייקט Clear().

WiFiSecurityType

::nl::Weave::Profiles::NetworkProvisioning::WiFiSecurityType WiFiSecurityType

סוג האבטחה של Wi-Fi.

WirelessSignalStrength

int16_t WirelessSignalStrength

עוצמת האות של הרשת, או INT16_MIN אם היא לא זמינה/רלוונטית.

פונקציות ציבוריות

ניקוי

void Clear(
  void
)

איפוס לברירת המחדל ושחרור כל הערכים באובייקט NetworkInfo הזה.

CopyTo

WEAVE_ERROR CopyTo(
  NetworkInfo & dest
)

מחליפים את התוכן של אובייקט NetworkInfo בעותק העמוק של תוכן הארגומנט.

פרטים
פרמטרים
[in] dest
אובייקט NetworkInfo שמכיל מידע להעתקה לאובייקט הזה.
מוחזר ערכים
WEAVE_NO_ERROR
הצלחה.
WEAVE_ERROR_NOT_IMPLEMENTED
כשהפלטפורמה לא תומכת ב-Malloc או ב-free.
WEAVE_ERROR_NO_MEMORY
כשיש כשלים בהקצאת זיכרון.

Decode

WEAVE_ERROR Decode(
  nl::Weave::TLV::TLVReader & reader
)

מיריאליזציה של התוכן של האובייקט NetworkInfo מייצוג ה-TLV שלו.

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

קידוד

WEAVE_ERROR Encode(
  nl::Weave::TLV::TLVWriter & writer,
  uint8_t encodeFlags
) const 

מסדרים את התוכן של האובייקט NetworkInfo כך שהוא יופיע בייצוג TLV שלו.

פרטים
פרמטרים
[in] writer
TLVWriter ממוקם במקום שבו האובייקט יעבור סריאליזציה. הפונקציה פולטת תג אנונימי בשביל האובייקט הזה כשהאובייקט הזה הוא חלק ממערך רכיבים או תג פרופיל של kTag_NetworkInformation, כאשר האובייקט נשלח כרכיב עצמאי.
[in] encodeFlags
דגלים שקובעים אם יש צורך בפרטי הכניסה של NetworkInfo.
החזרות
WEAVE_NO_ERROR אם הפעולה מצליחה, WEAVE_ERROR_INVALID_TLV_INDEX ברכיב שלא תואם לפרופיל הקצאת הרשת יימצא גם באחת משגיאות הקריאה של TLV עקב פענוח שגוי של רכיבים.

MergeTo

WEAVE_ERROR MergeTo(
  NetworkInfo & dest
)

ממזגים את התוכן של אובייקט NetworkInfo עם העותק העמוק של תוכן הארגומנט.

כל הערכים שאינם ערכי ברירת המחדל מאובייקט הארגומנט מחליפים את הערכים באובייקט הזה.

פרטים
פרמטרים
[in] dest
אובייקט NetworkInfo שמכיל מידע להעתקה לאובייקט הזה.
מוחזר ערכים
WEAVE_NO_ERROR
הצלחה.
WEAVE_ERROR_NOT_IMPLEMENTED
כשהפלטפורמה לא תומכת ב-Malloc או ב-free.
WEAVE_ERROR_NO_MEMORY
כשיש כשלים בהקצאת זיכרון.

NetworkInfo

 NetworkInfo()

~NetworkInfo

 ~NetworkInfo()

פונקציות סטטיות ציבוריות

DecodeList

WEAVE_ERROR DecodeList(
  nl::Weave::TLV::TLVReader & reader,
  uint16_t & elemCount,
  NetworkInfo *& elemArray
)

מיריאליזציה של רשימה של אלמנטים של NetworkInfo מייצוג ה-TLV שלה.

פרטים
פרמטרים
[in] reader
TLVReader ממוקם בתחילת המערך. בהחזרה מוצלחת, הכותב ממוקם אחרי סוף המערך.
[in,out] elemCount
בקלט, מספר הרכיבים המקסימלי שצריך לבצע deserialize מ-TLVReader. בפלט, מספר הרכיבים שהוסרו בפועל מהשידור.
[in,out] elemArray
הפניה למערך רכיבי NetworkInfo שיכיל את האובייקטים של NetworkInfo שעברו תהליך deserialed. אם המערך הוא NULL, הוא מוקצה באופן פנימי על ידי הפונקציה שבהמשך. אחרת, ההנחה היא שהמערך שהוקצה באופן חיצוני מכיל לפחות אובייקטים של elemCount.
מוחזר ערכים
WEAVE_NO_ERROR
הצלחה.
WEAVE_ERROR_NOT_IMPLEMENTED
בפלטפורמות שלא תומכות בניהול זיכרון דינמי.
other
שגיאות שהוחזרו מהפונקציה Decode().

EncodeList

WEAVE_ERROR EncodeList(
  nl::Weave::TLV::TLVWriter & writer,
  uint16_t elemCount,
  const NetworkInfo *elemArray,
  uint8_t encodeFlags
)

הצגה טורית של מערך של אובייקטים של NetworkInfo לייצוג ה-TLV שלה.

המערך יהיה רכיב אנונימי בייצוג TLV.

פרטים
פרמטרים
[in] writer
TLVWriter במיקום מתאים
[in] elemCount
מספר הרכיבים ב-elemArray.
[in] elemArray
המערך של האובייקטים NetworkInfo שיעברו סריאליזציה.
[in] encodeFlags
דגלים שקובעים אם יש צורך בפרטי הכניסה של NetworkInfo.
מוחזר ערכים
WEAVE_NO_ERROR
הצלחה.
Other
שגיאות שהוחזרו מהפונקציה Encode().

EncodeList

WEAVE_ERROR EncodeList(
  nl::Weave::TLV::TLVWriter & writer,
  uint16_t arrayLen,
  const NetworkInfo *elemArray,
  ::nl::Weave::Profiles::NetworkProvisioning::NetworkType networkType,
  uint8_t encodeFlags,
  uint16_t & encodedElemCount
)

הצגה טורית של מערך של אובייקטים של NetworkInfo בייצוג TLV שלה, תוך בחירה של רשתות מסוג ספציפי בלבד.

פרטים
פרמטרים
[in] writer
TLVWriter במיקום מתאים
[in] arrayLen
מספר הרכיבים ב-elemArray.
[in] elemArray
המערך של האובייקטים NetworkInfo שיעברו סריאליזציה.
[in] networkType
סוג האובייקטים NetworkInfo לסריאליזציה
[in] encodeFlags
דגלים שקובעים אם יש צורך בפרטי הכניסה של NetworkInfo.
[out] encodedElemCount
מספר הרכיבים שעברו סריאליזציה בפועל.
מוחזר ערכים
WEAVE_NO_ERROR
הצלחה.
Other
שגיאות שהוחזרו מהפונקציה Encode().