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

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

Class utilitas untuk melakukan serialisasi dan deserialisasi payload yang dikomunikasikan melalui profil NetworkProvisioning: yang mengenkapsulasi informasi yang terkait dengan deteksi dan konfigurasi jaringan.

Ringkasan

Class ini mengandalkan penyimpanan menengah informasi penyediaan jaringan (antara penyimpanan utama informasi dan payload jaringan) dan menggunakan pengelolaan memori dinamis untuk memberikan objek runtime fleksibel yang dihasilkan. Dengan demikian, class ini tidak cocok untuk lingkungan yang paling terbatas, tetapi dapat digunakan pada sistem yang lebih besar.

Konstruktor dan Destruktor

NetworkInfo()
~NetworkInfo()

Jenis publik

@210 enum
@211 enum

Atribut publik

Hidden
bool
Apakah jaringan tersembunyi atau tidak.
NetworkId
int64_t
ID jaringan yang ditetapkan ke jaringan oleh perangkat, -1 jika tidak ditentukan.
NetworkType
Jenis jaringan.
ThreadChannel
uint8_t
Saluran saat ini (saat ini [11..26]) tempat jaringan Thread beroperasi, atau kThreadChannel_NotSpecified.
ThreadExtendedPANId
uint8_t *
ID PAN Thread yang diperluas.
ThreadNetworkKey
uint8_t *
Kunci jaringan master Thread , atau NULL jika tidak ditentukan.
ThreadNetworkName
char *
Nama jaringan Thread, atau NULL jika tidak ditentukan.
ThreadPANId
uint32_t
ID PAN Thread 16-bit, atau kThreadPANId_NotSpecified.
ThreadPSKc
uint8_t *
Kunci pra-bagi thread untuk komisioner, atau NULL jika tidak ditentukan.
WiFiKey
uint8_t *
Kunci WiFi, atau NULL jika tidak ditentukan.
WiFiKeyLen
uint32_t
Panjang kunci WiFi dalam byte.
WiFiMode
Mode operasi jaringan Wi-Fi.
WiFiRole
Peran yang dimainkan perangkat di jaringan Wi-Fi.
WiFiSSID
char *
WiFi SSID, atau NULL jika tidak ditentukan.
WiFiSecurityType
Jenis keamanan Wi-Fi.
WirelessSignalStrength
int16_t
Kekuatan sinyal jaringan, atau INT16_MIN jika tidak tersedia/berlaku.

Fungsi publik

Clear(void)
void
Reset ke default dan kosongkan semua nilai dalam objek NetworkInfo ini.
CopyTo(NetworkInfo & dest)
Ganti konten objek NetworkInfo ini dengan salinan mendalam dari konten argumen.
Decode(nl::Weave::TLV::TLVReader & reader)
Lakukan deserialisasi konten objek NetworkInfo ini dari representasi TLV-nya.
Encode(nl::Weave::TLV::TLVWriter & writer, uint8_t encodeFlags) const
Lakukan serialisasi konten objek NetworkInfo ini ke dalam representasi TLV-nya.
MergeTo(NetworkInfo & dest)
Gabungkan konten objek NetworkInfo ini dengan salinan mendalam konten argumen.

Fungsi statis publik

DecodeList(nl::Weave::TLV::TLVReader & reader, uint16_t & elemCount, NetworkInfo *& elemArray)
Melakukan deserialisasi daftar elemen NetworkInfo dari representasi TLV-nya.
EncodeList(nl::Weave::TLV::TLVWriter & writer, uint16_t elemCount, const NetworkInfo *elemArray, uint8_t encodeFlags)
Menserialisasikan array objek NetworkInfo ke dalam representasi TLV-nya.
EncodeList(nl::Weave::TLV::TLVWriter & writer, uint16_t arrayLen, const NetworkInfo *elemArray, ::nl::Weave::Profiles::NetworkProvisioning::NetworkType networkType, uint8_t encodeFlags, uint16_t & encodedElemCount)
Menserialisasikan array objek NetworkInfo ke dalam representasi TLV-nya yang hanya memilih jaringan dari jenis tertentu.

Jenis publik

@210

 @210

@211

 @211

Atribut publik

Tersembunyi

bool Hidden

Apakah jaringan tersembunyi atau tidak.

NetworkId

int64_t NetworkId

ID jaringan yang ditetapkan ke jaringan oleh perangkat, -1 jika tidak ditentukan.

NetworkType

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

Jenis jaringan.

ThreadChannel

uint8_t ThreadChannel

Saluran saat ini (saat ini [11..26]) tempat jaringan Thread beroperasi, atau kThreadChannel_NotSpecified.

ThreadExtendedPANId

uint8_t * ThreadExtendedPANId

ID PAN Thread yang diperluas.

Ini adalah array 8 oktek yang dialokasikan secara dinamis dan dimiliki oleh class. Dihancurkan pada kondisi apa pun yang memanggil Clear() pada objek.

ThreadNetworkKey

uint8_t * ThreadNetworkKey

Kunci jaringan master Thread , atau NULL jika tidak ditentukan.

Ini adalah array octet arbitrer yang dialokasikan secara dinamis, yang dimiliki oleh class yang Dihancurkan pada kondisi apa pun yang memanggil Clear() pada objek.

ThreadNetworkName

char * ThreadNetworkName

Nama jaringan Thread, atau NULL jika tidak ditentukan.

Ini adalah C-string C-string yang dihentikan NUL dan dialokasikan secara dinamis, yang dimiliki oleh class. Dihancurkan pada kondisi apa pun yang memanggil Clear() pada objek.

ThreadPANId

uint32_t ThreadPANId

ID PAN Thread 16-bit, atau kThreadPANId_NotSpecified.

ThreadPSKc

uint8_t * ThreadPSKc

Kunci pra-bagi thread untuk komisioner, atau NULL jika tidak ditentukan.

Ini adalah array octet arbitrer yang dialokasikan secara dinamis, yang dimiliki oleh class yang Dihancurkan pada kondisi apa pun yang memanggil Clear() pada objek.

WiFiKey

uint8_t * WiFiKey

Kunci WiFi, atau NULL jika tidak ditentukan.

Ini adalah array octet arbitrer yang dialokasikan secara dinamis, yang dimiliki oleh class, dengan panjang yang ditentukan oleh WiFiKeyLen. Dihancurkan pada kondisi apa pun yang memanggil Clear() pada objek.

WiFiKeyLen

uint32_t WiFiKeyLen

Panjang kunci WiFi dalam byte.

WiFiMode

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

Mode operasi jaringan Wi-Fi.

WiFiRole

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

Peran yang dimainkan perangkat di jaringan Wi-Fi.

WiFiSSID

char * WiFiSSID

WiFi SSID, atau NULL jika tidak ditentukan.

Ini adalah C-string C-string yang dihentikan NUL dan dialokasikan secara dinamis, yang dimiliki oleh class. Dihancurkan pada kondisi apa pun yang memanggil Clear() pada objek.

WiFiSecurityType

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

Jenis keamanan Wi-Fi.

WirelessSignalStrength

int16_t WirelessSignalStrength

Kekuatan sinyal jaringan, atau INT16_MIN jika tidak tersedia/berlaku.

Fungsi publik

Hapus

void Clear(
  void
)

Reset ke default dan kosongkan semua nilai dalam objek NetworkInfo ini.

CopyTo

WEAVE_ERROR CopyTo(
  NetworkInfo & dest
)

Ganti konten objek NetworkInfo ini dengan salinan mendalam dari konten argumen.

Detail
Parameter
[in] dest
NetworkInfo yang berisi informasi yang akan disalin ke objek ini.
Nilai Pengembalian
WEAVE_NO_ERROR
Setelah berhasil.
WEAVE_ERROR_NOT_IMPLEMENTED
Ketika platform tidak mendukung malloc atau free.
WEAVE_ERROR_NO_MEMORY
Kegagalan alokasi memori.

Decode

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

Lakukan deserialisasi konten objek NetworkInfo ini dari representasi TLV-nya.

Detail
Parameter
[in] reader
TLVReader diposisikan ke elemen struktur yang berisi info jaringan.
Hasil
WEAVE_NO_ERROR Jika berhasil, WEAVE_ERROR_INVALID_TLV_ELEMENT pada elemen apa pun yang tidak sesuai dengan profil penyediaan jaringan, terjadi error pada pembaca TLV pada decoding elemen yang salah.

Encoding

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

Lakukan serialisasi konten objek NetworkInfo ini ke dalam representasi TLV-nya.

Detail
Parameter
[in] writer
TLVWriter diposisikan di tempat objek akan diserialisasi. Fungsi ini memunculkan tag anonim untuk objek ini ketika objek ini merupakan bagian dari array elemen atau tag profil untuk kTag_NetworkInformation saat dimunculkan sebagai elemen mandiri.
[in] encodeFlags
Tanda yang mengontrol apakah kredensial NetworkInfo harus diserialisasi.
Hasil
WEAVE_NO_ERROR Jika berhasil, WEAVE_ERROR_INVALID_TLV_ELEMENT pada elemen apa pun yang tidak sesuai dengan profil penyediaan jaringan, terjadi error pada pembaca TLV pada decoding elemen yang salah.

MergeTo

WEAVE_ERROR MergeTo(
  NetworkInfo & dest
)

Gabungkan konten objek NetworkInfo ini dengan salinan mendalam konten argumen.

Semua nilai non-default dari objek argumen akan menggantikan nilai dalam objek ini.

Detail
Parameter
[in] dest
NetworkInfo yang berisi informasi yang akan disalin ke objek ini.
Nilai Pengembalian
WEAVE_NO_ERROR
Setelah berhasil.
WEAVE_ERROR_NOT_IMPLEMENTED
Ketika platform tidak mendukung malloc atau free.
WEAVE_ERROR_NO_MEMORY
Kegagalan alokasi memori.

NetworkInfo

 NetworkInfo()

~InfoJaringan

 ~NetworkInfo()

Fungsi statis publik

DecodeList

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

Melakukan deserialisasi daftar elemen NetworkInfo dari representasi TLV-nya.

Detail
Parameter
[in] reader
TLVReader diposisikan di awal array. Saat pengembalian berhasil, penulis diposisikan setelah akhir array.
[in,out] elemCount
Pada input, jumlah maksimum elemen yang akan dideserialisasi dari TLVReader. Pada output, jumlah elemen yang sebenarnya dideserialisasi dari aliran.
[in,out] elemArray
Referensi ke array elemen NetworkInfo yang akan berisi objek NetworkInfo yang dideserialisasi. Jika array bernilai NULL, array tersebut akan dialokasikan secara internal oleh fungsi di bawah ini, jika tidak, array yang dialokasikan secara eksternal dianggap berisi setidaknya objek elemCount.
Nilai Pengembalian
WEAVE_NO_ERROR
Setelah berhasil.
WEAVE_ERROR_NOT_IMPLEMENTED
pada platform yang tidak mendukung manajemen memori dinamis.
other
Error ditampilkan dari fungsi Decode().

EncodeList

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

Menserialisasikan array objek NetworkInfo ke dalam representasi TLV-nya.

Array akan menjadi elemen anonim dalam representasi TLV.

Detail
Parameter
[in] writer
TLVWriter diposisikan dengan tepat
[in] elemCount
Jumlah elemen dalam elemArray.
[in] elemArray
Array objek NetworkInfo yang akan diserialisasi.
[in] encodeFlags
Tanda yang mengontrol apakah kredensial NetworkInfo harus diserialisasi.
Nilai Pengembalian
WEAVE_NO_ERROR
Setelah berhasil.
Other
Error ditampilkan dari fungsi 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
)

Menserialisasikan array objek NetworkInfo ke dalam representasi TLV-nya yang hanya memilih jaringan dari jenis tertentu.

Detail
Parameter
[in] writer
TLVWriter diposisikan dengan tepat
[in] arrayLen
Jumlah elemen dalam elemArray.
[in] elemArray
Array objek NetworkInfo yang akan diserialisasi.
[in] networkType
Jenis objek NetworkInfo yang akan diserialisasi
[in] encodeFlags
Tanda yang mengontrol apakah kredensial NetworkInfo harus diserialisasi.
[out] encodedElemCount
Jumlah elemen yang benar-benar diserialisasi.
Nilai Pengembalian
WEAVE_NO_ERROR
Setelah berhasil.
Other
Error ditampilkan dari fungsi Encode().