Namespaces
Enumerations
enum TLVCommonProfiles
| Name | Value |
|---|---|
| kProfileIdNotSpecified | 0xFFFFFFFF |
| kCommonProfileId | 0 |
Defined at line 32 of file x64-shared/gen/third_party/openweave-core/src/include/Weave/Core/WeaveTLVTags.h
enum TLVType
| Name | Value |
|---|---|
| kTLVType_NotSpecified | -1 |
| kTLVType_UnknownContainer | -2 |
| kTLVType_SignedInteger | 0x00 |
| kTLVType_UnsignedInteger | 0x04 |
| kTLVType_Boolean | 0x08 |
| kTLVType_FloatingPointNumber | 0x0A |
| kTLVType_UTF8String | 0x0C |
| kTLVType_ByteString | 0x10 |
| kTLVType_Null | 0x14 |
| kTLVType_Structure | 0x15 |
| kTLVType_Array | 0x16 |
| kTLVType_Path | 0x17 |
An enumeration identifying the type of a TLV element.
Defined at line 35 of file x64-shared/gen/third_party/openweave-core/src/include/Weave/Core/WeaveTLVTypes.h
enum TLVTagFields
| Name | Value |
|---|---|
| kProfileIdMask | 0xFFFFFFFF00000000ULL |
| kProfileIdShift | 32 |
| kVendorIdShift | 48 |
| kProfileNumShift | 32 |
| kTagNumMask | 0x00000000FFFFFFFFULL |
| kSpecialTagMarker | 0xFFFFFFFF00000000ULL |
| kContextTagMaxNum | 256 |
TODO: Move to private namespace
Defined at line 45 of file x64-shared/gen/third_party/openweave-core/src/include/Weave/Core/WeaveTLVTags.h
enum TLVElementType
| Name | Value |
|---|---|
| kTLVElementType_NotSpecified | -1 |
| kTLVElementType_Int8 | 0x00 |
| kTLVElementType_Int16 | 0x01 |
| kTLVElementType_Int32 | 0x02 |
| kTLVElementType_Int64 | 0x03 |
| kTLVElementType_UInt8 | 0x04 |
| kTLVElementType_UInt16 | 0x05 |
| kTLVElementType_UInt32 | 0x06 |
| kTLVElementType_UInt64 | 0x07 |
| kTLVElementType_BooleanFalse | 0x08 |
| kTLVElementType_BooleanTrue | 0x09 |
| kTLVElementType_FloatingPointNumber32 | 0x0A |
| kTLVElementType_FloatingPointNumber64 | 0x0B |
| kTLVElementType_UTF8String_1ByteLength | 0x0C |
| kTLVElementType_UTF8String_2ByteLength | 0x0D |
| kTLVElementType_UTF8String_4ByteLength | 0x0E |
| kTLVElementType_UTF8String_8ByteLength | 0x0F |
| kTLVElementType_ByteString_1ByteLength | 0x10 |
| kTLVElementType_ByteString_2ByteLength | 0x11 |
| kTLVElementType_ByteString_4ByteLength | 0x12 |
| kTLVElementType_ByteString_8ByteLength | 0x13 |
| kTLVElementType_Null | 0x14 |
| kTLVElementType_Structure | 0x15 |
| kTLVElementType_Array | 0x16 |
| kTLVElementType_Path | 0x17 |
| kTLVElementType_EndOfContainer | 0x18 |
TODO: Move to private namespace
Defined at line 53 of file x64-shared/gen/third_party/openweave-core/src/include/Weave/Core/WeaveTLVTypes.h
enum TLVTagControl
| Name | Value |
|---|---|
| kTLVTagControl_Anonymous | 0x00 |
| kTLVTagControl_ContextSpecific | 0x20 |
| kTLVTagControl_CommonProfile_2Bytes | 0x40 |
| kTLVTagControl_CommonProfile_4Bytes | 0x60 |
| kTLVTagControl_ImplicitProfile_2Bytes | 0x80 |
| kTLVTagControl_ImplicitProfile_4Bytes | 0xA0 |
| kTLVTagControl_FullyQualified_6Bytes | 0xC0 |
| kTLVTagControl_FullyQualified_8Bytes | 0xE0 |
TODO: Move to private namespace
Defined at line 57 of file x64-shared/gen/third_party/openweave-core/src/include/Weave/Core/WeaveTLVTags.h
enum TLVFieldSize
| Name | Value |
|---|---|
| kTLVFieldSize_0Byte | -1 |
| kTLVFieldSize_1Byte | 0 |
| kTLVFieldSize_2Byte | 1 |
| kTLVFieldSize_4Byte | 2 |
| kTLVFieldSize_8Byte | 3 |
TODO: Move to private namespace
Defined at line 84 of file x64-shared/gen/third_party/openweave-core/src/include/Weave/Core/WeaveTLVTypes.h
Records
Functions
-
uint64_t ProfileTag (uint32_t profileId, uint32_t tagNum)Generates the API representation of a profile-specific TLV tag from a profile id and tag number
Parameters
profileId [in] The id of the profile within which the tag is defined.tagNum [in] The profile-specific tag number assigned to the tag.Returns
A 64-bit integer representing the tag.
Defined at line 84 of file x64-shared/gen/third_party/openweave-core/src/include/Weave/Core/WeaveTLVTags.h
-
uint64_t ProfileTag (uint16_t vendorId, uint16_t profileNum, uint32_t tagNum)Generates the API representation of a profile-specific TLV tag from a vendor id, profile number and tag number
Parameters
vendorId [in] The id of the vendor that defined the tag.profileNum [in] The vendor assigned number for the profile within which the tag is defined.tagNum [in] The profile-specific tag number assigned to the tag.Returns
A 64-bit integer representing the tag.
Defined at line 94 of file x64-shared/gen/third_party/openweave-core/src/include/Weave/Core/WeaveTLVTags.h
-
uint64_t ContextTag (uint8_t tagNum)Generates the API representation for of context-specific TLV tag
Parameters
tagNum [in] The context-specific tag number assigned to the tag.Returns
A 64-bit integer representing the tag.
Defined at line 102 of file x64-shared/gen/third_party/openweave-core/src/include/Weave/Core/WeaveTLVTags.h
-
bool IsValidTLVType (uint8_t type)Returns true if the specified TLV type is valid.
Returns
if the specified TLV type is valid; otherwise
Defined at line 105 of file x64-shared/gen/third_party/openweave-core/src/include/Weave/Core/WeaveTLVTypes.h
-
uint64_t CommonTag (uint32_t tagNum)Generates the API representation of a common profile TLV tag
Parameters
tagNum [in] The common profile tag number assigned to the tag.Returns
A 64-bit integer representing the tag.
Defined at line 110 of file x64-shared/gen/third_party/openweave-core/src/include/Weave/Core/WeaveTLVTags.h
-
bool TLVTypeHasValue (uint8_t type)Returns true if the specified TLV type implies the presence of an associated value field.
Returns
if the specified TLV type implies the presence of an associated value field; otherwise
Defined at line 115 of file x64-shared/gen/third_party/openweave-core/src/include/Weave/Core/WeaveTLVTypes.h
-
bool TLVTypeHasLength (uint8_t type)Returns true if the specified TLV type implies the presence of an associated length field.
Returns
if the specified TLV type implies the presence of an associated length field; otherwise
Defined at line 126 of file x64-shared/gen/third_party/openweave-core/src/include/Weave/Core/WeaveTLVTypes.h
-
uint32_t ProfileIdFromTag (uint64_t tag)Returns the profile id from a TLV tag
Parameters
tag [in] The API representation of a profile-specific TLV tag.Returns
The profile id.
Defined at line 132 of file x64-shared/gen/third_party/openweave-core/src/include/Weave/Core/WeaveTLVTags.h
-
bool TLVTypeIsContainer (uint8_t type)Returns true if the specified TLV type is a container.
Returns
if the specified TLV type is a container; otherwise
Defined at line 136 of file x64-shared/gen/third_party/openweave-core/src/include/Weave/Core/WeaveTLVTypes.h
-
uint16_t ProfileNumFromTag (uint64_t tag)Returns the profile number from a TLV tag
Parameters
tag [in] The API representation of a profile-specific TLV tag.Returns
The associated profile number.
Defined at line 143 of file x64-shared/gen/third_party/openweave-core/src/include/Weave/Core/WeaveTLVTags.h
-
bool TLVTypeIsString (uint8_t type)Returns true if the specified TLV type is a UTF8 or byte string.
Returns
if the specified TLV type is a UTF8 or byte string; otherwise
Defined at line 146 of file x64-shared/gen/third_party/openweave-core/src/include/Weave/Core/WeaveTLVTypes.h
-
TLVFieldSize GetTLVFieldSize (uint8_t type)TODO: move to private namespace
Defined at line 152 of file x64-shared/gen/third_party/openweave-core/src/include/Weave/Core/WeaveTLVTypes.h
-
uint32_t TagNumFromTag (uint64_t tag)Returns the tag number from a TLV tag
Parameters
tag [in] The API representation of a profile-specific or context-specific TLV tag.Returns
The associated tag number.
Defined at line 157 of file x64-shared/gen/third_party/openweave-core/src/include/Weave/Core/WeaveTLVTags.h
-
uint8_t TLVFieldSizeToBytes (TLVFieldSize fieldSize)TODO: move to private namespace
Defined at line 161 of file x64-shared/gen/third_party/openweave-core/src/include/Weave/Core/WeaveTLVTypes.h
-
uint16_t VendorIdFromTag (uint64_t tag)Returns the vendor id from a TLV tag
Parameters
tag [in] The API representation of a profile-specific TLV tag.Returns
The associated vendor id.
Defined at line 168 of file x64-shared/gen/third_party/openweave-core/src/include/Weave/Core/WeaveTLVTags.h
-
bool IsProfileTag (uint64_t tag)Returns true of the supplied tag is a profile-specific tag.
Defined at line 174 of file x64-shared/gen/third_party/openweave-core/src/include/Weave/Core/WeaveTLVTags.h
-
bool IsContextTag (uint64_t tag)Returns true if the supplied tag is a context-specific tag.
Defined at line 180 of file x64-shared/gen/third_party/openweave-core/src/include/Weave/Core/WeaveTLVTags.h
-
bool IsSpecialTag (uint64_t tag)TODO: move to private namespace
Defined at line 184 of file x64-shared/gen/third_party/openweave-core/src/include/Weave/Core/WeaveTLVTags.h