nl:: 매트:: 프로필:: NetworkProvisioning:: NetworkInfo
#include <src/lib/profiles/network-provisioning/NetworkInfo.h>
NetworkProvisioning 프로필을 통해 전달된 페이로드를 직렬화 및 역직렬화하는 유틸리티 클래스: 네트워크 감지 및 구성과 관련된 정보를 캡슐화합니다.
요약
이 클래스는 네트워크 프로비저닝 정보의 중간 스토리지 (정보의 궁극적인 저장과 네트워크 페이로드의 중간)를 사용하며 동적 메모리 관리를 사용하여 결과 객체에 유연한 런타임을 제공합니다. 따라서 이 클래스는 가장 제한된 환경에는 적합하지 않지만 더 큰 시스템에서는 사용할 수 있습니다.
생성자 및 소멸자 |
|
---|---|
NetworkInfo()
|
|
~NetworkInfo()
|
공개 유형 |
|
---|---|
@210
|
enum |
@211
|
enum |
공개 속성 |
|
---|---|
Hidden
|
bool
네트워크 숨김 여부입니다.
|
NetworkId
|
int64_t
기기에서 네트워크에 할당한 네트워크 ID입니다. 지정하지 않으면 -1입니다.
|
NetworkType
|
네트워크 유형입니다.
|
ThreadChannel
|
uint8_t
스레드 네트워크가 작동하는 현재 채널 (현재 [11..26]) 또는 kThreadChannel_NotSpecified입니다.
|
ThreadExtendedPANId
|
uint8_t *
대화목록 확장 PAN ID
|
ThreadNetworkKey
|
uint8_t *
스레드 마스터 네트워크 키 또는 지정되지 않은 경우 NULL입니다.
|
ThreadNetworkName
|
char *
스레드 네트워크의 이름 또는 지정되지 않은 경우 NULL입니다.
|
ThreadPANId
|
uint32_t
16비트 스레드 PAN ID 또는 kThreadPANId_NotSpecified입니다.
|
ThreadPSKc
|
uint8_t *
수수료에 대한 스레드 사전 공유 키 또는 지정되지 않은 경우 NULL입니다.
|
WiFiKey
|
uint8_t *
Wi-Fi 키 또는 지정되지 않은 경우 NULL입니다.
|
WiFiKeyLen
|
uint32_t
Wi-Fi 키의 길이(바이트)입니다.
|
WiFiMode
|
Wi-Fi 네트워크의 작동 모드입니다.
|
WiFiRole
|
Wi-Fi 네트워크에서 기기가 수행하는 역할입니다.
|
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
네트워크 숨김 여부입니다.
네트워크 ID
int64_t NetworkId
기기에서 네트워크에 할당한 네트워크 ID입니다. 지정하지 않으면 -1입니다.
스레드 채널
uint8_t ThreadChannel
스레드 네트워크가 작동하는 현재 채널 (현재 [11..26]) 또는 kThreadChannel_NotSpecified입니다.
ThreadExtendedPANId
uint8_t * ThreadExtendedPANId
대화목록 확장 PAN ID
이 클래스는 8개의 옥텟이 동적으로 할당된 배열이며 클래스가 소유합니다. 객체에서 Clear()
를 호출하는 모든 조건에서 폐기됩니다.
스레드 네트워크 키
uint8_t * ThreadNetworkKey
스레드 마스터 네트워크 키 또는 지정되지 않은 경우 NULL입니다.
이는 객체에서 Clear()
를 호출하는 모든 조건에서 Destroyed 클래스에서 소유한 임의의 8진수의 배열입니다.
스레드 네트워크 이름
char * ThreadNetworkName
스레드 네트워크의 이름 또는 지정되지 않은 경우 NULL입니다.
이 클래스는 클래스가 소유한 NUL 종료, 동적으로 할당된 C 문자열입니다. 객체에서 Clear()
를 호출하는 모든 조건에서 폐기됩니다.
스레드PANId
uint32_t ThreadPANId
16비트 스레드 PAN ID 또는 kThreadPANId_NotSpecified입니다.
스레드 PSKc
uint8_t * ThreadPSKc
수수료에 대한 스레드 사전 공유 키 또는 지정되지 않은 경우 NULL입니다.
이는 객체에서 Clear()
를 호출하는 모든 조건에서 Destroyed 클래스에서 소유한 임의의 8진수의 배열입니다.
Wi-Fi 키
uint8_t * WiFiKey
Wi-Fi 키 또는 지정되지 않은 경우 NULL입니다.
이 메서드는 클래스가 소유한 임의의 8진수의 동적 할당 배열로, 길이는 WiFiKeyLen
에 의해 지정됩니다. 객체에서 Clear()
를 호출하는 모든 조건에서 폐기됩니다.
Wi-Fi 키렌
uint32_t WiFiKeyLen
Wi-Fi 키의 길이(바이트)입니다.
Wi-Fi
char * WiFiSSID
Wi-Fi SSID 또는 지정되지 않은 경우 NULL
이 클래스는 클래스가 소유한 NUL 종료, 동적으로 할당된 C 문자열입니다. 객체에서 Clear()
를 호출하는 모든 조건에서 폐기됩니다.
Wi-Fi 보안 유형
::nl::Weave::Profiles::NetworkProvisioning::WiFiSecurityType WiFiSecurityType
Wi-Fi 보안 유형입니다.
무선 신호 강도
int16_t WirelessSignalStrength
네트워크의 신호 강도입니다. 사용 가능하거나 적용할 수 없는 경우 INT16_MIN입니다.
공개 함수
복사 대상
WEAVE_ERROR CopyTo( NetworkInfo & dest )
이 NetworkInfo 객체의 내용을 인수 콘텐츠의 딥 사본으로 바꿉니다.
세부정보 | |||||||
---|---|---|---|---|---|---|---|
매개변수 |
|
||||||
반환 값 |
|
디코딩
WEAVE_ERROR Decode( nl::Weave::TLV::TLVReader & reader )
이 NetworkInfo 객체의 콘텐츠를 TLV 표현에서 역직렬화합니다.
세부정보 | |||
---|---|---|---|
매개변수 |
|
||
반환 |
WEAVE_NO_ERROR 성공 시 네트워크 프로비저닝 프로필을 준수하지 않는 요소의 WEAVE_ERROR_INVALID_TLV_요소가 잘못된 디코딩에 대해 TLV 리더 오류가 발생합니다.
|
인코딩
WEAVE_ERROR Encode( nl::Weave::TLV::TLVWriter & writer, uint8_t encodeFlags ) const
이 NetworkInfo 객체의 콘텐츠를 TLV 표현으로 직렬화합니다.
세부정보 | |||||
---|---|---|---|---|---|
매개변수 |
|
||||
반환 |
WEAVE_NO_ERROR 성공 시 네트워크 프로비저닝 프로필을 준수하지 않는 요소의 WEAVE_ERROR_INVALID_TLV_요소가 잘못된 디코딩에 대해 TLV 리더 오류가 발생합니다.
|
병합 대상
WEAVE_ERROR MergeTo( NetworkInfo & dest )
이 NetworkInfo 객체의 내용을 인수의 콘텐츠 딥 사본과 병합합니다.
인수 객체의 기본값이 아닌 모든 값이 이 객체의 값을 대체합니다.
세부정보 | |||||||
---|---|---|---|---|---|---|---|
매개변수 |
|
||||||
반환 값 |
|
NetworkInfo
NetworkInfo()
약 NetworkInfo
~NetworkInfo()
공개 정적 함수
디코딩 목록
WEAVE_ERROR DecodeList( nl::Weave::TLV::TLVReader & reader, uint16_t & elemCount, NetworkInfo *& elemArray )
NetworkInfo 요소 목록을 TLV 표현에서 역직렬화합니다.
세부정보 | |||||||
---|---|---|---|---|---|---|---|
매개변수 |
|
||||||
반환 값 |
|
인코딩 목록
WEAVE_ERROR EncodeList( nl::Weave::TLV::TLVWriter & writer, uint16_t elemCount, const NetworkInfo *elemArray, uint8_t encodeFlags )
NetworkInfo 객체의 배열을 TLV 표현으로 직렬화합니다.
배열은 TLV 표현의 익명 요소입니다.
세부정보 | |||||||||
---|---|---|---|---|---|---|---|---|---|
매개변수 |
|
||||||||
반환 값 |
|
인코딩 목록
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 표현으로 직렬화합니다.
세부정보 | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
매개변수 |
|
||||||||||||
반환 값 |
|