nl

Ağa özel nlassert.h Geçersiz kılmalar.

Özet

Sıralamalar

@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 alanı kullanılarak yazılacak TLV türleri listesi.
SerializedFieldTypeBits enum
SerializedFieldType öğesinin bit alanı.
SerializedFieldTypeMasks enum
SerializedFieldType bitlerine erişim maskeleri.

Türler

Base64CharToValFunct)(uint8_t c) Tür
uint8_t(*
Base64ValToCharFunct)(uint8_t val) Tür
char(*
MemoryAllocate)(size_t size) Tür
void *(*
Bellek ayırma/ücretsiz işlev işaretçileri.
MemoryFree)(void *ptr) Tür
void(*
MemoryReallocate)(void *ptr, size_t size) Tür
void *(*

Değişkenler

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 *
Hata biçimlendirici işlevlerinin bağlı listesi.
sErrorStr[WEAVE_CONFIG_ERROR_STR_SIZE]
char
Biçimlendirilmiş hata dizesini depolamak için statik arabellek.
sErrorStr[1024]
char
Bu rutin, belirtilen profille ilişkili olarak sağlanan durum kodunu açıklayan, okunabilir bir NULL ile sonlandırılmış C dizesi döndürür.
sWeaveErrorFormatter = { nl::Weave::FormatWeaveError, &sASN1ErrorFormatter }

İşlevler

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 *
Bu rutin, sağlanan hatayı açıklayan, okunabilir bir NULL ile sonlandırılmış C dizesi döndürür.
ExtractManufacturingDateFromSerialNumber(const char *serialNum, uint16_t & year, uint8_t & month, uint8_t & day)
FindNullifiedFieldsArray(void *aStructureData, const SchemaFieldDescriptor *aSchemaDescriptor, uint8_t *& aNullifiedFields)
C yapısının sonunda yer alan, boş alanlara ait dizisi bulmak için yardımcı bir işlev.
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
Sağlanan hatayı açıklayan, okunabilir bir NULL ile sonlandırılmış C dizesi oluşturur.
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)
Yapı verilerine göre TLV'den belirli bir girişi okumak için bir okuyucu işlevi.
ReadNullableDataForType(TLVReader & aReader, void *aStructureData, const FieldDescriptor *& aFieldPtr, SerializedFieldType aType, bool & aIsNullified, SerializationContext *aContext)
TLV'den okumadan önce verilerin null veya null olup olmadığını kontrol etmek için bir okuyucu işlevi.
RegisterErrorFormatter(ErrorFormatter *errFormatter)
NL_DLL_EXPORT void
Genel hata biçimlendiriciler listesine yeni bir hata biçimlendirici işlevi ekleyin.
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)
Bir veri yapısını TLV yapısına dönüştürmek için bir yazar işlevi.
SerializedDataToTLVWriterHelper(TLVWriter & aWriter, uint8_t aDataTag, void *aAppData)
SerializedDataToTLVWriter'ı bir kapsayıcıyla çevreleyen sarmalayıcı yazıcı işlevi.
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'yi C yapısına dönüştürmek için bir okuyucu işlevi.
TLVReaderToDeserializedDataHelper(nl::Weave::TLV::TLVReader & aReader, uint8_t aDataTag, void *aAppData, SerializationContext *aContext)
Tek bir TLV veri öğesini serileştiren yardımcı işlev.
WriteArrayData(TLVWriter & aWriter, void *aStructureData, const FieldDescriptor *aFieldPtr)
Dizi yapısı yazan bir yazar işlevi.
WriteDataForType(TLVWriter & aWriter, void *aStructureData, const FieldDescriptor *& aFieldPtr, SerializedFieldType aType, bool aInArray)
Bir yazar işlevi, yapı verilerine dayanarak TLV'ye belirli bir giriş yazar.
WriteNullableDataForType(TLVWriter & aWriter, void *aStructureData, const FieldDescriptor *& aFieldPtr, SerializedFieldType aType, bool aIsNullified)
TLV'ye yazmadan önce verilerin null/null (boş) olup olmadığını kontrol eden bir yazar işlevi.
secondsToMilliseconds(uint32_t seconds)
uint32_t

Struct

nl::ArrayLengthAndBuffer

Uzunluğu olan bir diziyi sarmalamak için kullanılan yardımcı.

nl::ErrorFormatter
nl::Alan Tanımlayıcısı

Şema yapısındaki bir TLV alanını açıklayan ve bu alanı c yapısındaki verilere bağlayan yapı.

nl::Bellek Yönetimi

Bellek ayırma/serbest işlevlerinin c yapısı.

nl::SchemaFieldDescriptor

Şema yapısını/yapısını açıklamak için bir FieldDescriptor dizisi etrafında sarmalama.

nl::Seri Serileştirme Bağlamı

Serileştirme veya serileştirme işlemi için ihtiyacımız olan her türlü bağlamı veya durumu içeren c yapısı.

nl::SerializedByteString
nl::SerializedFieldTypeBoolean_array
nl::SerializedFieldTypeByteString_array
nl::SerializedFieldTypeScrollingPoint32_array
nl::SerializedFieldTypeKayanNokta64_array
nl::SerializedFieldTypeInt16_array
nl::SerializedFieldTypeInt32_array
nl::SerializedFieldTypeInt64_array
nl::SerializedFieldTypeInt8_array
nl::SerializedFieldTypeUInt16_array
nl::SerializedFieldTypeUInt32_array
nl::SerializedFieldTypeUInt64_array
nl::SerializedFieldTypeUInt8_array
nl::SerializeFieldTypeUTFUTFString_array
nl::SchemaSchemaPointerMatch

Verilerin c yapısına ve bu verilere dayalı bir TLV yapısı yazmak için structSchemaDescriptor içeren veri çifti.

Ad alanları

nl::ArgParser
nl:: Beyaz

Bu ad alanı, Bluetooth Akıllı Enerji olarak da bilinen Bluetooth Düşük Enerji (BLE) için Weave içindeki tüm arayüzleri içerir.

nl::Net
nl::NestCerts

Bu ad alanı, Nest Weave ortak anahtar altyapısı (PKI) sertifikaları için genel simgeler içerir.

nl::Eşleme Kodu
nl::Sıcak
nl::Önde

Sıralamalar

@357

 @357

@358

 @358

@359

 @359

@360

 @360

@361

 @361

SerileştirilmişAlan Türü

 SerializedFieldType

TLV alanı kullanılarak yazılacak TLV türleri listesi.

Özellikler
SerializedFieldTypeArray

Dizi türü.

SerializedFieldTypeBoolean

Boole türü.

SerializedFieldTypeByteString

Bayt dizesi türü.

SerializedFieldTypeFloatingPoint32

32 bit kayan nokta türü

SerializedFieldTypeFloatingPoint64

64 bit kayan nokta türü

SerializedFieldTypeInt16

İmzalı 16 bit türü.

SerializedFieldTypeInt32

İmzalı 32 bit türü.

SerializedFieldTypeInt64

İmzalı 64 bit türü.

SerializedFieldTypeInt8

İmzalı 8 bit türü.

SerializedFieldTypeStructure

Kullanıcı tanımlı yapı türü.

SerializedFieldTypeUInt16

İmzalanmamış 16 bit türü.

SerializedFieldTypeUInt32

İmzalanmamış 32 bit türü.

SerializedFieldTypeUInt64

İmzalanmamış 64 bit türü.

SerializedFieldTypeUInt8

İmzalanmamış 8 bit türü.

SerializedFieldTypeUTF8String

UTF-8 dize türü.

SerileştirilmişFieldTypeBits

 SerializedFieldTypeBits

SerializedFieldType öğesinin bit alanı.

SerileştirilmişAlan TürüMaskeleri

 SerializedFieldTypeMasks

SerializedFieldType bitlerine erişim maskeleri.

Türler

Base64CharToValFunct

uint8_t(* Base64CharToValFunct)(uint8_t c)

Base64ValToCharFunct

char(* Base64ValToCharFunct)(uint8_t val)

Bellek Payı

void *(* MemoryAllocate)(size_t size)

Bellek ayırma/ücretsiz işlev işaretçileri.

Belleksiz

void(* MemoryFree)(void *ptr)

Bellek Yeniden Ayırma

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

Değişkenler

sASN1Hata Biçimi

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 *)                  
}

Hata Biçimi

const ErrorFormatter * sErrorFormatterList = &sWeaveErrorFormatter

Hata biçimlendirici işlevlerinin bağlı listesi.

HataHatası

char sErrorStr[WEAVE_CONFIG_ERROR_STR_SIZE]

Biçimlendirilmiş hata dizesini depolamak için statik arabellek.

HataHatası

char sErrorStr[1024]

Bu rutin, belirtilen profille ilişkili olarak sağlanan durum kodunu açıklayan, okunabilir bir NULL ile sonlandırılmış C dizesi döndürür.

Ayrıntılar
Parametreler
[in] profileId
.
[in] statusCode
Açıklayıcı bir dize sağlamak için profileId içindeki durum kodu.
İadeler
Belirtilen profilde sağlanan durum kodunu açıklayan, BOŞ sonlu C dizesine ait bir işaretçi.
Şu makaleyi de inceleyebilirsiniz:
WEAVE_CONFIG_SHORT_ERROR_STR

SWeaveErrorFormatter

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

İşlevler

AdjustDateDate

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
)

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
)

Base64Kodlama

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

Base64Kodlama

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
)

Base64URLDecode

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

Base64URLKodlama

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

Base64URLValToChar

char Base64URLValToChar(
  uint8_t val
)

Base64ValToChar

char Base64ValToChar(
  uint8_t val
)

CalendarDateToDaysEEch'ten Beri

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
)

CalendarTimeToSecondsEpoch'tan Beri

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
)

Aydaki Gün

uint8_t DaysInMonth(
  uint16_t year,
  uint8_t month
)

Günden BeriEpochToCalendarDate

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

Bugün-Mart1

uint8_t DaysToMarch1(
  uint16_t year
)

Ayrılan Deserializedstruct

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

Hata Kodu

NL_DLL_EXPORT const char * ErrorStr(
  int32_t err
)

Bu rutin, sağlanan hatayı açıklayan, okunabilir bir NULL ile sonlandırılmış C dizesi döndürür.

Ayrıntılar
Parametreler
[in] err
Biçim ve açıklama hatası.
İadeler
Sağlanan hatayı açıklayan, NULL sonlandırılmış bir C dizesine işaretçi.

ÇıkarıcıManufacturingDateFromSerialNumber

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 yapısının sonunda yer alan, boş alanlara ait dizisi bulmak için yardımcı bir işlev.

C yapısının nullified_fields üyesinin, FieldDescriptors dizisi tarafından açıklanan son üyeden hemen sonra bulunması beklenir. Boş içerik üreticilerin ve tüketicilerin kullanabileceği gizli bir yardımcı araç olması amaçlandığı için bu, alan açıklayıcıları listesinde yer almaz. Bu yapı üyesi, boş değer atanmamış etkinlikler için mevcut değildir ancak seterler ve alıcıların oluşturulmasıyla sınırların dışına erişilmemesi gerekir.

Ayrıntılar
Parametreler
[in] aStructureData
c yapısının işaretçisi.
[in] aSchemaDescriptor
c yapısını açıklamak için SchemaFieldDescriptors.
[out] aNullifiedFields
c struct üyesinin nullified_fields işaretçisi.
Döndürülen Değerler
WEAVE_NO_ERROR
Başarılı.
WEAVE_ERROR_INVALID_ARGUMENT
Alan açıklayıcı işaretçi NULL ise.
WEAVE_ERROR_INCORRECT_STATE
Alan tanımlayıcıların biçimi beklentiyle eşleşmiyorsa.

FindStatusReportStres

const char * FindStatusReportStr(
  uint32_t inProfileId,
  uint16_t inStatusCode
)

Haftanın İlk Günü

uint8_t FirstWeekdayOfYear(
  uint16_t year
)

Biçim Hatası

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

Sağlanan hatayı açıklayan, okunabilir bir NULL ile sonlandırılmış C dizesi oluşturur.

Ayrıntılar
Parametreler
[in] buf
Hata dizesinin yerleştirileceği arabellek.
[in] bufSize
Sağlanan arabellin bayt cinsinden boyutu.
[in] subsys
Hatanın kaynağı olan alt sistemi açıklayan kısa bir dize veya hatanın kaynağı bilinmiyorsa/yoksa NULL. Bu dize en fazla 10 karakter uzunluğunda olmalıdır.
[in] err
Biçimlendirilecek hata.
[in] desc
Hatanın nedenini veya anlamını belirten bir dize veya bu tür bilgi yoksa BOŞ

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
)

Artık Yıl

bool IsLeapYear(
  uint16_t year
)

IsGeçerliAlan Türü

bool IsValidFieldType(
  SerializedFieldType aType
)

IsValidSerialNumber

bool IsValidSerialNumber(
  const char *serialNum
)

Günlük Etkinliği

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

Günlük Etkinliği

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

Üretim HaftasıTarihi

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

Yıla GöreMart Günü

uint8_t MarchBasedDayOfYearToMonth(
  uint16_t dayOfYear
)

Yıla Özel Ay

uint16_t MarchBasedMonthToDayOfYear(
  uint8_t month
)

NullifyAllEventAlanları

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
)

Yapı verilerine göre TLV'den belirli bir girişi okumak için bir okuyucu işlevi.

Ayrıntılar
Parametreler
[in] aReader
Yapıda okuma için kullanılacak okuyucu
[in] aStructureData
Okunacak c-yapısal verilerine işaret eden öğeler
[in,out] aFieldPtr
Alanları ve TLV etiketini tanımlamak için FieldDescriptor. İşlev, işaretçinin değerini artırır. Bu değer, FieldDescritor dizisindeki bir sonraki öğeye işaret eder
[in] aType
Alanın SerializedFieldType
[in] aInArray
Bir dizi okuyorsak doğrudur (anonim etiket kullanın)
[in] aContext
İşlem için gereken herhangi bir durumu içeren serileştirme bağlamı.
Döndürülen Değerler
WEAVE_NO_ERROR
Başarılı.
other
AOkuyucu'dan döndürülecek diğer hatalar.

ReadNullableDataForType

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

TLV'den okumadan önce verilerin null veya null olup olmadığını kontrol etmek için bir okuyucu işlevi.

Ayrıntılar
Parametreler
[in] aReader
Yapıda okuma için kullanılacak okuyucu
[in] aStructureData
Okunacak c-yapısal verilerine işaret eden öğeler
[in,out] aFieldPtr
Alanları ve TLV etiketini tanımlamak için FieldDescriptor. İşlev, işaretçiyi artırır. FieldDescriptor dizisindeki bir sonraki öğeye işaret eder
[in] aType
Alanın SerializedFieldType
[out] aIsNullified
Bir alanın boş olduğunu belirtmek için ayarlayın.
[in] aContext
İşlem için gereken herhangi bir durumu içeren serileştirme bağlamı.
Döndürülen Değerler
WEAVE_NO_ERROR
Başarılı.
other
Yazarken TRV hataları.

Kayıt Hatası Biçimi

NL_DLL_EXPORT void RegisterErrorFormatter(
  ErrorFormatter *errFormatter
)

Genel hata biçimlendiriciler listesine yeni bir hata biçimlendirici işlevi ekleyin.

Ayrıntılar
Parametreler
[in] errFormatter
Yeni hata işlevine bir işaretçi içeren bir ErrorFormatter yapısı. Sağlanan ErrorFormatter yapısına ait işaretçinin işlev tarafından saklanacağını unutmayın. Dolayısıyla, yapının belleği ayrılmış kalmalıdır.

Saniyeden BeriEpochToCalendarTime

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
)

Bir veri yapısını TLV yapısına dönüştürmek için bir yazar işlevi.

Veri yapısını yorumlamak ve TLV'ye yazmak için bir SchemaFieldDescriptor kullanır.

Ayrıntılar
Parametreler
[in] aWriter
Yapıyı yazmak için kullanılacak yazar
[in] aStructureData
SchemaFieldDescriptor'a dayalı olarak yazmak için c-yapı verisi verilerine bir işaretçi
[in] aFieldDescriptors
c struct'ı + TLV'yi açıklamak için SchemaFieldDescriptors
Döndürülen Değerler
WEAVE_NO_ERROR
Başarılı.
other
AWriter'dan döndürülmesini sağlayan diğer hatalar.

SerializedDataToTLVWriterHelper

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

SerializedDataToTLVWriter'ı bir kapsayıcıyla çevreleyen sarmalayıcı yazıcı işlevi.

Ayrıca, bir structSchemaPointerDouble, iletilecek yapılandırılmış veriler ve tanımlayıcılara böler.

Ayrıntılar
Parametreler
[in] aWriter
Yapıyı yazmak için kullanılacak yazar
[in] aDataTag
Yazılacak etiket
[in] aAppData
Verileri yapılandırmak için bir işaretçi ve alan tanımlayıcıları içeren structSchemaPointerDouble. prototip nedeniyle geçersizlik*
Döndürülen Değerler
WEAVE_NO_ERROR
Başarılı.
other
AWriter'dan döndürülmesini sağlayan diğer hatalar.

Setİşareti

void SetFlag(
  FlagsT & inFlags,
  const FlagT inFlag
)

Setİşareti

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'yi C yapısına dönüştürmek için bir okuyucu işlevi.

Veri yapısını yorumlamak için bir SchemaFieldDescriptor kullanır.

hem bilinmeyen alanlar elde etmek hem de beklenen alanla karşılaşmamak için sağlam olmalıdır.

Ayrıntılar
Parametreler
[in] aReader
Verileri okumak için kullanılacak okuyucu
[in] aStructureData
SchemaFieldDescriptor'a göre okuyacağımız hedef c-yapı verilerinin işaretçisi
[in] aFieldDescriptors
c struct'ı + TLV'yi açıklamak için SchemaFieldDescriptors
[in] aContext
İşlem için gereken herhangi bir durumu içeren serileştirme bağlamı.
Döndürülen Değerler
WEAVE_NO_ERROR
Başarılı.
other
AOkuyucu'dan döndürülebilecek diğer hatalar.

TLVReaderToDeserializedDataHelper

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

Tek bir TLV veri öğesini serileştiren yardımcı işlev.

İşlev, YapılandırılmışSchemaPointerDouble öğesini ReadDataForType'a iletilecek yapılandırılmış veriler ve tanımlayıcılara böler.

Ayrıntılar
Parametreler
[in] aReader
Çözülecek veriler içeren okuyucu
[in] aDataTag
Şu anda kullanılamıyor
[in] aAppData
Verileri yapılandırmak için bir işaretçi ve alan tanımlayıcıları içeren structSchemaPointerDouble. prototip nedeniyle geçersizlik*
[in] aContext
İşlem için gereken herhangi bir durumu içeren serileştirme bağlamı.
Döndürülen Değerler
WEAVE_NO_ERROR
Başarılı.
other
AOkuyucu'dan döndürülecek diğer hatalar.

YazDizi Verileri

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

Dizi yapısı yazan bir yazar işlevi.

Ayrıntılar
Parametreler
[in] aWriter
Yapıyı yazmak için kullanılacak yazar
[in] aStructureData
FieldDescriptor'a dayalı olarak yazmak için c-yapı verisi verilerine bir işaretçi
[in] aFieldPtr
c struct + TLV dizisini tanımlamak için FieldDescriptor
Döndürülen Değerler
WEAVE_NO_ERROR
Başarılı.
other
AWriter'dan döndürülmesini sağlayan diğer hatalar.

YazacakVeriForType

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

Bir yazar işlevi, yapı verilerine dayanarak TLV'ye belirli bir giriş yazar.

Ayrıntılar
Parametreler
[in] aWriter
Yapıyı yazmak için kullanılacak yazar
[in] aStructureData
Yazmak için c yapısı yapısına ait işaretçi
[in,out] aFieldPtr
Alanları ve TLV etiketini tanımlamak için FieldDescriptor. İşlev, işaretçinin değerini artırır. Bu değer, FieldDescritor dizisindeki bir sonraki öğeye işaret eder
[in] aType
Alanın SerializedFieldType
[in] aInArray
Dizi yazıyorsak doğrudur (anonim etiket kullanın)
Döndürülen Değerler
WEAVE_NO_ERROR
Başarılı.
other
AWriter'dan döndürülmesini sağlayan diğer hatalar.

Yazacak_UlusalVeriForType'ı

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

TLV'ye yazmadan önce verilerin null/null (boş) olup olmadığını kontrol eden bir yazar işlevi.

Ayrıntılar
Parametreler
[in] aWriter
Yapıyı yazmak için kullanılacak yazar
[in] aStructureData
Okunacak c-yapısal verilerine işaret eden öğeler
[in,out] aFieldPtr
Alanları ve TLV etiketini tanımlamak için FieldDescriptor. İşlev, işaretçiyi artırır. FieldDescriptor dizisindeki bir sonraki öğeye işaret eder
[in] aType
Alanın SerializedFieldType
[in] aIsNullified
Bu durumda, TLV etiketi boş olacaktır.
Döndürülen Değerler
WEAVE_NO_ERROR
Başarılı.
other
Yazarken TRV hataları.

saniyeToMillisaniye

uint32_t secondsToMilliseconds(
  uint32_t seconds
)