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

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

NetworkProvisioning profili aracılığıyla iletilen yükleri serileştirmeye ve seri durumdan çıkarmaya yönelik bir yardımcı program sınıfı: Bu sınıf, ağları algılama ve yapılandırma ile ilgili bilgileri içerir.

Özet

Bu sınıf, ağ temel hazırlık bilgilerinin ara ara depolanmasına (en son bilgi deposu ile ağ yükü arasındaki ara) dayanır ve sonuçta elde edilen nesneye esnek çalışma zamanı sağlamak için dinamik bellek yönetimini kullanır. Bu nedenle, bu sınıf en kısıtlı ortamlar için uygun değildir, ancak daha büyük sistemlerde kullanılabilir.

Oluşturucular ve Yıkıcılar

NetworkInfo()
~NetworkInfo()

Herkese açık türler

@210 enum
@211 enum

Herkese açık özellikler

Hidden
bool
Ağın gizli olup olmadığı.
NetworkId
int64_t
Cihaz tarafından ağa atanan ağ kimliği. Belirtilmemişse -1.
NetworkType
Ağın türü.
ThreadChannel
uint8_t
Thread ağının çalıştığı mevcut kanal (şu anda [11..26]) veya kThreadChannel_NotSpecified (İş Parçacığı Kanalı) bulunur.
ThreadExtendedPANId
uint8_t *
Thread, PAN kimliğini genişletti.
ThreadNetworkKey
uint8_t *
Thread ana ağ anahtarı veya belirtilmediyse NULL.
ThreadNetworkName
char *
Thread ağının adı veya belirtilmemişse NULL.
ThreadPANId
uint32_t
16 bit Thread PAN kimliği veya kThreadPANId_NotSpecified.
ThreadPSKc
uint8_t *
Yetkili kişi için iş parçacığı önceden paylaşılan anahtar veya belirtilmemişse NULL.
WiFiKey
uint8_t *
Kablosuz anahtarı veya belirtilmemişse NULL.
WiFiKeyLen
uint32_t
Kablosuz anahtarının bayt cinsinden uzunluğu.
WiFiMode
Kablosuz ağın çalışma modu.
WiFiRole
Kablosuz ağda cihazın oynadığı rol.
WiFiSSID
char *
Kablosuz ağ SSID'si veya belirtilmemişse NULL.
WiFiSecurityType
Kablosuz ağ güvenlik türü.
WirelessSignalStrength
int16_t
Ağın sinyal gücü veya mevcut değilse/geçerli değilse INT16_MIN.

Herkese açık işlevler

Clear(void)
void
Varsayılana sıfırlayıp bu NetworkInfo nesnesindeki tüm değerleri serbest bırakır.
CopyTo(NetworkInfo & dest)
Bu NetworkInfo nesnesinin içeriğini, bağımsız değişkenin içeriğinin derin kopyasıyla değiştirin.
Decode(nl::Weave::TLV::TLVReader & reader)
Bu NetworkInfo nesnesinin içeriğinin TLV temsilinden dizisini kaldır.
Encode(nl::Weave::TLV::TLVWriter & writer, uint8_t encodeFlags) const
Bu NetworkInfo nesnesinin içeriğini, TLV gösterimi için serileştirin.
MergeTo(NetworkInfo & dest)
Bu NetworkInfo nesnesinin içeriğini, bağımsız değişkenin içeriğinin derin kopyasıyla birleştirin.

Herkese açık statik işlevler

DecodeList(nl::Weave::TLV::TLVReader & reader, uint16_t & elemCount, NetworkInfo *& elemArray)
NetworkInfo öğelerinin listesinin TLV gösteriminden seri dışı bırakılır.
EncodeList(nl::Weave::TLV::TLVWriter & writer, uint16_t elemCount, const NetworkInfo *elemArray, uint8_t encodeFlags)
Bir NetworkInfo nesne dizisi, TLV gösterimi için serileştirilir.
EncodeList(nl::Weave::TLV::TLVWriter & writer, uint16_t arrayLen, const NetworkInfo *elemArray, ::nl::Weave::Profiles::NetworkProvisioning::NetworkType networkType, uint8_t encodeFlags, uint16_t & encodedElemCount)
Bir NetworkInfo nesne dizisini, yalnızca belirli bir türdeki ağları seçerek TLV gösterimi için serileştirme.

Herkese açık türler

@210

 @210

@211

 @211

Herkese açık özellikler

Gizli

bool Hidden

Ağın gizli olup olmadığı.

NetworkId

int64_t NetworkId

Cihaz tarafından ağa atanan ağ kimliği. Belirtilmemişse -1.

NetworkType

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

Ağın türü.

ThreadChannel

uint8_t ThreadChannel

Thread ağının çalıştığı mevcut kanal (şu anda [11..26]) veya kThreadChannel_NotSpecified (İş Parçacığı Kanalı) bulunur.

ThreadExtendedPANId

uint8_t * ThreadExtendedPANId

Thread, PAN kimliğini genişletti.

Sınıfa ait, dinamik olarak ayrılmış 8 sekizlik bir dizidir. Nesne üzerinde Clear() çağrısı yapan herhangi bir koşulda kaldırıldı.

ThreadNetworkKey

uint8_t * ThreadNetworkKey

Thread ana ağ anahtarı veya belirtilmediyse NULL.

Dinamik olarak ayrılmış bir rastgele sekizlik dizisidir ve nesne üzerinde Clear() çağrısı yapan herhangi bir koşulda Yok edilmiş sınıfına aittir.

ThreadNetworkName

char * ThreadNetworkName

Thread ağının adı veya belirtilmemişse NULL.

Sınıfa ait, NUL ile sonlandırılmış, dinamik olarak ayrılmış bir C dizesidir. Nesne üzerinde Clear() çağrısı yapan herhangi bir koşulda kaldırıldı.

ThreadPANId

uint32_t ThreadPANId

16 bit Thread PAN kimliği veya kThreadPANId_NotSpecified.

ThreadPSKc

uint8_t * ThreadPSKc

Yetkili kişi için iş parçacığı önceden paylaşılan anahtar veya belirtilmemişse NULL.

Dinamik olarak ayrılmış bir rastgele sekizlik dizisidir ve nesne üzerinde Clear() çağrısı yapan herhangi bir koşulda Yok edilmiş sınıfına aittir.

WiFiKey

uint8_t * WiFiKey

Kablosuz anahtarı veya belirtilmemişse NULL.

Sınıfın sahip olduğu ve uzunluğu WiFiKeyLen ile belirtilen, dinamik olarak ayrılmış bir sekizlik sekizlik dizisidir. Nesne üzerinde Clear() çağrısı yapan herhangi bir koşulda kaldırılır.

WiFiKeyLen

uint32_t WiFiKeyLen

Kablosuz anahtarının bayt cinsinden uzunluğu.

WiFiMode

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

Kablosuz ağın çalışma modu.

WiFiRole

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

Kablosuz ağda cihazın oynadığı rol.

WiFiSSID

char * WiFiSSID

Kablosuz ağ SSID'si veya belirtilmemişse NULL.

Sınıfa ait, NUL ile sonlandırılmış, dinamik olarak ayrılmış bir C dizesidir. Nesne üzerinde Clear() çağrısı yapan herhangi bir koşulda kaldırıldı.

WiFiSecurityType

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

Kablosuz ağ güvenlik türü.

WirelessSignalStrength

int16_t WirelessSignalStrength

Ağın sinyal gücü veya mevcut değilse/geçerli değilse INT16_MIN.

Herkese açık işlevler

Temizle

void Clear(
  void
)

Varsayılana sıfırlayıp bu NetworkInfo nesnesindeki tüm değerleri serbest bırakır.

CopyTo

WEAVE_ERROR CopyTo(
  NetworkInfo & dest
)

Bu NetworkInfo nesnesinin içeriğini, bağımsız değişkenin içeriğinin derin kopyasıyla değiştirin.

Ayrıntılar
Parametreler
[in] dest
Bu nesneye kopyalanacak bilgileri içeren NetworkInfo nesnesi.
Değerleri Döndür
WEAVE_NO_ERROR
Başarıya merhaba.
WEAVE_ERROR_NOT_IMPLEMENTED
Platform, Malloc veya Free'yi desteklemediğinde.
WEAVE_ERROR_NO_MEMORY
Bellek ayırma hatalarında.

Decode

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

Bu NetworkInfo nesnesinin içeriğinin TLV temsilinden dizisini kaldır.

Ayrıntılar
Parametreler
[in] reader
TLVReader, ağ bilgilerini içeren yapı öğesine konumlandırıldı.
İadeler
WEAVE_NO_ERROR: Başarılı olursa, ağ temel hazırlık profiline uymayan herhangi bir öğede WEAVE_ERROR_INVALID_TLV_ELEMENT öğesi, öğelerin yanlış kod çözme işlemiyle ilgili TLV okuyucu hatalarından herhangi biri.

Kodla

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

Bu NetworkInfo nesnesinin içeriğini, TLV gösterimi için serileştirin.

Ayrıntılar
Parametreler
[in] writer
TLVWriter, nesnenin serileştirileceği yere konumlandırılır. Bu nesne bir öğe dizisinin parçasıysa işlev, bu nesne için anonim bir etiket ya da bağımsız bir öğe olarak yayınlandığında kTag_Networkinformation için bir profil etiketi yayar.
[in] encodeFlags
NetworkInfo kimlik bilgilerinin serileştirilip serileştirilmeyeceğini kontrol eden işaretler.
İadeler
WEAVE_NO_ERROR: Başarılı olursa, ağ temel hazırlık profiline uymayan herhangi bir öğede WEAVE_ERROR_INVALID_TLV_ELEMENT öğesi, öğelerin yanlış kod çözme işlemiyle ilgili TLV okuyucu hatalarından herhangi biri.

MergeTo

WEAVE_ERROR MergeTo(
  NetworkInfo & dest
)

Bu NetworkInfo nesnesinin içeriğini, bağımsız değişkenin içeriğinin derin kopyasıyla birleştirin.

Bağımsız değişken nesnesindeki varsayılan olmayan tüm değerler, bu nesnedeki değerlerin yerini alır.

Ayrıntılar
Parametreler
[in] dest
Bu nesneye kopyalanacak bilgileri içeren NetworkInfo nesnesi.
Değerleri Döndür
WEAVE_NO_ERROR
Başarıya merhaba.
WEAVE_ERROR_NOT_IMPLEMENTED
Platform, Malloc veya Free'yi desteklemediğinde.
WEAVE_ERROR_NO_MEMORY
Bellek ayırma hatalarında.

NetworkInfo

 NetworkInfo()

~NetworkInfo

 ~NetworkInfo()

Herkese açık statik işlevler

DecodeList

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

NetworkInfo öğelerinin listesinin TLV gösteriminden seri dışı bırakılır.

Ayrıntılar
Parametreler
[in] reader
TLVReader, dizi başlangıcına konumlandırıldı. Başarılı dönüşte, yazar dizinin sonundan sonra konumlandırılır.
[in,out] elemCount
Girişte, TLVReader'dan seri dışı bırakılacak maksimum öğe sayısı. Çıkışta, gerçekte akıştan seri dışı bırakılan öğelerin sayısı.
[in,out] elemArray
Seri dışı NetworkInfo nesnelerini içerecek NetworkInfo öğeleri dizisine başvuru. Dizi NULL olduğunda aşağıdaki işlev tarafından dahili olarak ayrılır. Aksi takdirde, harici olarak ayrılmış dizinin en az elemCount nesne içerdiği varsayılır.
Değerleri Döndür
WEAVE_NO_ERROR
Başarıya merhaba.
WEAVE_ERROR_NOT_IMPLEMENTED
dinamik bellek yönetimini desteklemeyen platformlarda kullanılabilir.
other
Decode() işlevinden döndürülen hatalar.

EncodeList

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

Bir NetworkInfo nesne dizisi, TLV gösterimi için serileştirilir.

Dizi, TLV temsilindeki anonim bir öğe olur.

Ayrıntılar
Parametreler
[in] writer
Uygun pozisyona sahip TLVWriter
[in] elemCount
elemArray içindeki öğe sayısı.
[in] elemArray
Serileştirilecek NetworkInfo nesneleri dizisi.
[in] encodeFlags
NetworkInfo kimlik bilgilerinin serileştirilip serileştirilmeyeceğini kontrol eden işaretler.
Değerleri Döndür
WEAVE_NO_ERROR
Başarıya merhaba.
Other
Encode() işlevinden döndürülen hatalar.

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
)

Bir NetworkInfo nesne dizisini, yalnızca belirli bir türdeki ağları seçerek TLV gösterimi için serileştirme.

Ayrıntılar
Parametreler
[in] writer
Uygun pozisyona sahip TLVWriter
[in] arrayLen
elemArray içindeki öğe sayısı.
[in] elemArray
Serileştirilecek NetworkInfo nesneleri dizisi.
[in] networkType
Serileştirilecek NetworkInfo nesnelerinin türü
[in] encodeFlags
NetworkInfo kimlik bilgilerinin serileştirilip serileştirilmeyeceğini kontrol eden işaretler.
[out] encodedElemCount
Gerçekte serileştirilmiş öğelerin sayısı.
Değerleri Döndür
WEAVE_NO_ERROR
Başarıya merhaba.
Other
Encode() işlevinden döndürülen hatalar.