🛰️航天仿真算法库 SpaceAST
0.0.1
载入中...
搜索中...
未找到
ClassRegistry.hpp
浏览该文件的文档.
1
20
21
#pragma once
22
23
#include "AstGlobal.h"
24
#include <unordered_map>
25
#include <string>
26
#include <vector>
27
28
AST_NAMESPACE_BEGIN
29
35
class
Class;
36
39
class
ClassRegistry
40
{
41
public
:
42
ClassRegistry
() =
default
;
43
~ClassRegistry
() =
default
;
44
static
ClassRegistry
* Instance();
45
46
Class
* getClass(
StringView
name)
const
;
47
void
getAllClassNames(std::vector<std::string>& names)
const
;
48
void
registerClass(
Class
* cls);
49
void
registerClass(
StringView
name,
Class
* cls);
50
protected
:
51
using
ClassMap = std::unordered_map<std::string, Class*>;
52
ClassMap classMap_;
53
};
54
57
AST_NAMESPACE_END
ast::ClassRegistry
类注册器
定义
ClassRegistry.hpp:40
ast::Class
类元信息
定义
Class.hpp:37
ast::StringViewBasic< char >
src
AstUtil
RTTI
ClassRegistry.hpp
制作者
1.12.0