🛰️航天仿真算法库 SpaceAST 0.3.1
载入中...
搜索中...
未找到
VectorProxy.hpp
浏览该文件的文档.
1
20
21#pragma once
22
23#include "AstGlobal.h"
24#include "Vector.hpp"
25
26AST_NAMESPACE_BEGIN
27
35class AST_CORE_API VectorProxy final: public Vector
36{
37public:
38 VectorProxy() = default;
39 VectorProxy(Vector* vector):impl_(vector){}
40 ~VectorProxy() override = default;
41
42public:
43 void setImpl(Vector* impl){impl_ = impl;}
44 Vector* impl() const {return impl_.get();}
45public:
46 Axes* getAxes() const override;
47 errc_t getVector(const TimePoint& tp, Vector3d& vec) const override;
48 errc_t getVector(const TimePoint& tp, Vector3d& vec, Vector3d& vel) const override;
49 errc_t getVector(const TimePoint& tp, Vector3d& vec, Vector3d& vel, Vector3d& acc) const override;
50private:
51 WeakPtr<Vector> impl_{};
52};
53
54
55
56
59AST_NAMESPACE_END
轴系抽象基类
定义 Axes.hpp:86
绝对时间点
定义 TimePoint.hpp:108
向量代理类
定义 VectorProxy.hpp:36
向量抽象基类
定义 Vector.hpp:38
virtual errc_t getVector(const TimePoint &tp, Vector3d &vec) const =0
获取向量在指定时间点的值,相对于向量的参考坐标系
virtual Axes * getAxes() const =0
获取向量所在的参考坐标系
弱引用指针
定义 WeakPtr.hpp:35