nl:: Weave:: Profiles:: 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)
|
TLV 표현에서 NetworkInfo 요소 목록을 역직렬화합니다.
|
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
네트워크의 숨김 여부입니다.
NetworkId
int64_t NetworkId
기기에서 네트워크에 할당한 네트워크 ID로, 지정하지 않으면 -1입니다.
ThreadChannel
uint8_t ThreadChannel
스레드 네트워크가 작동하는 현재 채널 (현재 [11..26]) 또는 kThreadChannel_NotSpecified입니다.
ThreadExtendedPANId
uint8_t * ThreadExtendedPANId
스레드 확장 PAN ID입니다.
클래스가 소유한 8옥텟으로 구성된 동적으로 할당된 배열입니다. 객체에서 Clear()
를 호출하는 모든 조건에서 삭제됩니다.
ThreadNetworkKey
uint8_t * ThreadNetworkKey
스레드 마스터 네트워크 키이거나 지정되지 않은 경우 NULL입니다.
이 객체는 동적으로 할당된 임의 옥텟의 배열로, 객체에서 Clear()
를 호출하는 모든 조건에서 소멸 클래스가 소유합니다.
ThreadNetworkName
char * ThreadNetworkName
스레드 네트워크의 이름이거나 지정되지 않은 경우 NULL입니다.
이는 클래스가 소유하며 NUL로 종료되고 동적으로 할당된 C 문자열입니다. 객체에서 Clear()
를 호출하는 모든 조건에서 삭제됩니다.
ThreadPANId
uint32_t ThreadPANId
16비트 스레드 PAN ID 또는 kThreadPANId_NotSpecified입니다.
ThreadPSKc
uint8_t * ThreadPSKc
커미셔닝용 스레드 사전 공유 키이거나 지정되지 않은 경우 NULL입니다.
이 객체는 동적으로 할당된 임의 옥텟의 배열로, 객체에서 Clear()
를 호출하는 모든 조건에서 소멸 클래스가 소유합니다.
WiFiKey
uint8_t * WiFiKey
Wi-Fi 키이며, 지정하지 않으면 NULL입니다.
클래스가 소유하고 길이가 WiFiKeyLen
로 지정된 임의 옥텟의 동적으로 할당된 배열입니다. 객체에서 Clear()
를 호출하는 모든 조건에서 삭제됩니다.
WiFiKeyLen
uint32_t WiFiKeyLen
Wi-Fi 키의 길이(바이트)입니다.
WiFiSSID
char * WiFiSSID
Wi-Fi SSID입니다. 지정하지 않으면 NULL입니다.
이는 클래스가 소유하며 NUL로 종료되고 동적으로 할당된 C 문자열입니다. 객체에서 Clear()
를 호출하는 모든 조건에서 삭제됩니다.
WiFiSecurityType
::nl::Weave::Profiles::NetworkProvisioning::WiFiSecurityType WiFiSecurityType
Wi-Fi 보안 유형입니다.
WirelessSignalStrength
int16_t WirelessSignalStrength
네트워크의 신호 강도입니다. 사용할 수 없거나 적용할 수 없는 경우 INT16_MIN입니다.
공개 함수
CopyTo
WEAVE_ERROR CopyTo( NetworkInfo & dest )
이 NetworkInfo 객체의 내용을 인수 콘텐츠의 전체 사본으로 바꿉니다.
세부정보 | |||||||
---|---|---|---|---|---|---|---|
매개변수 |
|
||||||
반환 값 |
|
Decode
WEAVE_ERROR Decode( nl::Weave::TLV::TLVReader & reader )
이 NetworkInfo 객체의 콘텐츠를 TLV 표현에서 역직렬화합니다.
세부정보 | |||
---|---|---|---|
매개변수 |
|
||
반환 |
WEAVE_NO_ERROR 성공 시 네트워크 프로비저닝 프로필을 준수하지 않는 요소에서 WEAVE_ERROR_INVALID_TLV_ELEMENT, TLV 판독기에서 잘못된 요소 디코딩 오류가 발생합니다.
|
인코딩
WEAVE_ERROR Encode( nl::Weave::TLV::TLVWriter & writer, uint8_t encodeFlags ) const
이 NetworkInfo 객체의 콘텐츠를 TLV 표현으로 직렬화합니다.
세부정보 | |||||
---|---|---|---|---|---|
매개변수 |
|
||||
반환 |
WEAVE_NO_ERROR 성공 시 네트워크 프로비저닝 프로필을 준수하지 않는 요소에서 WEAVE_ERROR_INVALID_TLV_ELEMENT, TLV 판독기에서 잘못된 요소 디코딩 오류가 발생합니다.
|
MergeTo
WEAVE_ERROR MergeTo( NetworkInfo & dest )
이 NetworkInfo 객체의 콘텐츠를 인수 콘텐츠의 전체 사본과 병합합니다.
인수 객체의 기본값이 아닌 모든 값이 이 객체의 값을 대체합니다.
세부정보 | |||||||
---|---|---|---|---|---|---|---|
매개변수 |
|
||||||
반환 값 |
|
NetworkInfo
NetworkInfo()
~NetworkInfo
~NetworkInfo()
공개 정적 함수
DecodeList
WEAVE_ERROR DecodeList( nl::Weave::TLV::TLVReader & reader, uint16_t & elemCount, NetworkInfo *& elemArray )
TLV 표현에서 NetworkInfo 요소 목록을 역직렬화합니다.
세부정보 | |||||||
---|---|---|---|---|---|---|---|
매개변수 |
|
||||||
반환 값 |
|
EncodeList
WEAVE_ERROR EncodeList( nl::Weave::TLV::TLVWriter & writer, uint16_t elemCount, const NetworkInfo *elemArray, uint8_t encodeFlags )
NetworkInfo 객체의 배열을 TLV 표현으로 직렬화합니다.
배열은 TLV 표현의 익명 요소입니다.
세부정보 | |||||||||
---|---|---|---|---|---|---|---|---|---|
매개변수 |
|
||||||||
반환 값 |
|
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 )
특정 유형의 네트워크만 선택하여 NetworkInfo 객체의 배열을 TLV 표현으로 직렬화합니다.
세부정보 | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
매개변수 |
|
||||||||||||
반환 값 |
|