nl::Weave::Profiles::DataManagement_Current::TraitCatalogBase

This is an abstract class.

Summary

Inheritance

Direct Known Subclasses:
  nl::Weave::Profiles::DataManagement_Current::GenericTraitCatalogImpl< T >
  nl::Weave::Profiles::DataManagement_Current::SingleResourceTraitCatalog< T >

Public functions

AddressToHandle(TLV::TLVReader & aReader, TraitDataHandle & aHandle, SchemaVersionRange & aSchemaVersionRange) const =0
virtual WEAVE_ERROR
Given a reader positioned at the Path::kCsTag_RootSection structure on a WDM path, parse that structure and return the matching handle to the trait.
DispatchEvent(uint16_t aEvent, void *aContext) const =0
virtual WEAVE_ERROR
Dispatch an event to all trait data instance housed in this catalog.
GetInstanceId(TraitDataHandle aHandle, uint64_t & aInstanceId) const =0
virtual WEAVE_ERROR
GetResourceId(TraitDataHandle aHandle, ResourceIdentifier & aResourceId) const =0
virtual WEAVE_ERROR
HandleToAddress(TraitDataHandle aHandle, TLV::TLVWriter & aWriter, SchemaVersionRange & aSchemaVersionRange) const =0
virtual WEAVE_ERROR
Given a trait handle, write out the TLV for the Path::kCsTag_RootSection structure.
Iterate(IteratorCallback aCallback, void *aContext)=0
virtual void
Locate(TraitDataHandle aHandle, T **aTraitInstance) const =0
virtual WEAVE_ERROR
Given a handle, return a reference to the matching trait data instance.
Locate(T *aTraitInstance, TraitDataHandle & aHandle) const =0
virtual WEAVE_ERROR
Reverse.

Public functions

AddressToHandle

virtual WEAVE_ERROR AddressToHandle(
  TLV::TLVReader & aReader,
  TraitDataHandle & aHandle,
  SchemaVersionRange & aSchemaVersionRange
) const =0

Given a reader positioned at the Path::kCsTag_RootSection structure on a WDM path, parse that structure and return the matching handle to the trait.

DispatchEvent

virtual WEAVE_ERROR DispatchEvent(
  uint16_t aEvent,
  void *aContext
) const =0

Dispatch an event to all trait data instance housed in this catalog.

GetInstanceId

virtual WEAVE_ERROR GetInstanceId(
  TraitDataHandle aHandle,
  uint64_t & aInstanceId
) const =0

GetResourceId

virtual WEAVE_ERROR GetResourceId(
  TraitDataHandle aHandle,
  ResourceIdentifier & aResourceId
) const =0

HandleToAddress

virtual WEAVE_ERROR HandleToAddress(
  TraitDataHandle aHandle,
  TLV::TLVWriter & aWriter,
  SchemaVersionRange & aSchemaVersionRange
) const =0

Given a trait handle, write out the TLV for the Path::kCsTag_RootSection structure.

Iterate

virtual void Iterate(
  IteratorCallback aCallback,
  void *aContext
)=0

Locate

virtual WEAVE_ERROR Locate(
  TraitDataHandle aHandle,
  T **aTraitInstance
) const =0

Given a handle, return a reference to the matching trait data instance.

Locate

virtual WEAVE_ERROR Locate(
  T *aTraitInstance,
  TraitDataHandle & aHandle
) const =0

Reverse.