nl::Weave::الملفات الشخصية::إدارة الحسابات على الشبكة::NetworkInfo

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

فئة مرافق لحمولة حمولات البيانات وتنظيمها من خلال ملف تعريف إدارة الحسابات على الشبكة: تتضمن معلومات ذات صلة باكتشاف الشبكات وتهيئتها.

الملخّص

تعتمد الفئة على سعة التخزين المتوسطة لمعلومات توفير الشبكة (متوسطة بين المخزن النهائي من المعلومات وحمولة الشبكة) وتستخدم إدارة الذاكرة الديناميكية لمنح العنصر الناتج وقت تشغيل مرن. وبالتالي، لا تكون هذه الفئة مناسبة للبيئات الأكثر تقييدًا، ولكن يمكن استخدامها في الأنظمة الأكبر.

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

NetworkInfo()
~NetworkInfo()

الأنواع المتاحة للجميع

@210 تعداد
@211 تعداد

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

Hidden
bool
ما إذا كانت الشبكة مخفية أم لا.
NetworkId
int64_t
رقم تعريف الشبكة الذي خصصه الجهاز للشبكة، -1 إذا لم يتم تحديده.
NetworkType
نوع الشبكة.
ThreadChannel
uint8_t
القناة الحالية ([11..26] حاليًا) التي تعمل عليها شبكة Thread أو kThreadChannel_NotSpecified.
ThreadExtendedPANId
uint8_t *
رقم تعريف رقم PAN الموسَّع لسلسلة المحادثات.
ThreadNetworkKey
uint8_t *
مفتاح الشبكة الرئيسية لسلسلة المحادثات أو NULL في حال عدم التحديد.
ThreadNetworkName
char *
اسم شبكة Thread أو الحقل فارغ في حال عدم تحديده.
ThreadPANId
uint32_t
رقم تعريف PAN لسلسلة 16 بت أو kThreadPANId_NotSpecified.
ThreadPSKc
uint8_t *
مفتاح تمت مشاركته مسبقًا في سلسلة المحادثات للمفوّض أو فارغ في حال عدم تحديده.
WiFiKey
uint8_t *
مفتاح WiFi أو NULL في حال عدم التحديد.
WiFiKeyLen
uint32_t
الطول بالبايت لمفتاح WiFi.
WiFiMode
وضع تشغيل شبكة WiFi.
WiFiRole
الدور الذي يؤديه الجهاز على شبكة WiFi.
WiFiSSID
char *
Wi-Fi SSID أو 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

ما إذا كانت الشبكة مخفية أم لا.

رقم تعريف الشبكة

int64_t NetworkId

رقم تعريف الشبكة الذي خصصه الجهاز للشبكة، -1 إذا لم يتم تحديده.

نوع الشبكة

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

نوع الشبكة.

قناة سلسلة المحادثات

uint8_t ThreadChannel

القناة الحالية ([11..26] حاليًا) التي تعمل عليها شبكة Thread أو kThreadChannel_NotSpecified.

سلسلة التعليمات المجمّعة

uint8_t * ThreadExtendedPANId

رقم تعريف رقم PAN الموسَّع لسلسلة المحادثات.

وهو مصفوفة يتم تخصيصها ديناميكيًا من 8 وحدات ثمانيّة. تمت إزالة أي شرط يستدعي Clear() في الكائن.

ThreadNetworkKey

uint8_t * ThreadNetworkKey

مفتاح الشبكة الرئيسية لسلسلة المحادثات أو NULL في حال عدم التحديد.

وهو مصفوفة يتم تخصيصها ديناميكيًا من وحدات الثمانيات العشوائية التي تمتلكها الفئة تم محوها على أي شرط يستدعي Clear() في الكائن.

اسم سلسلة المحادثات

char * ThreadNetworkName

اسم شبكة Thread أو الحقل فارغ في حال عدم تحديده.

إنها سلسلة C-إنهاءة في نطاق ديناميكي حسب حالة العميل، ومملوكة للصف. تمت إزالة أي شرط يستدعي Clear() في الكائن.

رقم تعريف سلسلة المحادثات

uint32_t ThreadPANId

رقم تعريف PAN لسلسلة 16 بت أو kThreadPANId_NotSpecified.

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

uint8_t * ThreadPSKc

مفتاح تمت مشاركته مسبقًا في سلسلة المحادثات للمفوّض أو فارغ في حال عدم تحديده.

وهو مصفوفة يتم تخصيصها ديناميكيًا من وحدات الثمانيات العشوائية التي تمتلكها الفئة تم محوها على أي شرط يستدعي Clear() في الكائن.

مفتاح WiFi

uint8_t * WiFiKey

مفتاح WiFi أو NULL في حال عدم التحديد.

وهو مصفوفة يتم تخصيصها ديناميكيًا من وحدات الثمانيات العشوائية التي تمتلكها الفئة ويحدد الطول WiFiKeyLen. تمت إزالة أي شرط يستدعي Clear() في الكائن.

WiFiKeyLen

uint32_t WiFiKeyLen

الطول بالبايت لمفتاح WiFi.

وضع WiFi

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

وضع تشغيل شبكة WiFi.

دور الدور

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

الدور الذي يؤديه الجهاز على شبكة WiFi.

Wi-Fi

char * WiFiSSID

Wi-Fi SSID أو NULL في حال عدم التحديد.

إنها سلسلة C-إنهاءة في نطاق ديناميكي حسب حالة العميل، ومملوكة للصف. تمت إزالة أي شرط يستدعي Clear() في الكائن.

نوع أمان WiFi

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

نوع أمان شبكة Wi-Fi.

قوة الإشارة اللاسلكية

int16_t WirelessSignalStrength

قوة الإشارة للشبكة أو INT16_MIN إذا لم تكن متاحة/متاحة.

وظائف عامة

محو

void Clear(
  void
)

يمكنك إعادة الضبط إلى جميع القيم التلقائية وتحريرها في كائن NetworkInfo هذا.

نسخ إلى

WEAVE_ERROR CopyTo(
  NetworkInfo & dest
)

استبدِل محتوى كائن NetworkInfo هذا بنسخة عميقة من محتوى الوسيطة.

التفاصيل
المعلَمات
[in] dest
عنصر NetworkInfo يحتوي على معلومات يمكن نسخها إلى هذا العنصر.
قيم الإرجاع
WEAVE_NO_ERROR
النجاح.
WEAVE_ERROR_NOT_IMPLEMENTED
عندما لا تكون المنصّة متوافقة مع CSS أو إتاحة المحتوى مجانًا
WEAVE_ERROR_NO_MEMORY
حالات تعذُّر تخصيص الذاكرة

فك الترميز

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

إزالة محتوى هذا العنصر NetworkInfo من تمثيل TLV.

التفاصيل
المعلَمات
[in] reader
تم وضع TLVReader على عنصر البنية الذي يحتوي على معلومات الشبكة.
المرتجعات
WEAVE_NO_ERROR عند نجاح العملية، حدث WEAVE_ERROR_INVALID_TLV_Element على أي عنصر لا يتوافق مع الملف الشخصي لإدارة حسابات الشبكة وأي من أخطاء قارئ 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_Element على أي عنصر لا يتوافق مع الملف الشخصي لإدارة حسابات الشبكة وأي من أخطاء قارئ TLV المتعلقة بفك ترميز العناصر بشكل غير صحيح.

ألعاب الدمج

WEAVE_ERROR MergeTo(
  NetworkInfo & dest
)

يمكنك دمج محتوى كائن NetworkInfo هذا مع النسخة التفصيلية لمحتويات الوسيطة.

تحل كل القيم غير التلقائية من كائن الوسيطة محل القيم في هذا الكائن.

التفاصيل
المعلَمات
[in] dest
عنصر NetworkInfo يحتوي على معلومات يمكن نسخها إلى هذا العنصر.
قيم الإرجاع
WEAVE_NO_ERROR
النجاح.
WEAVE_ERROR_NOT_IMPLEMENTED
عندما لا تكون المنصّة متوافقة مع CSS أو إتاحة المحتوى مجانًا
WEAVE_ERROR_NO_MEMORY
حالات تعذُّر تخصيص الذاكرة

معلومات الشبكة

 NetworkInfo()

معلومات الشبكة

 ~NetworkInfo()

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

قائمة فك الترميز

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

إزالة ترتيب قائمة عناصر NetworkInfo من تمثيل TLV

التفاصيل
المعلَمات
[in] reader
تم وضع TLVReader في بداية المصفوفة. في حالة العرض الناجح، يتم وضع الكاتب بعد نهاية الصفيف.
[in,out] elemCount
عند الإدخال، تم بلوغ الحد الأقصى لعدد العناصر المراد إزالتها من TLVReader. في الإخراج، يتم تحديد عدد العناصر المطلوب إزالتها من البث.
[in,out] elemArray
مرجع لمصفوفة عناصر NetworkInfo التي تحتوي على كائنات NetworkInfo المطلوبة. عندما تكون المصفوفة NULL، يتم تخصيصها داخليًا من خلال الدالة أدناه، وبخلاف ذلك يُفترض أن الصفيف المخصص خارجيًا يحتوي على كائنات elemCount على الأقل.
قيم الإرجاع
WEAVE_NO_ERROR
النجاح.
WEAVE_ERROR_NOT_IMPLEMENTED
على الأنظمة الأساسية التي لا تتوافق مع إدارة الذاكرة الديناميكية.
other
الأخطاء التي تم عرضها من الدالة Decode().

قائمة الترميز

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().

قائمة الترميز

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().