Namespaces

Enumerations

enum SerializedFieldType
Name Value
SerializedFieldTypeBoolean 0x00
SerializedFieldTypeUInt8 1
SerializedFieldTypeUInt16 2
SerializedFieldTypeUInt32 3
SerializedFieldTypeUInt64 4
SerializedFieldTypeInt8 5
SerializedFieldTypeInt16 6
SerializedFieldTypeInt32 7
SerializedFieldTypeInt64 8
SerializedFieldTypeFloatingPoint32 9
SerializedFieldTypeFloatingPoint64 10
SerializedFieldTypeUTF8String 11
SerializedFieldTypeByteString 12
SerializedFieldTypeStructure 13
SerializedFieldTypeArray 14

A list of TLV types to write with a TLV field.

Defined at line 45 of file gen/third_party/openweave-core/src/include/Weave/Support/SerializationUtils.h

enum SerializedFieldTypeMasks
Name Value
kMask_Type 0x7f
kMask_NullableFlag 0x80

Masks for accessing bits of SerializedFieldType.

Defined at line 68 of file gen/third_party/openweave-core/src/include/Weave/Support/SerializationUtils.h

enum SerializedFieldTypeBits
Name Value
kBit_Nullable 7

Bitfield of SerializedFieldType.

Defined at line 78 of file gen/third_party/openweave-core/src/include/Weave/Support/SerializationUtils.h

Records

Functions

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

    Encode an array of bytes to a base64 string.

    Returns length of generated string.

    Output will contain padding characters ('=') as necessary to make length a multiple of 4 characters.

    Output DOES NOT include a null terminator.

    Output buffer must be at least (inLen + 2) / 3 * 4 bytes long.

    Input and output buffers CANNOT overlap.

  • uint16_t Base64URLEncode (const uint8_t * in, uint16_t inLen, char * out)
  • uint16_t Base64Encode (const uint8_t * in, uint16_t inLen, char * out, Base64ValToCharFunct valToCharFunct)
  • const char * ErrorStr (int32_t err)
  • void FormatError (char * buf, uint16_t bufSize, const char * subsys, int32_t err, const char * desc)
  • uint16_t Base64Decode (const char * in, uint16_t inLen, uint8_t * out)

    Decode a base64 string to bytes.

    Returns length of decoded data, or UINT16_MAX if input could not be decoded.

    Input MAY contain padding characters ('=') but only at the end of the input string.

    Output buffer must be at least inLen * 3 / 4 bytes long, however the actual output

    may be shorter than this due to padding.

    Supports decode in place by setting out pointer equal to in.

  • uint16_t Base64URLDecode (const char * in, uint16_t inLen, uint8_t * out)
  • uint16_t Base64Decode (const char * in, uint16_t inLen, uint8_t * out, Base64CharToValFunct charToValFunct)
  • uint32_t Base64Encode32 (const uint8_t * in, uint32_t inLen, char * out)

    Encode/decode functions that take/return 32-bit lengths.

    Similar to the above functions, except Base64Decode32() returns UINT32_MAX if the input cannot be decoded.

  • uint32_t Base64Encode32 (const uint8_t * in, uint32_t inLen, char * out, Base64ValToCharFunct valToCharFunct)
  • uint32_t Base64Decode32 (const char * in, uint32_t inLen, uint8_t * out)
  • uint32_t Base64Decode32 (const char * in, uint32_t inLen, uint8_t * out, Base64CharToValFunct charToValFunct)
  • uint8_t DaysInMonth (uint16_t year, uint8_t month)
  • uint8_t FirstWeekdayOfYear (uint16_t year)
  • void CalendarDateToOrdinalDate (uint16_t year, uint8_t month, uint8_t dayOfMonth, uint16_t & dayOfYear)
  • bool CalendarDateToDaysSinceEpoch (uint16_t year, uint8_t month, uint8_t dayOfMonth, uint32_t & daysSinceEpoch)
  • void DaysSinceEpochToCalendarDate (uint32_t daysSinceEpoch, uint16_t & year, uint8_t & month, uint8_t & dayOfMonth)
  • void AdjustCalendarDate (uint16_t & year, uint8_t & month, uint8_t & dayOfMonth, int32_t relativeDays)
  • bool CalendarTimeToSecondsSinceEpoch (uint16_t year, uint8_t month, uint8_t dayOfMonth, uint8_t hour, uint8_t minute, uint8_t second, uint32_t & secondsSinceEpoch)
  • WEAVE_ERROR DeallocateDeserializedStructure (void * aStructureData, const SchemaFieldDescriptor * aFieldDescriptors, SerializationContext * aContext)
  • template <typename FlagsT, typename FlagT>
    bool GetFlag (const FlagsT & inFlags, const FlagT inFlag)

    Defined at line 34 of file gen/third_party/openweave-core/src/include/Weave/Support/FlagUtils.hpp

  • template <typename FlagsT, typename FlagT>
    void ClearFlag (FlagsT & inFlags, const FlagT inFlag)

    Defined at line 40 of file gen/third_party/openweave-core/src/include/Weave/Support/FlagUtils.hpp

  • void RegisterErrorFormatter (ErrorFormatter * errFormatter)
  • const char * StatusReportStr (uint32_t profileId, uint16_t statusCode)
  • bool IsLeapYear (uint16_t year)
  • template <class TEvent>
    nl::Weave::Profiles::DataManagement::event_id_t LogEvent (TEvent * aEvent)

    Defined at line 35 of file gen/third_party/openweave-core/src/include/Weave/Support/TraitEventUtils.h

  • void OrdinalDateToCalendarDate (uint16_t year, uint16_t dayOfYear, uint8_t & month, uint8_t & dayOfMonth)
  • void SecondsSinceEpochToCalendarTime (uint32_t secondsSinceEpoch, uint16_t & year, uint8_t & month, uint8_t & dayOfMonth, uint8_t & hour, uint8_t & minute, uint8_t & second)
  • WEAVE_ERROR SerializedDataToTLVWriter (nl::Weave::TLV::TLVWriter & aWriter, void * aStructureData, const SchemaFieldDescriptor * aFieldDescriptors)
  • WEAVE_ERROR SerializedDataToTLVWriterHelper (nl::Weave::TLV::TLVWriter & aWriter, uint8_t aDataTag, void * aAppData)
  • template <typename FlagsT, typename FlagT>
    void SetFlag (FlagsT & inFlags, const FlagT inFlag)

    Defined at line 46 of file gen/third_party/openweave-core/src/include/Weave/Support/FlagUtils.hpp

  • template <typename FlagsT, typename FlagT>
    void SetFlag (FlagsT & inFlags, const FlagT inFlag, const bool inValue)

    Defined at line 52 of file gen/third_party/openweave-core/src/include/Weave/Support/FlagUtils.hpp

  • template <class TEvent>
    void NullifyAllEventFields (TEvent * aEvent)

    Convenience setter function to set all nullable fields within an event to NULL

    It does so by setting the '__nullified_fields' member within the code-generated

    structure to 0xFFs (bit set = null, bit cleared = not-null).

    Defined at line 56 of file gen/third_party/openweave-core/src/include/Weave/Support/TraitEventUtils.h

  • template <class TEvent>
    nl::Weave::Profiles::DataManagement::event_id_t LogEvent (TEvent * aEvent, const nl::Weave::Profiles::DataManagement::EventOptions & aOptions)

    Defined at line 62 of file gen/third_party/openweave-core/src/include/Weave/Support/TraitEventUtils.h

  • template <class TEvent>
    WEAVE_ERROR DeserializeEvent (nl::Weave::TLV::TLVReader & aReader, TEvent * aEvent, nl::SerializationContext * aContext)

    Defined at line 78 of file gen/third_party/openweave-core/src/include/Weave/Support/TraitEventUtils.h

  • template <class TEvent>
    WEAVE_ERROR DeallocateEvent (TEvent * aEvent, nl::SerializationContext * aContext)

    Defined at line 94 of file gen/third_party/openweave-core/src/include/Weave/Support/TraitEventUtils.h

  • WEAVE_ERROR TLVReaderToDeserializedData (nl::Weave::TLV::TLVReader & aReader, void * aStructureData, const SchemaFieldDescriptor * aFieldDescriptors, SerializationContext * aContext)
  • WEAVE_ERROR TLVReaderToDeserializedDataHelper (nl::Weave::TLV::TLVReader & aReader, uint8_t aDataTag, void * aAppData, SerializationContext * aContext)
  • uint32_t secondsToMilliseconds (uint32_t seconds)

    Convert integer seconds to milliseconds.

    Defined at line 109 of file gen/third_party/openweave-core/src/include/Weave/Support/TimeUtils.h