En Google, luchamos por la equidad racial de la comunidad negra. Más información

nl :: Tejido:: Perfiles: Aprovisionamiento de red: Información de red

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

Una clase de utilidad para serializar y deserializar cargas útiles comunicados a través de NetworkProvisioning perfil: se encapsula pertinente información a las redes de detección y configuración.

Resumen

La clase se basa en el almacenamiento intermedio de la información de aprovisionamiento de la red (intermedio entre el almacenamiento final de la información y la carga útil de la red) y utiliza la gestión de memoria dinámica para dar al objeto resultante un tiempo de ejecución flexible. Como tal, esta clase no es adecuada para los entornos más restringidos, pero puede usarse en sistemas más grandes.

Constructores y Destructores

NetworkInfo ()
~NetworkInfo ()

Tipos públicos

@210 enumeración
@211 enumeración

Atributos públicos

Hidden
bool
Si la red está oculta o no.
NetworkId
int64_t
La identificación de red asignada a la red por el dispositivo, -1 si no se especifica.
NetworkType
El tipo de red.
ThreadChannel
uint8_t
El canal actual (actualmente [11..26]) en el que opera la red Thread, o kThreadChannel_NotSpecified.
ThreadExtendedPANId
uint8_t *
El ID de PAN extendido de Thread.
ThreadNetworkKey
uint8_t *
La clave de red maestra del subproceso, o NULL si no se especifica.
ThreadNetworkName
char *
El nombre de la red de subprocesos, o NULL si no se especifica.
ThreadPANId
uint32_t
El ID de PAN de subproceso de 16 bits o kThreadPANId_NotSpecified.
ThreadPSKc
uint8_t *
Enhebrar la clave precompartida para el comisionado, o NULL si no se especifica.
WiFiKey
uint8_t *
La clave WiFi, o NULL si no se especifica.
WiFiKeyLen
uint32_t
La longitud en bytes de la clave WiFi.
WiFiMode
El modo de funcionamiento de la red WiFi.
WiFiRole
El papel que juega el dispositivo en la red WiFi.
WiFiSSID
char *
El SSID WiFi, o NULL si no se especifica.
WiFiSecurityType
El tipo de seguridad WiFi.
WirelessSignalStrength
int16_t
La intensidad de la señal de la red, o INT16_MIN si no está disponible / aplicable.

Funciones publicas

Clear (void)
void
Restablecen a los predeterminados y liberar a todos los valores dentro de este NetworkInfo objeto.
CopyTo ( NetworkInfo & dest)
Reemplazar el contenido de este NetworkInfo objeto con la copia profunda de los contenidos de la discusión.
Decode (nl::Weave::TLV::TLVReader & reader)
Deserializar el contenido de este NetworkInfo objeto de su TLV representación.
Encode (nl::Weave::TLV::TLVWriter & writer, uint8_t encodeFlags) const
Serializar el contenido de este NetworkInfo objeto en su TLV representación.
MergeTo ( NetworkInfo & dest)
Combinar los contenidos de esta NetworkInfo objeto con la copia profunda de los contenidos de la discusión.

Funciones estáticas públicas

DecodeList (nl::Weave::TLV::TLVReader & reader, uint16_t & elemCount, NetworkInfo *& elemArray)
Deserializar una lista de NetworkInfo elementos de su TLV representación.
EncodeList (nl::Weave::TLV::TLVWriter & writer, uint16_t elemCount, const NetworkInfo *elemArray, uint8_t encodeFlags)
Serializar un array de NetworkInfo objetos en su TLV representación.
EncodeList (nl::Weave::TLV::TLVWriter & writer, uint16_t arrayLen, const NetworkInfo *elemArray, :: nl::Weave::Profiles::NetworkProvisioning::NetworkType networkType, uint8_t encodeFlags, uint16_t & encodedElemCount)
Serializar un array de NetworkInfo objetos en su TLV representación seleccionando sólo las redes de un tipo específico.

Tipos públicos

@ 210

 @210

@ 211

 @211

Atributos públicos

Oculto

bool Hidden

Si la red está oculta o no.

Identificación de red

int64_t NetworkId

La identificación de red asignada a la red por el dispositivo, -1 si no se especifica.

Tipo de red

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

El tipo de red.

ThreadChannel

uint8_t ThreadChannel

El canal actual (actualmente [11..26]) en el que opera la red Thread, o kThreadChannel_NotSpecified.

ThreadExtendedPANId

uint8_t * ThreadExtendedPANId

El ID de PAN extendido del hilo.

Es una matriz asignada dinámicamente de 8 octectos, propiedad de la clase. Destruida en cualquier condición que llama Clear() en el objeto.

ThreadNetworkKey

uint8_t * ThreadNetworkKey

La clave de red maestra del subproceso, o NULL si no se especifica.

Es una matriz asignada dinámicamente de octetos arbitrarias, propiedad de la clase destruidos en cualquier condición que llama Clear() en el objeto.

ThreadNetworkName

char * ThreadNetworkName

El nombre de la red de subprocesos, o NULL si no se especifica.

Es una cadena C asignada dinámicamente y terminada en NUL, propiedad de la clase. Destruida en cualquier condición que llama Clear() en el objeto.

ThreadPANId

uint32_t ThreadPANId

El ID de PAN de subproceso de 16 bits o kThreadPANId_NotSpecified.

ThreadPSKc

uint8_t * ThreadPSKc

Enhebrar la clave precompartida para el comisionado, o NULL si no se especifica.

Es una matriz asignada dinámicamente de octetos arbitrarias, propiedad de la clase destruidos en cualquier condición que llama Clear() en el objeto.

WiFiKey

uint8_t * WiFiKey

La clave WiFi, o NULL si no se especifica.

Es una matriz asignada dinámicamente de octetos arbitrarias, propiedad de la clase, con longitud especificada por WiFiKeyLen . Destruida en cualquier condición que llama Clear() en el objeto.

WiFiKeyLen

uint32_t WiFiKeyLen

La longitud en bytes de la clave WiFi.

WiFiMode

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

El modo de funcionamiento de la red WiFi.

WiFiRole

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

El papel que juega el dispositivo en la red WiFi.

WiFiSSID

char * WiFiSSID

El SSID WiFi, o NULL si no se especifica.

Es una cadena C asignada dinámicamente y terminada en NUL, propiedad de la clase. Destruida en cualquier condición que llama Clear() en el objeto.

WiFiSecurityType

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

El tipo de seguridad WiFi.

WirelessSignalStrength

int16_t WirelessSignalStrength

La intensidad de la señal de la red, o INT16_MIN si no está disponible / aplicable.

Funciones publicas

Claro

void Clear(
  void
)

Restablecen a los predeterminados y liberar a todos los valores dentro de este NetworkInfo objeto.

Copiar a

WEAVE_ERROR CopyTo(
  NetworkInfo & dest
)

Reemplazar el contenido de este NetworkInfo objeto con la copia profunda de los contenidos de la discusión.

Detalles
Parámetros
[in] dest
NetworkInfo objeto que contiene información que se ha copiado en este objeto.
Valores devueltos
WEAVE_NO_ERROR
Sobre el éxito.
WEAVE_ERROR_NOT_IMPLEMENTED
Cuando la plataforma no soporta malloc o free.
WEAVE_ERROR_NO_MEMORY
Sobre fallas de asignación de memoria.

Descodificar

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

Deserializar el contenido de este NetworkInfo objeto de su TLV representación.

Detalles
Parámetros
[in] reader
TLVReader posicionado en el elemento de estructura que contiene información de red.
Devoluciones
WEAVE_NO_ERROR éxito On, WEAVE_ERROR_INVALID_TLV_ELEMENT en cualquier elemento que no se ajusten a la red de aprovisionamiento perfil, cualquiera de los TLV errores lector de decodificación incorrecta de elementos.

Codificar

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

Serializar el contenido de este NetworkInfo objeto en su TLV representación.

Detalles
Parámetros
[in] writer
TLVWriter colocado en el lugar donde se serializará el objeto. La función emite una etiqueta anónima para este objeto cuando este objeto es parte de una matriz de elementos o una etiqueta de perfil para kTag_NetworkInformation cuando se emite como un elemento independiente.
[in] encodeFlags
Banderas controlar si las credenciales del NetworkInfo deben ser serializados.
Devoluciones
WEAVE_NO_ERROR éxito On, WEAVE_ERROR_INVALID_TLV_ELEMENT en cualquier elemento que no se ajusten a la red de aprovisionamiento perfil, cualquiera de los TLV errores lector de decodificación incorrecta de elementos.

MergeTo

WEAVE_ERROR MergeTo(
  NetworkInfo & dest
)

Combinar los contenidos de esta NetworkInfo objeto con la copia profunda de los contenidos de la discusión.

Todos los valores no predeterminados del objeto de argumento reemplazan los valores de este objeto.

Detalles
Parámetros
[in] dest
NetworkInfo objeto que contiene información que se ha copiado en este objeto.
Valores devueltos
WEAVE_NO_ERROR
Sobre el éxito.
WEAVE_ERROR_NOT_IMPLEMENTED
Cuando la plataforma no soporta malloc o free.
WEAVE_ERROR_NO_MEMORY
Sobre fallas de asignación de memoria.

Información de red

 NetworkInfo()

~ NetworkInfo

 ~NetworkInfo()

Funciones estáticas públicas

DecodeList

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

Deserializar una lista de NetworkInfo elementos de su TLV representación.

Detalles
Parámetros
[in] reader
TLVReader posicionado al inicio de la matriz. En un retorno exitoso, el escritor se coloca después del final de la matriz.
[in,out] elemCount
En la entrada, número máximo de elementos para deserializar desde TLVReader. En la salida, el número de elementos realmente deserializados de la secuencia.
[in,out] elemArray
Una referencia a la matriz de NetworkInfo elementos que van a contener las deserializados NetworkInfo objetos. Cuando la matriz es NULL, la función siguiente la asigna internamente; de ​​lo contrario, se supone que la matriz asignada externamente contiene al menos objetos elemCount.
Valores devueltos
WEAVE_NO_ERROR
Sobre el éxito.
WEAVE_ERROR_NOT_IMPLEMENTED
en plataformas que no admiten la gestión de memoria dinámica.
other
Los errores devueltos por el Decode() función.

EncodeList

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

Serializar un array de NetworkInfo objetos en su TLV representación.

La matriz será un elemento anónimo de la TLV representación.

Detalles
Parámetros
[in] writer
TLVWriter correctamente posicionado
[in] elemCount
Número de elementos de la elemArray .
[in] elemArray
La matriz de NetworkInfo objetos que ser serializado.
[in] encodeFlags
Banderas controlar si las credenciales del NetworkInfo deben ser serializados.
Valores devueltos
WEAVE_NO_ERROR
Sobre el éxito.
Other
Los errores devueltos por el Encode() función.

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
)

Serializar un array de NetworkInfo objetos en su TLV representación seleccionando sólo las redes de un tipo específico.

Detalles
Parámetros
[in] writer
TLVWriter correctamente posicionado
[in] arrayLen
Número de elementos de la elemArray .
[in] elemArray
La matriz de NetworkInfo objetos que ser serializado.
[in] networkType
El tipo de NetworkInfo objetos para serializar
[in] encodeFlags
Banderas controlar si las credenciales del NetworkInfo deben ser serializados.
[out] encodedElemCount
El número de elementos realmente serializados.
Valores devueltos
WEAVE_NO_ERROR
Sobre el éxito.
Other
Los errores devueltos por el Encode() función.