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
)

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

在提供句柄的情況下,傳回相符特徵資料例項的參照。

定位

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

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
)