🛰️航天仿真算法库 SpaceAST 0.0.1
载入中...
搜索中...
未找到
ast::PropertyStruct类 参考

#include <PropertyStruct.hpp>

+ 类 ast::PropertyStruct 继承关系图:

Public 类型

using OutputType = void*
 
using InputType = void
 
- Public 类型 继承自 ast::Property
enum  EPropertyFlag { eReadable = 0x01 , eWritable = 0x02 }
 

Public 成员函数

errc_t accept (PropertyVisitor &visitor, const void *container) override
 
 Property (StringView name, StringView desc, FPropertyGet getter, FPropertySet setter)
 
 Property (FPropertyGet getter, FPropertySet setter)
 
 Property ()=default
 
- Public 成员函数 继承自 ast::Property
 Property (StringView name, StringView desc, FPropertyGet getter, FPropertySet setter)
 
 Property (FPropertyGet getter, FPropertySet setter)
 
virtual errc_t getValueDouble (const void *container, double &value)=0
 
virtual errc_t setValueDouble (void *container, double value)=0
 
virtual errc_t getValueInt (const void *container, int &value)=0
 
virtual errc_t setValueInt (void *container, int value)=0
 
virtual errc_t getValueBool (const void *container, bool &value)=0
 
virtual errc_t setValueBool (void *container, bool value)=0
 
virtual errc_t getValueString (const void *container, std::string &value)=0
 
virtual errc_t setValueString (void *container, StringView value)=0
 
- Public 成员函数 继承自 ast::Field
 Field (StringView name, StringView desc="")
 
const std::string & name () const
 
void setName (StringView name)
 
const std::string & desc () const
 
void setDesc (StringView desc)
 

Protected 成员函数

A_ALWAYS_INLINE errc_t setValue (void *container, const InputType *value)
 
A_ALWAYS_INLINE errc_t getValue (void *container, OutputType *value)
 
- Protected 成员函数 继承自 ast::Property
A_ALWAYS_INLINE errc_t getValue (void *container, void *value)
 
A_ALWAYS_INLINE errc_t setValue (void *container, const void *value)
 

额外继承的成员函数

- Protected 属性 继承自 ast::Property
FPropertyGet getter_ {nullptr}
 
FPropertySet setter_ {nullptr}
 
- Protected 属性 继承自 ast::Field
std::string name_
 
std::string desc_
 

详细描述

结构体属性

结构体属性,包含属性的名称、描述等信息

成员函数说明

◆ accept()

errc_t ast::PropertyStruct::accept ( PropertyVisitor & visitor,
const void * container )
overridevirtual

接受访问者

参数
visitor访问者对象
container容器对象指针
返回
errc_t 错误码

实现了 ast::Property.

◆ getValue()

A_ALWAYS_INLINE errc_t ast::PropertyStruct::getValue ( void * container,
OutputType * value )
inlineprotected

获取属性值(结构体类型)

参数
container容器指针
value属性值指针
返回
0 成功,其他值 失败

◆ setValue()

A_ALWAYS_INLINE errc_t ast::PropertyStruct::setValue ( void * container,
const InputType * value )
inlineprotected

设置属性值(结构体类型)

参数
container容器指针
value属性值指针
返回
0 成功,其他值 失败

该类的文档由以下文件生成: