🛰️航天仿真算法库 SpaceAST 0.0.1
载入中...
搜索中...
未找到
Sensor.hpp
浏览该文件的文档.
1
19
20#pragma once
21
22#include "AstGlobal.h"
23#include "AstUtil/Object.hpp"
24#include "AstUtil/StringView.hpp"
25#include "AstCore/Point.hpp"
26#include "AstCore/FieldOfView.hpp"
27#include <memory>
28
29AST_NAMESPACE_BEGIN
30
37class AST_SIM_API Sensor: public Point
38{
39public:
40 AST_OBJECT(Sensor)
41 Sensor();
42 ~Sensor() override = default;
43public:
44 const std::string& getName() const override { return name_; }
45 void setName(StringView name) override { name_ = std::string(name); }
46
47public: // 从 Point 类继承的方法
48 Frame* getFrame() const final;
49 errc_t getPos(const TimePoint& tp, Vector3d& pos) const final;
50 errc_t getPosVel(const TimePoint& tp, Vector3d& pos, Vector3d& vel) const final;
51public:
54 void setFieldOfView(FieldOfView* fov);
55
58 FieldOfView* getFieldOfView() const { return fov_; }
59
60private:
61 std::string name_;
62 WeakPtr<Point> location_;
64};
65
68AST_NAMESPACE_END
视场基类
定义 FieldOfView.hpp:43
坐标系类
定义 Frame.hpp:60
定义 Point.hpp:38
virtual Frame * getFrame() const =0
获取点所在的参考坐标系
传感器对象
定义 Sensor.hpp:38
const std::string & getName() const override
获取对象名称
定义 Sensor.hpp:44
void setName(StringView name) override
设置对象名称
定义 Sensor.hpp:45
共享指针
定义 SharedPtr.hpp:33
绝对时间点
定义 TimePoint.hpp:106
弱引用指针
定义 WeakPtr.hpp:35