nl
Weave-specific nlassert.h Overrides。
總結
列舉 |
|
---|---|
@357
|
列舉 |
@358
|
列舉 |
@359
|
列舉 |
@360
|
列舉 |
@361
|
列舉 |
SerializedFieldType{
|
列舉 以 TLV 欄位寫入的 TLV 類型清單。 |
SerializedFieldTypeBits
|
列舉 SerializedFieldType 的 Bitfield。 |
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
|
結構 |
|
---|---|
nl:: |
用來包裝陣列長度的輔助程式。 |
nl:: |
|
nl:: |
結構描述 1. |
nl:: |
記憶體分配/免費函式的 C 結構。 |
nl:: |
在 Field 描述元 陣列周圍包覆以描述架構結構/結構。 |
nl:: |
這個 c 結構包含需要序列化或序列化序列化的背景脈絡或狀態。 |
nl:: |
|
nl:: |
|
nl:: |
|
nl:: |
|
nl:: |
|
nl:: |
|
nl:: |
|
nl:: |
|
nl:: |
|
nl:: |
|
nl:: |
|
nl:: |
|
nl:: |
|
nl:: |
|
nl:: |
將資料與 c-schema 資料組合,搭配 SchemaSchema 描述元,根據這些資料編寫 TLV 結構。 |
命名空間 |
|
---|---|
nl:: |
|
nl:: |
這個命名空間包含 Weave 中藍牙低功耗 (BLE) 的所有介面 (也稱為 Bluetooth Smart)。 |
nl:: |
|
nl:: |
這個命名空間包含 Nest Weave 公開金鑰基礎架構 (PKI) 憑證的全域符號。 |
nl:: |
|
nl:: |
|
nl:: |
列舉
@357
@357
@358
@358
@359
@359
@360
@360
@361
@361
序列化欄位類型
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 的 Bitfield。
序列化化類型欄位遮罩
SerializedFieldTypeMasks
用於存取 SerializedFieldType 位元的遮罩。
Typedefs
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 *) }
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 }
函式
調整日曆日期
void AdjustCalendarDate( uint16_t & year, uint8_t & month, uint8_t & dayOfMonth, int32_t relativeDays )
Base64CharToVal
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 )
Base64URLCharToVal
uint8_t Base64URLCharToVal( uint8_t c )
Base64URLDecode
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 )
日曆日期今天日
bool CalendarDateToDaysSinceEpoch( uint16_t year, uint8_t month, uint8_t dayOfMonth, uint32_t & daysSinceEpoch )
日曆日期/結束日期
void CalendarDateToOrdinalDate( uint16_t year, uint8_t month, uint8_t dayOfMonth, uint16_t & dayOfYear )
日曆時間秒數
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 )
日期玩具製週
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 )
自 EpochToCalendar 日期起算的天數
void DaysSinceEpochToCalendarDate( uint32_t daysSinceEpoch, uint16_t & year, uint8_t & month, uint8_t & dayOfMonth )
至 3 月 1 日
uint8_t DaysToMarch1( uint16_t year )
取消分配序列化架構
WEAVE_ERROR DeallocateDeserializedStructure( void *aStructureData, const SchemaFieldDescriptor *aFieldDescriptors, SerializationContext *aContext )
錯誤
NL_DLL_EXPORT const char * ErrorStr( int32_t err )
這個處理常式會傳回一個使用者可理解的 NULL 結尾 C 字串,用來說明所提供的錯誤。
詳細資料 | |||
---|---|---|---|
參數 |
|
||
傳回 |
指向 NULL 結尾 C 字串的圖示,說明所提供的錯誤。
|
ExtractManufacttureDateFromSerialNumber
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 結構的 nullized_fields 成員應緊接在 Field 描述元 陣列中最後一筆成員的後方。並未列在欄位描述元內,因為其用途是隱藏創作者和消費者的可重複事件。這個架構成員沒有可設定欄位的事件,但設定 setter 與 getter 時,不應發生超出範圍存取的情形。
詳細資料 | |||||||
---|---|---|---|---|---|---|---|
參數 |
|
||||||
傳回值 |
|
查詢狀態報告
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 字串,用來說明所提供的錯誤。
詳細資料 | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
參數 |
|
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 )
伊萊普年
bool IsLeapYear( uint16_t year )
是有效欄位類型
bool IsValidFieldType( SerializedFieldType aType )
是有效的序號
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 )
讀取資料類型
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 讀取前,確認資料是否為空值或空值。
詳細資料 | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
參數 |
|
||||||||||||
傳回值 |
|
註冊錯誤格式格式
NL_DLL_EXPORT void RegisterErrorFormatter( ErrorFormatter *errFormatter )
在全域錯誤格式清單中新增新的錯誤格式函式。
詳細資料 | |||
---|---|---|---|
參數 |
|
自 EpochToCalendar 時間起算的秒數
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 的包裝函式寫入函式。
您也可以將 SchemaSchemaPointerPair 分割成要傳遞的結構資料和描述元。
詳細資料 | |||||||
---|---|---|---|---|---|---|---|
參數 |
|
||||||
傳回值 |
|
SetFlag
void SetFlag( FlagsT & inFlags, const FlagT inFlag )
SetFlag
void SetFlag( FlagsT & inFlags, const FlagT inFlag, const bool inValue )
狀態報告
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 資料元素進行序列化的輔助函式。
函式會將 StructuredSchemaPointerPair 分割為結構資料和描述元,以傳遞 ReadDataForType。
詳細資料 | |||||||||
---|---|---|---|---|---|---|---|---|---|
參數 |
|
||||||||
傳回值 |
|
寫入陣列資料
WEAVE_ERROR WriteArrayData( TLVWriter & aWriter, void *aStructureData, const FieldDescriptor *aFieldPtr )
寫入資料類型
WEAVE_ERROR WriteDataForType( TLVWriter & aWriter, void *aStructureData, const FieldDescriptor *& aFieldPtr, SerializedFieldType aType, bool aInArray )
寫入器函式會根據結構資料將特定項目寫入 TLV。
詳細資料 | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
參數 |
|
||||||||||
傳回值 |
|
寫入 NullableDataForType
WEAVE_ERROR WriteNullableDataForType( TLVWriter & aWriter, void *aStructureData, const FieldDescriptor *& aFieldPtr, SerializedFieldType aType, bool aIsNullified )
在寫入 TLV 之前,寫入者可以檢查資料是否為空值或空值。
詳細資料 | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
參數 |
|
||||||||||
傳回值 |
|
秒 (毫秒)
uint32_t secondsToMilliseconds( uint32_t seconds )