Google은 흑인 공동체를 위한 인종적 평등을 추구하기 위해 노력하고 있습니다. 자세히 알아보기

네덜란드어

Weave 관련 nlassert.h 재정의.

요약

열거

@357 enum
@358 enum
@359 enum
@360 enum
@361 enum
SerializedFieldType{
  SerializedFieldTypeBoolean = 0x00,
  SerializedFieldTypeUInt8,
  SerializedFieldTypeUInt16,
  SerializedFieldTypeUInt32,
  SerializedFieldTypeUInt64,
  SerializedFieldTypeInt8,
  SerializedFieldTypeInt16,
  SerializedFieldTypeInt32,
  SerializedFieldTypeInt64,
  SerializedFieldTypeFloatingPoint32,
  SerializedFieldTypeFloatingPoint64,
  SerializedFieldTypeUTF8String,
  SerializedFieldTypeByteString,
  SerializedFieldTypeStructure,
  SerializedFieldTypeArray
}
enum
TLV 필드로 작성할 TLV 유형 목록입니다.
SerializedFieldTypeBits enum
SerializedFieldType의 비트필드입니다.
SerializedFieldTypeMasks enum
SerializedFieldType의 비트에 액세스하기 위한 마스크입니다.

Typedef

Base64CharToValFunct)(uint8_t c) typedef
uint8_t(*
Base64ValToCharFunct)(uint8_t val) typedef
char(*
MemoryAllocate)(size_t size) typedef
void *(*
메모리 할당/자유 함수 함수 포인터.
MemoryFree)(void *ptr) typedef
void(*
MemoryReallocate)(void *ptr, size_t size) typedef
void *(*

변수

sASN1ErrorFormatter = { nl::Weave::ASN1::FormatASN1Error, NULL }
sElementSize = { sizeof(bool), sizeof(uint8_t), sizeof(uint16_t), sizeof(uint32_t), sizeof(uint64_t), sizeof(int8_t), sizeof(int16_t), sizeof(int32_t), sizeof(int64_t), sizeof(float), sizeof(double), sizeof(char *), sizeof(SerializedByteString), sizeof(void *), sizeof(void *) }[]
const uint8_t
sErrorFormatterList = &sWeaveErrorFormatter
const ErrorFormatter *
오류 형식 지정 함수의 연결된 목록입니다.
sErrorStr[WEAVE_CONFIG_ERROR_STR_SIZE]
char
형식이 지정된 오류 문자열을 저장하는 정적 버퍼입니다.
sErrorStr[1024]
char
이 루틴은 지정된 프로필과 연결되어 있는 제공된 상태 코드를 설명하는 사람이 읽을 수 있는 NULL 종료 C 문자열을 반환합니다.
sWeaveErrorFormatter = { nl::Weave::FormatWeaveError, &sASN1ErrorFormatter }

Functions

AdjustCalendarDate(uint16_t & year, uint8_t & month, uint8_t & dayOfMonth, int32_t relativeDays)
void
Base64CharToVal(uint8_t c)
uint8_t
Base64Decode(const char *in, uint16_t inLen, uint8_t *out, Base64CharToValFunct charToValFunct)
uint16_t
Base64Decode(const char *in, uint16_t inLen, uint8_t *out)
uint16_t
Base64Decode32(const char *in, uint32_t inLen, uint8_t *out, Base64CharToValFunct charToValFunct)
uint32_t
Base64Decode32(const char *in, uint32_t inLen, uint8_t *out)
uint32_t
Base64Encode(const uint8_t *in, uint16_t inLen, char *out, Base64ValToCharFunct valToCharFunct)
uint16_t
Base64Encode(const uint8_t *in, uint16_t inLen, char *out)
uint16_t
Base64Encode32(const uint8_t *in, uint32_t inLen, char *out, Base64ValToCharFunct valToCharFunct)
uint32_t
Base64Encode32(const uint8_t *in, uint32_t inLen, char *out)
uint32_t
Base64URLCharToVal(uint8_t c)
uint8_t
Base64URLDecode(const char *in, uint16_t inLen, uint8_t *out)
uint16_t
Base64URLEncode(const uint8_t *in, uint16_t inLen, char *out)
uint16_t
Base64URLValToChar(uint8_t val)
char
Base64ValToChar(uint8_t val)
char
CalendarDateToDaysSinceEpoch(uint16_t year, uint8_t month, uint8_t dayOfMonth, uint32_t & daysSinceEpoch)
bool
CalendarDateToOrdinalDate(uint16_t year, uint8_t month, uint8_t dayOfMonth, uint16_t & dayOfYear)
void
CalendarTimeToSecondsSinceEpoch(uint16_t year, uint8_t month, uint8_t dayOfMonth, uint8_t hour, uint8_t minute, uint8_t second, uint32_t & secondsSinceEpoch)
bool
ClearFlag(FlagsT & inFlags, const FlagT inFlag)
void
DateToManufacturingWeek(uint16_t year, uint8_t month, uint8_t day, uint16_t & mfgYear, uint8_t & mfgWeek)
void
DaysInMonth(uint16_t year, uint8_t month)
uint8_t
DaysSinceEpochToCalendarDate(uint32_t daysSinceEpoch, uint16_t & year, uint8_t & month, uint8_t & dayOfMonth)
void
DaysToMarch1(uint16_t year)
uint8_t
DeallocateDeserializedStructure(void *aStructureData, const SchemaFieldDescriptor *aFieldDescriptors, SerializationContext *aContext)
ErrorStr(int32_t err)
NL_DLL_EXPORT const char *
이 루틴은 제공된 오류를 설명하고 사람이 읽을 수 있는 NULL 종료 C 문자열을 반환합니다.
ExtractManufacturingDateFromSerialNumber(const char *serialNum, uint16_t & year, uint8_t & month, uint8_t & day)
FindNullifiedFieldsArray(void *aStructureData, const SchemaFieldDescriptor *aSchemaDescriptor, uint8_t *& aNullifiedFields)
C 구조체의 끝에 있는 null 처리된 필드 배열의 위치를 찾는 도우미 함수입니다.
FindStatusReportStr(uint32_t inProfileId, uint16_t inStatusCode)
const char *
FirstWeekdayOfYear(uint16_t year)
uint8_t
FormatError(char *buf, uint16_t bufSize, const char *subsys, int32_t err, const char *desc)
void
제공된 오류를 설명하고 사람이 읽을 수 있는 NULL 종료 C 문자열을 생성합니다.
GetArrayElementSize(uint32_t & aOutSize, const FieldDescriptor *aFieldPtr, SerializedFieldType aType)
GetFlag(const FlagsT & inFlags, const FlagT inFlag)
bool
IsBase34NoIOChar(char ch)
bool
IsLeapYear(uint16_t year)
bool
IsValidFieldType(SerializedFieldType aType)
bool
IsValidSerialNumber(const char *serialNum)
bool
LogEvent(TEvent *aEvent)
nl::Weave::Profiles::DataManagement::event_id_t
LogEvent(TEvent *aEvent, const nl::Weave::Profiles::DataManagement::EventOptions & aOptions)
nl::Weave::Profiles::DataManagement::event_id_t
ManufacturingWeekToDate(uint16_t mfgYear, uint8_t mfgWeek, uint16_t & year, uint8_t & month, uint8_t & day)
void
MarchBasedDayOfYearToMonth(uint16_t dayOfYear)
uint8_t
MarchBasedMonthToDayOfYear(uint8_t month)
uint16_t
NullifyAllEventFields(TEvent *aEvent)
void
OrdinalDateToCalendarDate(uint16_t year, uint16_t dayOfYear, uint8_t & month, uint8_t & dayOfMonth)
void
ReadDataForType(TLVReader & aReader, void *aStructureData, const FieldDescriptor *& aFieldPtr, SerializedFieldType aType, bool aInArray, SerializationContext *aContext)
구조 데이터를 기반으로 TLV의 특정 항목을 읽는 리더 함수입니다.
ReadNullableDataForType(TLVReader & aReader, void *aStructureData, const FieldDescriptor *& aFieldPtr, SerializedFieldType aType, bool & aIsNullified, SerializationContext *aContext)
TLV에서 읽기 전에 데이터가 null 허용 여부/Null 허용 여부를 확인하는 리더 함수입니다.
RegisterErrorFormatter(ErrorFormatter *errFormatter)
NL_DLL_EXPORT void
오류 형식 지정자의 전역 목록에 새 오류 형식 지정 함수를 추가합니다.
SecondsSinceEpochToCalendarTime(uint32_t secondsSinceEpoch, uint16_t & year, uint8_t & month, uint8_t & dayOfMonth, uint8_t & hour, uint8_t & minute, uint8_t & second)
void
SerializedDataToTLVWriter(TLVWriter & aWriter, void *aStructureData, const SchemaFieldDescriptor *aFieldDescriptors)
데이터 구조를 TLV 구조로 변환하는 작성자 함수
SerializedDataToTLVWriterHelper(TLVWriter & aWriter, uint8_t aDataTag, void *aAppData)
SerializedDataToTLVwriter를 컨테이너로 둘러싸는 래퍼 작성기 함수입니다.
SetFlag(FlagsT & inFlags, const FlagT inFlag)
void
SetFlag(FlagsT & inFlags, const FlagT inFlag, const bool inValue)
void
StatusReportStr(uint32_t profileId, uint16_t statusCode)
const char *
TLVReaderToDeserializedData(nl::Weave::TLV::TLVReader & aReader, void *aStructureData, const SchemaFieldDescriptor *aFieldDescriptors, SerializationContext *aContext)
TLV를 C 구조체로 변환하는 리더 함수.
TLVReaderToDeserializedDataHelper(nl::Weave::TLV::TLVReader & aReader, uint8_t aDataTag, void *aAppData, SerializationContext *aContext)
단일 TLV 데이터 요소를 역직렬화하는 도우미 함수입니다.
WriteArrayData(TLVWriter & aWriter, void *aStructureData, const FieldDescriptor *aFieldPtr)
배열 구조를 작성하는 작성자 함수입니다.
WriteDataForType(TLVWriter & aWriter, void *aStructureData, const FieldDescriptor *& aFieldPtr, SerializedFieldType aType, bool aInArray)
작성기 함수는 구조 데이터를 기준으로 특정 항목을 TLV에 작성합니다.
WriteNullableDataForType(TLVWriter & aWriter, void *aStructureData, const FieldDescriptor *& aFieldPtr, SerializedFieldType aType, bool aIsNullified)
TLV에 쓰기 전에 데이터를 null을 허용하는지 또는 null을 허용하는지 확인하는 작성자 함수입니다.
secondsToMilliseconds(uint32_t seconds)
uint32_t

구조체

nl::ArrayLengthAndBuffer

길이를 길이로 래핑하는 도우미입니다.

nl::오류 형식 지정 도구
nl::FieldDescriptor

스키마 구조의 TLV 필드를 설명하고 c 구조체의 데이터에 연결하는 TLV 필드입니다.

nl::메모리 관리

메모리 할당/자유 함수의 c 구조.

nl::SchemaFieldDescriptor

FieldDescriptors 배열을 포함하는 래퍼로 스키마 구조/구조를 설명합니다.

nl::직렬화 컨텍스트

직렬화 또는 역직렬화에 필요한 컨텍스트 또는 상태가 포함된 c 구조체

nl::SerialSerialByteString
nl::SerializedFieldTypeBoolean_array
nl::SerializedFieldTypeByteString_array
nl::SerializedFieldTypeFloatingPoint32_array
nl::SerializedFieldTypeFloatingPoint64_array
nl::SerializedFieldTypeInt16_array
nl::SerializedFieldTypeInt32_array
nl::SerializedFieldTypeInt64_array
nl::SerializedFieldTypeInt8_array
nl::SerialFieldFieldTypeUInt16_배열
nl::SerialFieldFieldTypeUInt32_array
nl::SerializedFieldTypeUInt64_array
nl::SerializedFieldTypeUInt8_array
nl::SerializedFieldTypeUTF8String_array
nl::StructureSchemaPointerPair

데이터를 c-struct 및 데이터 및 StructureSchemaDescriptor로 페어링하면 해당 데이터를 기반으로 TLV 구조를 작성할 수 있습니다.

네임스페이스

nl::ArgParser에서
nl::Ble

이 네임스페이스는 블루투스 저전력 블루투스 (BLE)라고도 하는 Weave 내의 모든 인터페이스를 포함합니다.

nl::네트
nl::NestCerts

이 네임스페이스에는 Nest Weave 공개키 인프라 (PKI) 인증서의 전역 기호가 포함됩니다.

nl::페어링 코드
nl::
nl::위브

열거

@357

 @357

@358

 @358

@359

 @359

@360

 @360

@361

 @361

SerialFieldFieldType

 SerializedFieldType

TLV 필드로 작성할 TLV 유형 목록입니다.

속성
SerializedFieldTypeArray

배열 유형입니다.

SerializedFieldTypeBoolean

부울 유형입니다.

SerializedFieldTypeByteString

바이트 문자열 유형.

SerializedFieldTypeFloatingPoint32

32비트 부동 소수점 유형

SerializedFieldTypeFloatingPoint64

64비트 부동 소수점 유형

SerializedFieldTypeInt16

부호 있는 16비트 유형입니다.

SerializedFieldTypeInt32

부호 있는 32비트 유형입니다.

SerializedFieldTypeInt64

부호 있는 64비트 유형입니다.

SerializedFieldTypeInt8

부호 있는 8비트 유형입니다.

SerializedFieldTypeStructure

사용자가 정의한 구조 유형입니다.

SerializedFieldTypeUInt16

부호 없는 16비트 유형.

SerializedFieldTypeUInt32

부호 없는 32비트 유형입니다.

SerializedFieldTypeUInt64

부호 없는 64비트 유형.

SerializedFieldTypeUInt8

부호 없는 8비트 유형입니다.

SerializedFieldTypeUTF8String

UTF-8 문자열 유형입니다.

SerialFieldTypeBits

 SerializedFieldTypeBits

SerializedFieldType의 비트필드입니다.

SerialFieldFieldTypeMask

 SerializedFieldTypeMasks

SerializedFieldType의 비트에 액세스하기 위한 마스크입니다.

Typedef

Base64CharToValFunct

uint8_t(* Base64CharToValFunct)(uint8_t c)

Base64ValToCharFunct

char(* Base64ValToCharFunct)(uint8_t val)

메모리 할당

void *(* MemoryAllocate)(size_t size)

메모리 할당/자유 함수 함수 포인터.

메모리 프리

void(* MemoryFree)(void *ptr)

메모리 재할당

void *(* MemoryReallocate)(void *ptr, size_t size)

변수

SASN1ErrorFormatter

const ErrorFormatter sASN1ErrorFormatter =
{
    nl::Weave::ASN1::FormatASN1Error,
    NULL
}

요소 크기

const uint8_t sElementSize[] =
{
    sizeof(bool),                   
    sizeof(uint8_t),                
    sizeof(uint16_t),               
    sizeof(uint32_t),               
    sizeof(uint64_t),               
    sizeof(int8_t),                 
    sizeof(int16_t),                
    sizeof(int32_t),                
    sizeof(int64_t),                
    sizeof(float),                  
    sizeof(double),                 
    sizeof(char *),                 
    sizeof(SerializedByteString),   
    sizeof(void *),                 
    sizeof(void *)                  
}

오류 형식 지정 목록

const ErrorFormatter * sErrorFormatterList = &sWeaveErrorFormatter

오류 형식 지정 함수의 연결된 목록입니다.

오류 오류

char sErrorStr[WEAVE_CONFIG_ERROR_STR_SIZE]

형식이 지정된 오류 문자열을 저장하는 정적 버퍼입니다.

오류 오류

char sErrorStr[1024]

이 루틴은 지정된 프로필과 연결되어 있는 제공된 상태 코드를 설명하는 사람이 읽을 수 있는 NULL 종료 C 문자열을 반환합니다.

세부정보
매개변수
[in] profileId
.
[in] statusCode
profileId의 상태 코드로 설명 문자열을 제공합니다.
반환
지정된 프로필 내에서 제공된 상태 코드를 설명하는 NULL로 끝나는 C 문자열 포인터입니다.
참고 항목:
WEAVE_CONFIG_SHORT_ERROR_STR

sWeaveErrorFormatter

const ErrorFormatter sWeaveErrorFormatter =
{
    nl::Weave::FormatWeaveError,
    &sASN1ErrorFormatter
}

Functions

AdjustCalendarDate

void AdjustCalendarDate(
  uint16_t & year,
  uint8_t & month,
  uint8_t & dayOfMonth,
  int32_t relativeDays
)

Base64차토발

uint8_t Base64CharToVal(
  uint8_t c
)

Base64디코드

uint16_t Base64Decode(
  const char *in,
  uint16_t inLen,
  uint8_t *out,
  Base64CharToValFunct charToValFunct
)

Base64디코드

uint16_t Base64Decode(
  const char *in,
  uint16_t inLen,
  uint8_t *out
)

Base64Decode32

uint32_t Base64Decode32(
  const char *in,
  uint32_t inLen,
  uint8_t *out,
  Base64CharToValFunct charToValFunct
)

Base64Decode32

uint32_t Base64Decode32(
  const char *in,
  uint32_t inLen,
  uint8_t *out
)

Base64인코딩

uint16_t Base64Encode(
  const uint8_t *in,
  uint16_t inLen,
  char *out,
  Base64ValToCharFunct valToCharFunct
)

Base64인코딩

uint16_t Base64Encode(
  const uint8_t *in,
  uint16_t inLen,
  char *out
)

Base64인코딩32

uint32_t Base64Encode32(
  const uint8_t *in,
  uint32_t inLen,
  char *out,
  Base64ValToCharFunct valToCharFunct
)

Base64인코딩32

uint32_t Base64Encode32(
  const uint8_t *in,
  uint32_t inLen,
  char *out
)

Base64URL차토발

uint8_t Base64URLCharToVal(
  uint8_t c
)

Base64URL디코드

uint16_t Base64URLDecode(
  const char *in,
  uint16_t inLen,
  uint8_t *out
)

Base64URL인코딩

uint16_t Base64URLEncode(
  const uint8_t *in,
  uint16_t inLen,
  char *out
)

Base64URLValToChar

char Base64URLValToChar(
  uint8_t val
)

Base64ValToChar

char Base64ValToChar(
  uint8_t val
)

CalendarDateToDaysBeyondEpoch

bool CalendarDateToDaysSinceEpoch(
  uint16_t year,
  uint8_t month,
  uint8_t dayOfMonth,
  uint32_t & daysSinceEpoch
)

CalendarDateToOrdinalDate

void CalendarDateToOrdinalDate(
  uint16_t year,
  uint8_t month,
  uint8_t dayOfMonth,
  uint16_t & dayOfYear
)

CalendarTimeToSecondsthenEpoch

bool CalendarTimeToSecondsSinceEpoch(
  uint16_t year,
  uint8_t month,
  uint8_t dayOfMonth,
  uint8_t hour,
  uint8_t minute,
  uint8_t second,
  uint32_t & secondsSinceEpoch
)

지우기 플래그

void ClearFlag(
  FlagsT & inFlags,
  const FlagT inFlag
)

DateToManufacturingWeek

void DateToManufacturingWeek(
  uint16_t year,
  uint8_t month,
  uint8_t day,
  uint16_t & mfgYear,
  uint8_t & mfgWeek
)

uint8_t DaysInMonth(
  uint16_t year,
  uint8_t month
)

Days 있어 EpochToCalendarDate

void DaysSinceEpochToCalendarDate(
  uint32_t daysSinceEpoch,
  uint16_t & year,
  uint8_t & month,
  uint8_t & dayOfMonth
)

3월 1일

uint8_t DaysToMarch1(
  uint16_t year
)

DeassignDeserializedStructure

WEAVE_ERROR DeallocateDeserializedStructure(
  void *aStructureData,
  const SchemaFieldDescriptor *aFieldDescriptors,
  SerializationContext *aContext
)

오류 문자열

NL_DLL_EXPORT const char * ErrorStr(
  int32_t err
)

이 루틴은 제공된 오류를 설명하고 사람이 읽을 수 있는 NULL 종료 C 문자열을 반환합니다.

세부정보
매개변수
[in] err
형식 및 설명에 관한 오류입니다.
반환
제공된 NULL을 설명하는 NULL로 끝나는 C 문자열 포인터

ExtractManufacturingDateFromSerialNumber

WEAVE_ERROR ExtractManufacturingDateFromSerialNumber(
  const char *serialNum,
  uint16_t & year,
  uint8_t & month,
  uint8_t & day
)

FindNullifiedFieldsArray

WEAVE_ERROR FindNullifiedFieldsArray(
  void *aStructureData,
  const SchemaFieldDescriptor *aSchemaDescriptor,
  uint8_t *& aNullifiedFields
)

C 구조체의 끝에 있는 null 처리된 필드 배열의 위치를 찾는 도우미 함수입니다.

C 구조체의 nullified_field 멤버는 FieldDescriptors 배열에 설명된 마지막 멤버 바로 뒤에 있어야 합니다. 이 필드는 null 허용 이벤트의 제작자와 소비자에게 숨겨진 유틸리티이므로 필드 설명어 목록에 없습니다. 이 구조체 멤버는 null 허용 필드가 없는 이벤트에는 존재하지 않지만, setter 및 getter를 생성함으로써 범위를 벗어난 액세스가 발생하지 않아야 합니다.

세부정보
매개변수
[in] aStructureData
c 구조체에 대한 포인터.
[in] aSchemaDescriptor
c 구조체를 설명하는 SchemaFieldDescriptors
[out] aNullifiedFields
c 구조체의 nullified_field 멤버에 대한 포인터입니다.
반환 값
WEAVE_NO_ERROR
성공했습니다.
WEAVE_ERROR_INVALID_ARGUMENT
필드 설명자 포인터가 NULL인 경우.
WEAVE_ERROR_INCORRECT_STATE
필드 설명어의 형식이 예상과 일치하지 않는 경우.

FindStatusReportStr

const char * FindStatusReportStr(
  uint32_t inProfileId,
  uint16_t inStatusCode
)

첫 번째 주중

uint8_t FirstWeekdayOfYear(
  uint16_t year
)

형식 오류

void FormatError(
  char *buf,
  uint16_t bufSize,
  const char *subsys,
  int32_t err,
  const char *desc
)

제공된 오류를 설명하고 사람이 읽을 수 있는 NULL 종료 C 문자열을 생성합니다.

세부정보
매개변수
[in] buf
오류 문자열이 배치될 버퍼입니다.
[in] bufSize
제공된 버퍼의 크기(바이트)입니다.
[in] subsys
오류를 일으킨 하위 시스템을 설명하는 짧은 문자열입니다. 오류의 출처를 알 수 없거나 사용할 수 없는 경우 NULL입니다. 이 문자열은 10자(영문 기준) 이하여야 합니다.
[in] err
형식을 지정할 오류입니다.
[in] desc
오류의 원인 또는 의미를 설명하는 문자열이며 사용할 수 있는 정보가 없는 경우 NULL입니다.

GetArrayElementSize

WEAVE_ERROR GetArrayElementSize(
  uint32_t & aOutSize,
  const FieldDescriptor *aFieldPtr,
  SerializedFieldType aType
)

GetFlag

bool GetFlag(
  const FlagsT & inFlags,
  const FlagT inFlag
)

BaseBase 34NoIOChar

bool IsBase34NoIOChar(
  char ch
)

윤년

bool IsLeapYear(
  uint16_t year
)

IsValidFieldType

bool IsValidFieldType(
  SerializedFieldType aType
)

IsValidSerialNumber

bool IsValidSerialNumber(
  const char *serialNum
)

로그 이벤트

nl::Weave::Profiles::DataManagement::event_id_t LogEvent(
  TEvent *aEvent
)

로그 이벤트

nl::Weave::Profiles::DataManagement::event_id_t LogEvent(
  TEvent *aEvent,
  const nl::Weave::Profiles::DataManagement::EventOptions & aOptions
)

제조 주간

void ManufacturingWeekToDate(
  uint16_t mfgYear,
  uint8_t mfgWeek,
  uint16_t & year,
  uint8_t & month,
  uint8_t & day
)

행정 기준 연도 월

uint8_t MarchBasedDayOfYearToMonth(
  uint16_t dayOfYear
)

행정 기준 월 일

uint16_t MarchBasedMonthToDayOfYear(
  uint8_t month
)

NullifyAllEventFields

void NullifyAllEventFields(
  TEvent *aEvent
)

OrdinalDateToCalendarDate

void OrdinalDateToCalendarDate(
  uint16_t year,
  uint16_t dayOfYear,
  uint8_t & month,
  uint8_t & dayOfMonth
)

ReadDataForType

WEAVE_ERROR ReadDataForType(
  TLVReader & aReader,
  void *aStructureData,
  const FieldDescriptor *& aFieldPtr,
  SerializedFieldType aType,
  bool aInArray,
  SerializationContext *aContext
)

구조 데이터를 기반으로 TLV의 특정 항목을 읽는 리더 함수입니다.

세부정보
매개변수
[in] aReader
구조에서 읽기에 사용할 리더
[in] aStructureData
읽을 c-구조적 데이터 포인터
[in,out] aFieldPtr
FieldDescriptor: 필드 및 TLV 태그를 설명합니다. 이 함수는 포인터를 증가시키며, FieldDescritor 배열의 다음 요소를 가리킵니다.
[in] aType
필드의 SerializedFieldType
[in] aInArray
배열을 읽는 경우에는 참입니다 (익명 태그 사용).
[in] aContext
작업에 필요한 모든 상태를 포함하는 직렬화 컨텍스트입니다.
반환 값
WEAVE_NO_ERROR
성공했습니다.
other
aReader에서 반환되는 기타 오류

ReadNullableDataForType

WEAVE_ERROR ReadNullableDataForType(
  TLVReader & aReader,
  void *aStructureData,
  const FieldDescriptor *& aFieldPtr,
  SerializedFieldType aType,
  bool & aIsNullified,
  SerializationContext *aContext
)

TLV에서 읽기 전에 데이터가 null 허용 여부/Null 허용 여부를 확인하는 리더 함수입니다.

세부정보
매개변수
[in] aReader
구조에서 읽기에 사용할 리더
[in] aStructureData
읽을 c-구조적 데이터 포인터
[in,out] aFieldPtr
FieldDescriptor: 필드 및 TLV 태그를 설명합니다. 함수는 포인터를 증가시킵니다.이는 FieldDescriptor 배열에 있는 다음 요소를 가리킵니다.
[in] aType
필드의 SerializedFieldType
[out] aIsNullified
필드가 무효화되었음을 나타내도록 설정합니다.
[in] aContext
작업에 필요한 모든 상태를 포함하는 직렬화 컨텍스트입니다.
반환 값
WEAVE_NO_ERROR
성공했습니다.
other
쓰는 동안 TLV 오류가 발생했습니다.

레지스터 오류 형식 지정

NL_DLL_EXPORT void RegisterErrorFormatter(
  ErrorFormatter *errFormatter
)

오류 형식 지정자의 전역 목록에 새 오류 형식 지정 함수를 추가합니다.

세부정보
매개변수
[in] errFormatter
새 오류 함수에 대한 포인터를 포함하는 ErrorFormatter 구조 제공된 ErrorFormatter 구조체 포인터는 함수에 의해 유지됩니다. 따라서 구조에 대한 메모리를 예약해야 합니다.

SecondsBeyondEpochToCalendarTime

void SecondsSinceEpochToCalendarTime(
  uint32_t secondsSinceEpoch,
  uint16_t & year,
  uint8_t & month,
  uint8_t & dayOfMonth,
  uint8_t & hour,
  uint8_t & minute,
  uint8_t & second
)

SerialDataDataToTLVViewer

WEAVE_ERROR SerializedDataToTLVWriter(
  TLVWriter & aWriter,
  void *aStructureData,
  const SchemaFieldDescriptor *aFieldDescriptors
)

데이터 구조를 TLV 구조로 변환하는 작성자 함수

SchemaFieldDescriptor를 사용하여 데이터 구조를 해석하고 TLV에 씁니다.

세부정보
매개변수
[in] aWriter
구조를 작성할 때 사용하는 작성자
[in] aStructureData
SchemaFieldDescriptor를 기반으로 쓸 c-구조적 데이터 포인터
[in] aFieldDescriptors
c 구조체 + TLV를 설명하는 SchemaFieldDescriptors
반환 값
WEAVE_NO_ERROR
성공했습니다.
other
awriter에서 반환되는 기타 오류입니다.

SerializedDataToTLVViewerHelper

WEAVE_ERROR SerializedDataToTLVWriterHelper(
  TLVWriter & aWriter,
  uint8_t aDataTag,
  void *aAppData
)

SerializedDataToTLVwriter를 컨테이너로 둘러싸는 래퍼 작성기 함수입니다.

또한 전달할 수 있는 StructureSchemaPointerPair가 구조 데이터 및 설명어로 분할됩니다.

세부정보
매개변수
[in] aWriter
구조를 작성할 때 사용하는 작성자
[in] aDataTag
쓸 태그
[in] aAppData
StructureSchemaPointerPair는 구조 데이터와 필드 설명자에 대한 포인터를 포함합니다. 프로토타입으로 인해 void* 입니다.
반환 값
WEAVE_NO_ERROR
성공했습니다.
other
awriter에서 반환되는 기타 오류입니다.

setFlag

void SetFlag(
  FlagsT & inFlags,
  const FlagT inFlag
)

setFlag

void SetFlag(
  FlagsT & inFlags,
  const FlagT inFlag,
  const bool inValue
)

StatusReportStr

const char * StatusReportStr(
  uint32_t profileId,
  uint16_t statusCode
)

TLVReaderToDeserializedData

WEAVE_ERROR TLVReaderToDeserializedData(
  nl::Weave::TLV::TLVReader & aReader,
  void *aStructureData,
  const SchemaFieldDescriptor *aFieldDescriptors,
  SerializationContext *aContext
)

TLV를 C 구조체로 변환하는 리더 함수.

SchemaFieldDescriptor를 사용하여 데이터 구조를 해석합니다.

알 수 없는 필드를 포함할 때와 예상 필드가 표시되지 않을 때 강력해야 합니다.

세부정보
매개변수
[in] aReader
데이터 읽기에 사용할 리더
[in] aStructureData
SchemaFieldDescriptor를 기반으로 읽히는 대상 c-구조 데이터 포인터
[in] aFieldDescriptors
c 구조체 + TLV를 설명하는 SchemaFieldDescriptors
[in] aContext
작업에 필요한 모든 상태를 포함하는 직렬화 컨텍스트입니다.
반환 값
WEAVE_NO_ERROR
성공했습니다.
other
aReader에서 반환될 수 있는 기타 오류입니다.

TLVReaderToDeserializedDataHelper

WEAVE_ERROR TLVReaderToDeserializedDataHelper(
  nl::Weave::TLV::TLVReader & aReader,
  uint8_t aDataTag,
  void *aAppData,
  SerializationContext *aContext
)

단일 TLV 데이터 요소를 역직렬화하는 도우미 함수입니다.

이 함수는 StructureSchemaPointerPair를 ReadDataForType에 전달할 구조 데이터 및 설명어로 분할합니다.

세부정보
매개변수
[in] aReader
역직렬화할 데이터가 포함된 리더
[in] aDataTag
현재 사용되지 않음
[in] aAppData
StructureSchemaPointerPair는 구조 데이터와 필드 설명자에 대한 포인터를 포함합니다. 프로토타입으로 인해 void* 입니다.
[in] aContext
작업에 필요한 모든 상태를 포함하는 직렬화 컨텍스트입니다.
반환 값
WEAVE_NO_ERROR
성공했습니다.
other
aReader에서 반환되는 기타 오류

쓰기 배열 데이터

WEAVE_ERROR WriteArrayData(
  TLVWriter & aWriter,
  void *aStructureData,
  const FieldDescriptor *aFieldPtr
)

배열 구조를 작성하는 작성자 함수입니다.

세부정보
매개변수
[in] aWriter
구조를 작성할 때 사용하는 작성자
[in] aStructureData
FieldDescriptor를 기반으로 쓸 c-구조 데이터 포인터
[in] aFieldPtr
배열 c 구조체 + TLV를 설명하는 FieldDescriptor
반환 값
WEAVE_NO_ERROR
성공했습니다.
other
awriter에서 반환되는 기타 오류입니다.

TypeDataForType

WEAVE_ERROR WriteDataForType(
  TLVWriter & aWriter,
  void *aStructureData,
  const FieldDescriptor *& aFieldPtr,
  SerializedFieldType aType,
  bool aInArray
)

작성기 함수는 구조 데이터를 기준으로 특정 항목을 TLV에 작성합니다.

세부정보
매개변수
[in] aWriter
구조를 작성할 때 사용하는 작성자
[in] aStructureData
작성할 c-구조적 데이터 포인터
[in,out] aFieldPtr
FieldDescriptor: 필드 및 TLV 태그를 설명합니다. 이 함수는 포인터를 증가시키며, FieldDescritor 배열의 다음 요소를 가리킵니다.
[in] aType
필드의 SerializedFieldType
[in] aInArray
배열을 다시 작성하는 경우 참입니다 (익명 태그 사용).
반환 값
WEAVE_NO_ERROR
성공했습니다.
other
awriter에서 반환되는 기타 오류입니다.

쓰기 nullableDataForType

WEAVE_ERROR WriteNullableDataForType(
  TLVWriter & aWriter,
  void *aStructureData,
  const FieldDescriptor *& aFieldPtr,
  SerializedFieldType aType,
  bool aIsNullified
)

TLV에 쓰기 전에 데이터를 null을 허용하는지 또는 null을 허용하는지 확인하는 작성자 함수입니다.

세부정보
매개변수
[in] aWriter
구조를 작성할 때 사용하는 작성자
[in] aStructureData
읽을 c-구조적 데이터 포인터
[in,out] aFieldPtr
FieldDescriptor: 필드 및 TLV 태그를 설명합니다. 함수는 포인터를 증가시킵니다.이는 FieldDescriptor 배열에 있는 다음 요소를 가리킵니다.
[in] aType
필드의 SerializedFieldType
[in] aIsNullified
이 경우에 TLV 태그는 null이 됩니다.
반환 값
WEAVE_NO_ERROR
성공했습니다.
other
쓰는 동안 TLV 오류가 발생했습니다.

secondsToMlims

uint32_t secondsToMilliseconds(
  uint32_t seconds
)