🛰️航天仿真算法库 SpaceAST 0.0.1
载入中...
搜索中...
未找到
UiCommandEditor.hpp
浏览该文件的文档.
1
20
21#pragma once
22
23#include "AstGlobal.h"
24#include "AstCore/MissionCommand.hpp"
25#include <QStackedWidget>
26#include <unordered_map>
27
28AST_NAMESPACE_BEGIN
29
30class Class;
31class UiInitialState;
32class UiPropagate;
33class UiManeuver;
34class UiSequence;
35class UiTargeterSequence;
36class UiFeasibleRegionStudy;
37
39class AST_GUI_API UiCommandEditor : public QStackedWidget
40{
41 Q_OBJECT
42public:
43 explicit UiCommandEditor(QWidget* parent = nullptr);
44 ~UiCommandEditor() override;
45
47 void editCommand(MissionCommand* cmd);
48
50 void clear();
51
52signals:
53 void commandModified(MissionCommand* cmd);
54
55private:
56 void registerEditors();
57 void setupUi();
58
59 UiInitialState* initStatePage_ = nullptr;
60 UiPropagate* propagatePage_ = nullptr;
61 UiManeuver* maneuverPage_ = nullptr;
62 UiSequence* sequencePage_ = nullptr;
63 UiTargeterSequence* targetSeqPage_ = nullptr;
64 UiFeasibleRegionStudy* feasibleRegionPage_ = nullptr;
65
66 int initStateIdx_ = -1;
67 int propagateIdx_ = -1;
68 int maneuverIdx_ = -1;
69 int sequenceIdx_ = -1;
70 int targetSeqIdx_ = -1;
71 int feasibleRegionIdx_ = -1;
72};
73
74AST_NAMESPACE_END
命令(虚基类),用于定义任务序列中的命令,例如初始状态、轨道机动、轨道预报等
定义 Command.hpp:42
命令属性编辑器,根据 RTTI 类型自动切换编辑页面
定义 UiCommandEditor.hpp:40
FeasibleRegionStudy 段编辑器
定义 UiFeasibleRegionStudy.hpp:44
InitialState 段编辑器
定义 UiInitialState.hpp:39
Maneuver 段编辑器
定义 UiManeuver.hpp:34
Propagate 段编辑器
定义 UiPropagate.hpp:39
Sequence 段编辑器
定义 UiSequence.hpp:35
TargeterSequence 段编辑器(在 Sequence 基础上增加打靶配置)
定义 UiSequence.hpp:56