🛰️航天仿真算法库 SpaceAST 0.0.1
载入中...
搜索中...
未找到
ObjectCalculation.hpp
浏览该文件的文档.
1
20
21#pragma once
22
23#include "AstGlobal.h"
24#include "AstUtil/ObjectNamed.hpp"
25
26AST_NAMESPACE_BEGIN
27
39class AST_UTIL_API ObjectCalculation : public ObjectNamed
40{
41public:
42 AST_OBJECT(ObjectCalculation)
43
44 using ObjectNamed::ObjectNamed;
45 ~ObjectCalculation() override = default;
46public:
49 virtual Class* getExpectedType() const = 0;
50
57 virtual errc_t calculateNoCheckType(const Object* obj, double& result) = 0;
58
63 errc_t calculate(const Object* obj, double& result);
64
68 bool isExpectedType(const Object* obj) const;
69};
70
71
72
75AST_NAMESPACE_END
类元信息
定义 Class.hpp:40
对象计算基类
定义 ObjectCalculation.hpp:40
virtual Class * getExpectedType() const =0
获取期望输入的对象类型
virtual errc_t calculateNoCheckType(const Object *obj, double &result)=0
计算结果
命名对象
定义 ObjectNamed.hpp:36
对象基类,继承自该类的对象可以使用运行时类型信息相关功能,实现强弱引用计数、运行时元信息(属性访问、序列化等)等基础功能
定义 Object.hpp:86