nl:: Weave:: Profiles:: DataManagement_Current:: TraitDataSource
这是一个抽象类。
摘要
继承
继承自: nl::Weave::Profiles::DataManagement_Current::TraitSchemaEngine::IGetDataDelegate直接已知子类: nl::Weave::DeviceLayer::Internal::DeviceIdentityTraitDataSource
构造函数和构造函数 |
|
---|---|
TraitDataSource(const TraitSchemaEngine *aEngine)
|
|
~TraitDataSource()
|
公共类型 |
|
---|---|
EventType
|
枚举 |
公共属性 |
|
---|---|
mRootIsDirty
|
bool
|
受保护的属性 |
|
---|---|
mManagedVersion
|
bool
|
mSchemaEngine
|
const TraitSchemaEngine *
|
公共函数 |
|
---|---|
ClearRootDirty(void)
|
void
|
GetSchemaEngine(void) const
|
const TraitSchemaEngine *
|
GetVersion(void)
|
uint64_t
|
IsRootDirty(void) const
|
bool
|
Lock(void)
|
|
OnCustomCommand(Command *aCommand, const nl::Weave::WeaveMessageInfo *aMsgInfo, nl::Weave::PacketBuffer *aPayload, const uint64_t & aCommandType, const bool aIsExpiryTimeValid, const int64_t & aExpiryTimeMicroSecond, const bool aIsMustBeVersionValid, const uint64_t & aMustBeVersion, nl::Weave::TLV::TLVReader & aArgumentReader)
|
virtual void
自定义命令的处理程序。
|
OnCustomCommand(Command *aCommand, const nl::Weave::WeaveMessageInfo *aMsgInfo, nl::Weave::PacketBuffer *aPayload, nl::Weave::TLV::TLVReader & aArgumentReader)
|
virtual void
自定义命令的处理程序。
|
OnEvent(uint16_t aType, void *aInEventParam)
|
virtual WEAVE_ERROR
|
ReadData(PropertyPathHandle aHandle, uint64_t aTagToWrite, TLV::TLVWriter & aWriter)
|
|
SetDirty(PropertyPathHandle aPropertyHandle)
|
void
|
SetRootDirty(void)
|
void
|
SetVersion(uint64_t version)
|
void
|
Unlock(void)
|
受保护的函数 |
|
---|---|
GetData(PropertyPathHandle aHandle, uint64_t aTagToWrite, nl::Weave::TLV::TLVWriter & aWriter, bool & aIsNull, bool & aIsPresent) __OVERRIDE
|
virtual WEAVE_ERROR
如果有节点的路径句柄、TLV 写入程序和指示值是否为 null 的布尔值,请从用于构建通知的特征源中获取数据。
|
GetLeafData(PropertyPathHandle aLeafHandle, uint64_t aTagToWrite, nl::Weave::TLV::TLVWriter & aWriter) __OVERRIDE=0
|
virtual WEAVE_ERROR
获得指向叶节点和 TLV 写入程序的路径句柄,从被调用方获取数据。
|
IncrementVersion(void)
|
void
|
公共类型
EventType
EventType
公共属性
mRootIsDirty
bool mRootIsDirty
受保护的属性
mManagedVersion
bool mManagedVersion
mSchemaEngine
const TraitSchemaEngine * mSchemaEngine
公共函数
ClearRootDirty
void ClearRootDirty( void )
GetSchemaEngine
const TraitSchemaEngine * GetSchemaEngine( void ) const
GetVersion
uint64_t GetVersion( void )
IsRootDirty 类
bool IsRootDirty( void ) const
锁定
WEAVE_ERROR Lock( void )
OnCustomCommand
virtual void OnCustomCommand( Command *aCommand, const nl::Weave::WeaveMessageInfo *aMsgInfo, nl::Weave::PacketBuffer *aPayload, const uint64_t & aCommandType, const bool aIsExpiryTimeValid, const int64_t & aExpiryTimeMicroSecond, const bool aIsMustBeVersionValid, const uint64_t & aMustBeVersion, nl::Weave::TLV::TLVReader & aArgumentReader )
自定义命令的处理程序。
这是一个虚拟方法。如果未覆盖,则默认的行为是返回状态代码 Common::kStatus_UnsupportedMessage 的状态报告
OnCustomCommand
virtual void OnCustomCommand( Command *aCommand, const nl::Weave::WeaveMessageInfo *aMsgInfo, nl::Weave::PacketBuffer *aPayload, nl::Weave::TLV::TLVReader & aArgumentReader )
自定义命令的处理程序。
这是一个虚拟方法。如果未覆盖,则默认的行为是返回状态代码 Common::kStatus_UnsupportedMessage 的状态报告
活动
virtual WEAVE_ERROR OnEvent( uint16_t aType, void *aInEventParam )
读取数据
WEAVE_ERROR ReadData( PropertyPathHandle aHandle, uint64_t aTagToWrite, TLV::TLVWriter & aWriter )
沙特阿拉伯航空
void SetDirty( PropertyPathHandle aPropertyHandle )
SetRootDirty
void SetRootDirty( void )
设置版本
void SetVersion( uint64_t version )
特征数据源
TraitDataSource( const TraitSchemaEngine *aEngine )
解锁
WEAVE_ERROR Unlock( void )
~TraitDataSource
virtual ~TraitDataSource()
受保护的函数
获取数据
virtual WEAVE_ERROR GetData( PropertyPathHandle aHandle, uint64_t aTagToWrite, nl::Weave::TLV::TLVWriter & aWriter, bool & aIsNull, bool & aIsPresent ) __OVERRIDE
如果有节点的路径句柄、TLV 写入程序和指示值是否为 null 的布尔值,请从用于构建通知的特征源中获取数据。
如果路径句柄不是叶节点,TDM 会处理向写入器写入值的功能(例如打开容器、使结构体无效等)。如果非叶节点为 null 或不存在,TDM 将不会为其子节点调用 GetData。
系统仅会为可为 null、可选、临时或叶级的句柄调用此函数。我们希望,如果句柄具有已启用这些选项的特征,则将实现相应的逻辑来填充 aIsNull 和 aIsPresent。
详细信息 | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
参数 |
|
||||||||||
返回值 |
|
GetLeafData
virtual WEAVE_ERROR GetLeafData( PropertyPathHandle aLeafHandle, uint64_t aTagToWrite, nl::Weave::TLV::TLVWriter & aWriter ) __OVERRIDE=0
增量版本
void IncrementVersion( void )