нл:: Переплетение:: Профили:: DataManagement_Current:: GenericTraitCatalogImpl

#include <src/lib/profiles/data-management/Current/GenericTraitCatalogImpl.h>

Weave предоставил реализацию интерфейса TraitCatalogBase для коллекции экземпляров данных признаков, которые все ссылаются на один и тот же ресурс.

Краткое содержание

Он предоставляет хранилище на основе карт C++ для этих экземпляров.

Наследование

Наследуется от: nl::Weave::Profiles::DataManagement_Current::TraitCatalogBase< T >

Конструкторы и деструкторы

GenericTraitCatalogImpl (void)
~GenericTraitCatalogImpl (void)

Общественные функции

Add (const ResourceIdentifier & aResourceId, const uint64_t & aInstanceId, PropertyPathHandle basePathHandle, T *traitInstance, TraitDataHandle & aHandle)
AddressToHandle ( TLV::TLVReader & aReader, TraitDataHandle & aHandle, SchemaVersionRange & aSchemaVersionRange) const
virtual WEAVE_ERROR
Учитывая, что считыватель расположен в структуре Path::kCsTag_RootSection на пути WDM, проанализируйте эту структуру и верните соответствующий дескриптор признаку.
Clear (void)
DispatchEvent (uint16_t aEvent, void *aContext) const
virtual WEAVE_ERROR
Отправьте событие всем экземплярам данных о признаках, размещенным в этом каталоге.
GetInstanceId (TraitDataHandle aHandle, uint64_t & aInstanceId) const
virtual WEAVE_ERROR
GetResourceId (TraitDataHandle aHandle, ResourceIdentifier & aResourceId) const
virtual WEAVE_ERROR
HandleToAddress (TraitDataHandle aHandle, TLV::TLVWriter & aWriter, SchemaVersionRange & aSchemaVersionRange) const
virtual WEAVE_ERROR
Учитывая дескриптор признака, запишите TLV для структуры Path::kCsTag_RootSection.
Iterate ( IteratorCallback aCallback, void *aContext)
virtual void
Locate (TraitDataHandle aHandle, T **aTraitInstance) const
virtual WEAVE_ERROR
Учитывая дескриптор, верните ссылку на соответствующий экземпляр данных признака.
Locate (T *aTraitInstance, TraitDataHandle & aHandle) const
virtual WEAVE_ERROR
Обеспечить регресс.
Locate (uint32_t aProfileId, uint64_t aInstanceId, ResourceIdentifier aResourceId, TraitDataHandle & aHandle) const
Locate (uint32_t aProfileId, uint64_t aInstanceId, ResourceIdentifier aResourceId, T **aTraitInstance) const
PrepareSubscriptionPathList ( TraitPath *pathList, uint16_t pathListSize, uint16_t & pathListLen)
PrepareSubscriptionSpecificPathList ( TraitPath *pathList, uint16_t pathListSize, TraitDataHandle aHandle)
Remove (T *traitInstance)
Remove (TraitDataHandle aHandle)
SetNodeId (uint64_t aNodeId)
void
Size (void) const
uint32_t
Возвращает количество экземпляров признаков в каталоге.

Общественные функции

Добавлять

WEAVE_ERROR Add(
  const ResourceIdentifier & aResourceId,
  const uint64_t & aInstanceId,
  PropertyPathHandle basePathHandle,
  T *traitInstance,
  TraitDataHandle & aHandle
)

АдресToHandle

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

Учитывая, что считыватель расположен в структуре Path::kCsTag_RootSection на пути WDM, проанализируйте эту структуру и верните соответствующий дескриптор признаку.

Прозрачный

WEAVE_ERROR Clear(
  void
)

DispatchEvent

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

Отправьте событие всем экземплярам данных о признаках, размещенным в этом каталоге.

GenericTraitCatalogImpl

 GenericTraitCatalogImpl(
  void
)

GetInstanceId

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

GetResourceId

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

Хэндлетоадрес

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

Учитывая дескриптор признака, запишите TLV для структуры Path::kCsTag_RootSection.

Итерировать

virtual void Iterate(
  IteratorCallback aCallback,
  void *aContext
)

Найдите

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

Учитывая дескриптор, верните ссылку на соответствующий экземпляр данных признака.

Найдите

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

Обеспечить регресс.

Найдите

WEAVE_ERROR Locate(
  uint32_t aProfileId,
  uint64_t aInstanceId,
  ResourceIdentifier aResourceId,
  TraitDataHandle & aHandle
) const 

Найдите

WEAVE_ERROR Locate(
  uint32_t aProfileId,
  uint64_t aInstanceId,
  ResourceIdentifier aResourceId,
  T **aTraitInstance
) const 

Подготовить список путей подписки

WEAVE_ERROR PrepareSubscriptionPathList(
  TraitPath *pathList,
  uint16_t pathListSize,
  uint16_t & pathListLen
)

ПодготовкаSubscriptionSpecificPathList

WEAVE_ERROR PrepareSubscriptionSpecificPathList(
  TraitPath *pathList,
  uint16_t pathListSize,
  TraitDataHandle aHandle
)

Удалять

WEAVE_ERROR Remove(
  T *traitInstance
)

Удалять

WEAVE_ERROR Remove(
  TraitDataHandle aHandle
)

SetNodeId

void SetNodeId(
  uint64_t aNodeId
)

Размер

uint32_t Size(
  void
) const 

Возвращает количество экземпляров признаков в каталоге.

~GenericTraitCatalogImpl

virtual  ~GenericTraitCatalogImpl(
  void
)