nl:: Weave:: Profiles:: DataManagement_Current:: GenericTraitCatalogImpl
#include <src/lib/profiles/data-management/Current/GenericTraitCatalogImpl.h>
Weave は、すべてが同じリソースを参照するトレイト データ インスタンスの集まりのための TraitCatalogBase インターフェースの実装を提供しています。
概要
これらのインスタンス用に、C++ の Map-backed ストレージが提供されています。
継承
継承元: 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
カタログ内のトレイト インスタンスの数を返します。
|
パブリック関数
Add
WEAVE_ERROR Add( const ResourceIdentifier & aResourceId, const uint64_t & aInstanceId, PropertyPathHandle basePathHandle, T *traitInstance, TraitDataHandle & aHandle )
AddressToHandle
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 )
SetNodeId
void SetNodeId( uint64_t aNodeId )
サイズ
uint32_t Size( void ) const
カタログ内のトレイト インスタンスの数を返します。
~GenericTraitCatalogImpl
virtual ~GenericTraitCatalogImpl( void )