🛰️航天仿真算法库 SpaceAST 0.0.1
载入中...
搜索中...
未找到
ShooterResult.hpp
浏览该文件的文档.
1
20
21#pragma once
22
23#include "AstGlobal.h"
24#include "AstUtil/Object.hpp"
25#include "AstUtil/ObjectNamed.hpp"
26#include "AstScript/Expr.hpp"
27#include <string>
28
29AST_NAMESPACE_BEGIN
30
32class AST_CORE_API ShooterResult : public ObjectNamed
33{
34public:
35 AST_OBJECT(ShooterResult)
36 AST_PROPERT(active)
37 AST_PROPERT(desired)
38 AST_PROPERT(scale)
39 AST_PROPERT(tolerance)
40 AST_PROPERT(valid)
41 AST_PROPERT(weight)
42 static ShooterResult* New();
43
44 ShooterResult() = default;
45 ~ShooterResult() override = default;
46
47PROPERTIES:
48 bool active() const { return active_; }
49 void setActive(bool active) { active_ = active; }
50
51 double desired() const { return desired_; }
52 void setDesired(double desired) { desired_ = desired; }
53
54 double scale() const { return scale_; }
55 void setScale(double scale) { scale_ = scale; }
56
57 double tolerance() const { return tolerance_; }
58 void setTolerance(double tolerance) { tolerance_ = tolerance; }
59
60 bool valid() const { return valid_; }
61 void setValid(bool valid) { valid_ = valid; }
62
63 double weight() const { return weight_; }
64 void setWeight(double weight) { weight_ = weight; }
65
67 errc_t getValue(double& value) const;
68
69 Expr* expr() const { return expr_.get(); }
70 void setExpr(Expr* expr) { expr_ = expr; }
71private:
72 bool active_{false};
73 bool valid_{true};
74 WeakPtr<Expr> expr_;
75 double desired_{0.0};
76 double scale_{1.0};
77 double tolerance_{0.0};
78 double weight_{1.0};
79};
80
81AST_NAMESPACE_END
表达式基类
定义 Expr.hpp:39
命名对象
定义 ObjectNamed.hpp:36
结果变量,用于定义微分修正中的结果变量
定义 ShooterResult.hpp:33
弱引用指针
定义 WeakPtr.hpp:35