🛰️航天仿真算法库 SpaceAST 0.0.1
载入中...
搜索中...
未找到
UnitManager.hpp
浏览该文件的文档.
1
20
21#pragma once
22
23#include "AstGlobal.h"
24#include "AstUtil/Unit.hpp"
25#include <unordered_map>
26#include <string>
27
28
29AST_NAMESPACE_BEGIN
30
36class Unit;
37
41AST_UTIL_API Unit* aUnitGet(StringView name);
42
43
47AST_UTIL_API errc_t aUnitAdd(const Unit& unit);
48
49
54AST_UTIL_API errc_t aUnitAdd(StringView name, const Unit& unit);
55
56
58class AST_UTIL_API UnitManager
59{
60public:
63 static UnitManager& Instance();
64
66
68
71 errc_t addUnit(const Unit& unit);
72
76 errc_t addUnit(StringView name, const Unit& unit);
77
81 Unit* getUnit(StringView name);
82
83protected:
84
89 errc_t _addUnit(const std::string& name, const Unit& unit);
90
91protected:
92 std::unordered_map<std::string, Unit*> units_;
93};
94
97AST_NAMESPACE_END
单位管理器
定义 UnitManager.hpp:59
std::unordered_map< std::string, Unit * > units_
单位映射表
定义 UnitManager.hpp:92
单位
定义 Unit.hpp:136
Unit * aUnitGet(StringView name)
获取单位
定义 UnitManager.cpp:110
errc_t aUnitAdd(const Unit &unit)
添加单位
定义 UnitManager.cpp:115