nl
Weave 專屬的 nlassert.h Overrides,
摘要
列舉 |
|
---|---|
@357
|
列舉 |
@358
|
列舉 |
@359
|
列舉 |
@360
|
列舉 |
@361
|
列舉 |
SerializedFieldType{
|
列舉 要透過 TLV 欄位寫入的 TLV 類型清單。 |
SerializedFieldTypeBits
|
列舉 SerializedFieldType 的位元欄位。 |
SerializedFieldTypeMasks
|
列舉 存取 SerializedFieldType 位元的遮罩。 |
Typedefs |
|
---|---|
Base64CharToValFunct)(uint8_t c)
|
typedefuint8_t(*
|
Base64ValToCharFunct)(uint8_t val)
|
typedefchar(*
|
MemoryAllocate)(size_t size)
|
typedefvoid *(*
記憶體分配/免費函式指標。 |
MemoryFree)(void *ptr)
|
typedefvoid(*
|
MemoryReallocate)(void *ptr, size_t size)
|
typedefvoid *(*
|
變數 |
|
---|---|
sASN1ErrorFormatter =
{
nl::Weave::ASN1::FormatASN1Error,
NULL
}
|
const ErrorFormatter
|
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
}
|
const ErrorFormatter
|
函式 |
|
---|---|
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 結構體結尾為空值的欄位陣列的位置。
|
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 讀取資料前,檢查資料是否可為空值或空值的讀取器函式。
|
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 之前,用於檢查資料是否可為空值或空值的寫入者函式。
|
secondsToMilliseconds(uint32_t seconds)
|
uint32_t
|
Structs |
|
---|---|
nl:: |
用於包裝陣列的長度輔助函式。 |
nl:: |
|
nl:: |
說明結構定義結構中 TLV 欄位的結構,並將該欄位連結至 c-struct 中的資料。 |
nl:: |
記憶體配置/釋放函式的 c-struct。 |
nl:: |
環繞 FieldDescriptors 陣列,以描述結構定義/結構。 |
nl:: |
c 結構體,內含進行序列化或還原序列化所需的任何背景資訊或狀態。 |
nl:: |
|
nl:: |
|
nl:: |
|
nl:: |
|
nl:: |
|
nl:: |
|
nl:: |
|
nl:: |
|
nl:: |
|
nl:: |
|
nl:: |
|
nl:: |
|
nl:: |
|
nl:: |
|
nl:: |
將資料與 c-struct 資料配對,以及 StructureSchemaDescriptor,以根據該資料編寫 TLV 結構。 |
命名空間 |
|
---|---|
nl:: |
|
nl:: |
此命名空間包含藍牙低功耗 (BLE) 的所有介面,也稱為 Bluetooth Smart。 |
nl:: |
|
nl:: |
這個命名空間包含 Nest Weave 公開金鑰基礎架構 (PKI) 憑證的全域符號。 |
nl:: |
|
nl: |
|
nl:: |
列舉
@357
@357
@358
@358
@359 人
@359
@360
@360
@361
@361
SerializedFieldType
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 字串類型。 |
SerializedFieldTypeBits
SerializedFieldTypeBits
SerializedFieldType 的位元欄位。
SerializedFieldTypeMasks
SerializedFieldTypeMasks
存取 SerializedFieldType 位元的遮罩。
Typedefs
Base64CharToValFunct
uint8_t(* Base64CharToValFunct)(uint8_t c)
Base64ValToCharFunct
char(* Base64ValToCharFunct)(uint8_t val)
MemoryAllocate
void *(* MemoryAllocate)(size_t size)
記憶體分配/免費函式指標。
MemoryFree
void(* MemoryFree)(void *ptr)
MemoryReallocate
void *(* MemoryReallocate)(void *ptr, size_t size)
變數
sASN1ErrorFormatter
const ErrorFormatter sASN1ErrorFormatter = { nl::Weave::ASN1::FormatASN1Error, NULL }
sElementSize
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 *) }
sErrorFormatterList
const ErrorFormatter * sErrorFormatterList = &sWeaveErrorFormatter
錯誤格式設定工具函式的已連結清單。
sErrorStr
char sErrorStr[WEAVE_CONFIG_ERROR_STR_SIZE]
用於儲存格式化錯誤字串的靜態緩衝區。
sErrorStr
char sErrorStr[1024]
這個常式會傳回使用者可理解的 NULL 結尾 C 字串,說明與指定設定檔相關聯的提供的狀態碼。
詳細資料 | |||||
---|---|---|---|---|---|
參數 |
|
||||
傳回 |
指向以 NULL 結尾的 C 字串,這個字串說明指定設定檔中提供的狀態碼。
|
WEAVE_CONFIG_SHORT_ERROR_STR
sWeaveErrorFormatter
const ErrorFormatter sWeaveErrorFormatter = { nl::Weave::FormatWeaveError, &sASN1ErrorFormatter }
函式
AdjustCalendarDate
void AdjustCalendarDate( uint16_t & year, uint8_t & month, uint8_t & dayOfMonth, int32_t relativeDays )
Base64CharToVal
uint8_t Base64CharToVal( uint8_t c )
Base64Decode
uint16_t Base64Decode( const char *in, uint16_t inLen, uint8_t *out, Base64CharToValFunct charToValFunct )
Base64Decode
uint16_t Base64Decode( const char *in, uint16_t inLen, uint8_t *out )
Base64 解碼 32
uint32_t Base64Decode32( const char *in, uint32_t inLen, uint8_t *out, Base64CharToValFunct charToValFunct )
Base64 解碼 32
uint32_t Base64Decode32( const char *in, uint32_t inLen, uint8_t *out )
Base64Encode
uint16_t Base64Encode( const uint8_t *in, uint16_t inLen, char *out, Base64ValToCharFunct valToCharFunct )
Base64Encode
uint16_t Base64Encode( const uint8_t *in, uint16_t inLen, char *out )
Base64Encode32
uint32_t Base64Encode32( const uint8_t *in, uint32_t inLen, char *out, Base64ValToCharFunct valToCharFunct )
Base64Encode32
uint32_t Base64Encode32( const uint8_t *in, uint32_t inLen, char *out )
Base64URLCharToVal
uint8_t Base64URLCharToVal( uint8_t c )
Base64 網址解碼
uint16_t Base64URLDecode( const char *in, uint16_t inLen, uint8_t *out )
Base64URLEncode
uint16_t Base64URLEncode( const uint8_t *in, uint16_t inLen, char *out )
Base64URLValToChar
char Base64URLValToChar( uint8_t val )
Base64ValToChar
char Base64ValToChar( uint8_t val )
CalendarDateToDaysSinceEpoch
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 )
CalendarTimeToSecondsSinceEpoch
bool CalendarTimeToSecondsSinceEpoch( uint16_t year, uint8_t month, uint8_t dayOfMonth, uint8_t hour, uint8_t minute, uint8_t second, uint32_t & secondsSinceEpoch )
ClearFlag
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 )
DaysInMonth
uint8_t DaysInMonth( uint16_t year, uint8_t month )
DaysSinceEpochToCalendarDate
void DaysSinceEpochToCalendarDate( uint32_t daysSinceEpoch, uint16_t & year, uint8_t & month, uint8_t & dayOfMonth )
DaysToMarch1
uint8_t DaysToMarch1( uint16_t year )
DeallocateDeserializedStructure
WEAVE_ERROR DeallocateDeserializedStructure( void *aStructureData, const SchemaFieldDescriptor *aFieldDescriptors, SerializationContext *aContext )
ErrorStr
NL_DLL_EXPORT const char * ErrorStr( int32_t err )
這個常式會傳回使用者可理解的 NULL 終止 C 字串,說明提供的錯誤。
詳細資料 | |||
---|---|---|---|
參數 |
|
||
傳回 |
指向以空值結束的 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 結構體結尾為空值的欄位陣列的位置。
C 結構的 nullified_fields 成員應該位於 FieldDescriptors 陣列描述的最後一個成員之後。它並不在欄位描述元清單中,因為它只是隱藏公用程式,對可為空值事件的創作者和消費者提供隱藏用。如果事件沒有可為空值欄位,則此 struct 成員不存在,但是藉由建構 setter 和 getter,應該不會發生從邊界外存取的情況。
詳細資料 | |||||||
---|---|---|---|---|---|---|---|
參數 |
|
||||||
傳回值 |
|
FindStatusReportStr
const char * FindStatusReportStr( uint32_t inProfileId, uint16_t inStatusCode )
FirstWeekdayOfYear
uint8_t FirstWeekdayOfYear( uint16_t year )
FormatError
void FormatError( char *buf, uint16_t bufSize, const char *subsys, int32_t err, const char *desc )
產生使用者可理解的 NULL 結尾 C 字串,說明提供的錯誤。
詳細資料 | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
參數 |
|
GetArrayElementSize
WEAVE_ERROR GetArrayElementSize( uint32_t & aOutSize, const FieldDescriptor *aFieldPtr, SerializedFieldType aType )
GetFlag
bool GetFlag( const FlagsT & inFlags, const FlagT inFlag )
IsBase34NoIOChar
bool IsBase34NoIOChar( char ch )
IsLeapYear
bool IsLeapYear( uint16_t year )
IsValidFieldType
bool IsValidFieldType( SerializedFieldType aType )
IsValidSerialNumber
bool IsValidSerialNumber( const char *serialNum )
LogEvent
nl::Weave::Profiles::DataManagement::event_id_t LogEvent( TEvent *aEvent )
LogEvent
nl::Weave::Profiles::DataManagement::event_id_t LogEvent( TEvent *aEvent, const nl::Weave::Profiles::DataManagement::EventOptions & aOptions )
ManufacturingWeekToDate
void ManufacturingWeekToDate( uint16_t mfgYear, uint8_t mfgWeek, uint16_t & year, uint8_t & month, uint8_t & day )
MarchBasedDayOfYearToMonth
uint8_t MarchBasedDayOfYearToMonth( uint16_t dayOfYear )
MarchBasedMonthToDayOfYear
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 讀取特定項目。
詳細資料 | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
參數 |
|
||||||||||||
傳回值 |
|
ReadNullableDataForType
WEAVE_ERROR ReadNullableDataForType( TLVReader & aReader, void *aStructureData, const FieldDescriptor *& aFieldPtr, SerializedFieldType aType, bool & aIsNullified, SerializationContext *aContext )
從 TLV 讀取資料前,檢查資料是否可為空值或空值的讀取器函式。
詳細資料 | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
參數 |
|
||||||||||||
傳回值 |
|
RegisterErrorFormatter
NL_DLL_EXPORT void RegisterErrorFormatter( ErrorFormatter *errFormatter )
將新的錯誤格式設定工具函式新增至錯誤格式設定工具的全域清單。
詳細資料 | |||
---|---|---|---|
參數 |
|
SecondsSinceEpochToCalendarTime
void SecondsSinceEpochToCalendarTime( uint32_t secondsSinceEpoch, uint16_t & year, uint8_t & month, uint8_t & dayOfMonth, uint8_t & hour, uint8_t & minute, uint8_t & second )
SerializedDataToTLVWriter
WEAVE_ERROR SerializedDataToTLVWriter( TLVWriter & aWriter, void *aStructureData, const SchemaFieldDescriptor *aFieldDescriptors )
寫入者函式,用於將資料結構轉換為 TLV 結構。
使用 SchemaFieldDescriptor 解讀資料結構並寫入 TLV。
詳細資料 | |||||||
---|---|---|---|---|---|---|---|
參數 |
|
||||||
傳回值 |
|
SerializedDataToTLVWriterHelper
WEAVE_ERROR SerializedDataToTLVWriterHelper( TLVWriter & aWriter, uint8_t aDataTag, void *aAppData )
包裝函式寫入者函式,包含在容器的 SerializedDataToTLVWriter 周圍。
此外,請將 StructureSchemaPointerPair 拆分為結構化資料與描述元以傳遞。
詳細資料 | |||||||
---|---|---|---|---|---|---|---|
參數 |
|
||||||
傳回值 |
|
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 解讀資料結構。
這必須夠強大,才能壓縮不明欄位,以及未遇到預期的欄位。
詳細資料 | |||||||||
---|---|---|---|---|---|---|---|---|---|
參數 |
|
||||||||
傳回值 |
|
TLVReaderToDeserializedDataHelper
WEAVE_ERROR TLVReaderToDeserializedDataHelper( nl::Weave::TLV::TLVReader & aReader, uint8_t aDataTag, void *aAppData, SerializationContext *aContext )
這個輔助函式可將單一 TLV 資料元素還原序列化。
這個函式會將 StructureSchemaPointerPair 分割成結構化資料與描述元,以便傳遞至 ReadDataForType。
詳細資料 | |||||||||
---|---|---|---|---|---|---|---|---|---|
參數 |
|
||||||||
傳回值 |
|
WriteArrayData
WEAVE_ERROR WriteArrayData( TLVWriter & aWriter, void *aStructureData, const FieldDescriptor *aFieldPtr )
寫入陣列結構的寫入者函式。
詳細資料 | |||||||
---|---|---|---|---|---|---|---|
參數 |
|
||||||
傳回值 |
|
WriteDataForType
WEAVE_ERROR WriteDataForType( TLVWriter & aWriter, void *aStructureData, const FieldDescriptor *& aFieldPtr, SerializedFieldType aType, bool aInArray )
寫入器函式會根據結構資料,將特定項目寫入 TLV。
詳細資料 | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
參數 |
|
||||||||||
傳回值 |
|
WriteNullableDataForType
WEAVE_ERROR WriteNullableDataForType( TLVWriter & aWriter, void *aStructureData, const FieldDescriptor *& aFieldPtr, SerializedFieldType aType, bool aIsNullified )
寫入 TLV 之前,用於檢查資料是否可為空值或空值的寫入者函式。
詳細資料 | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
參數 |
|
||||||||||
傳回值 |
|
secondsToMilliseconds
uint32_t secondsToMilliseconds( uint32_t seconds )