class Parser
Defined at line 307 of file x64-shared/gen/third_party/openweave-core/src/include/Weave/Profiles/data-management/Current/MessageDef.h
Parses a WDM Path container
Public Methods
WEAVE_ERROR Init (const nl::Weave::TLV::TLVReader & aReader)
aReader has to be on the element of Path container
WEAVE_ERROR CheckSchemaValidity ()
Roughly verify the schema is right, including
1) all mandatory tags are present
2) no unknown tags
3) all elements have expected data type
4) any tag can only appear once
WEAVE_ERROR GetResourceID (nl::Weave::TLV::TLVReader *const apReader)
Resource ID could be of any type, so we can only position the reader so the caller has
full information of tag, element type, length, and value
WEAVE_END_OF_TLV if there is no such element
WEAVE_ERROR GetInstanceID (nl::Weave::TLV::TLVReader *const apReader)
Instance ID could be of any type, so we can only position the reader so the caller has
full information of tag, element type, length, and value
WEAVE_ERROR GetInstanceID (uint64_t *const apInstanceID)
WEAVE_END_OF_TLV if there is no such element
WEAVE_ERROR_WRONG_TLV_TYPE if there is such element but it's not any of the defined unsigned integer types
WEAVE_ERROR GetProfileID (uint32_t *const apProfileID, SchemaVersionRange *const apSchemaVersionRange)
Profile ID can only be uint32_t and not any other type
WEAVE_END_OF_TLV if there is no such element
WEAVE_ERROR_WRONG_TLV_TYPE if there is such element but it's not any of the defined unsigned integer types
WEAVE_ERROR GetTags (nl::Weave::TLV::TLVReader *const apReader)
Get a TLVReader at the additional tags section. Next() must be called before accessing it.