nl:: Weave:: Profiles:: 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
假设读者位于 WDM 路径上的 Path::kCsTag_RootSection 结构上,请解析该结构并将匹配的句柄返回给特征。
|
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
根据特征句柄,写出 Path::kCsTag_RootSection 结构的 TLV。
|
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 )
地址处理
virtual WEAVE_ERROR AddressToHandle( TLV::TLVReader & aReader, TraitDataHandle & aHandle, SchemaVersionRange & aSchemaVersionRange ) const
假设读者位于 WDM 路径上的 Path::kCsTag_RootSection 结构上,请解析该结构并将匹配的句柄返回给特征。
清除
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
HandleToAddress
virtual WEAVE_ERROR HandleToAddress( TraitDataHandle aHandle, TLV::TLVWriter & aWriter, SchemaVersionRange & aSchemaVersionRange ) const
根据特征句柄,写出 Path::kCsTag_RootSection 结构的 TLV。
反复试验
virtual void Iterate( IteratorCallback aCallback, void *aContext )
定位
virtual WEAVE_ERROR Locate( TraitDataHandle aHandle, T **aTraitInstance ) 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
PrepareSubscriptionPathList
WEAVE_ERROR PrepareSubscriptionPathList( TraitPath *pathList, uint16_t pathListSize, uint16_t & pathListLen )
PrepareSubscriptionSpecificPathList
WEAVE_ERROR PrepareSubscriptionSpecificPathList( TraitPath *pathList, uint16_t pathListSize, TraitDataHandle aHandle )
移出
WEAVE_ERROR Remove( T *traitInstance )
移出
WEAVE_ERROR Remove( TraitDataHandle aHandle )
设置节点 ID
void SetNodeId( uint64_t aNodeId )
大小
uint32_t Size( void ) const
返回目录中的特征实例数量。
~GenericTraitCatalogImpl
virtual ~GenericTraitCatalogImpl( void )