🛰️航天仿真算法库 SpaceAST 0.0.1
载入中...
搜索中...
未找到
Scenario.hpp
浏览该文件的文档.
1
20
21#pragma once
22
23#include "AstGlobal.h"
24#include "AstUtil/Object.hpp"
25#include "AstUtil/StringView.hpp"
26#include "AstCore/EventTime.hpp"
27#include "AstCore/EventInterval.hpp"
28#include "AstCore/CelestialBody.hpp"
29
30AST_NAMESPACE_BEGIN
31
37class EventTime;
38class EventInterval;
39class CelestialBody;
40
43class AST_SIM_API Scenario: public Object
44{
45public:
46 AST_OBJECT(Scenario)
47 Scenario();
48 ~Scenario();
49public:
53
57 errc_t getEpoch(TimePoint& epoch) const;
58
61 void setEpoch(EventTime* epoch);
62
65 void setEpoch(const TimePoint& epoch);
66
69 SharedPtr<EventInterval>& getIntervalHandle();
70
74 errc_t getInterval(TimeInterval& interval) const;
75
78 void setInterval(EventInterval* interval);
79
82 void setInterval(const TimeInterval& interval);
83public:
84 void setName(StringView name) override {name_ = std::string(name);}
85
86 const std::string& getName() const override{return name_;}
87
88 void setEOPFileName(StringView filename){eopFileName_ = std::string(filename);}
89
90 void setInheritEOPSource(bool inherit){inheritEOPSource_ = inherit;}
91
92 void setPrimaryBody(CelestialBody* body);
93protected:
94 std::string name_;
97 std::string eopFileName_;
98 bool inheritEOPSource_{};
100};
101
104AST_NAMESPACE_END
事件时间段
定义 EventInterval.hpp:41
事件时间
定义 EventTime.hpp:44
对象基类,继承自该类的对象可以使用运行时类型信息相关功能,实现强弱引用计数、运行时元信息(属性访问、序列化等)等基础功能
定义 Object.hpp:86
场景类
定义 Scenario.hpp:44
std::string eopFileName_
EOP文件名
定义 Scenario.hpp:97
SharedPtr< EventTime > epoch_
场景历元时间
定义 Scenario.hpp:95
SharedPtr< CelestialBody > primaryBody_
场景天体
定义 Scenario.hpp:99
const std::string & getName() const override
获取对象的名称
定义 Scenario.hpp:86
SharedPtr< EventTime > & getEpochHandle()
获取场景历元时间
定义 Scenario.hpp:52
SharedPtr< EventInterval > interval_
场景时间间隔
定义 Scenario.hpp:96
void setName(StringView name) override
设置对象的名称
定义 Scenario.hpp:84
std::string name_
场景名称
定义 Scenario.hpp:94
共享指针
定义 SharedPtr.hpp:33
时间区间
定义 TimeInterval.hpp:60
绝对时间点
定义 TimePoint.hpp:106