DEADSOFTWARE

Precompile .ih files and cache dependencies based on .ih files
[odcread.git] / typeregister / typeregister.cc
1 #include "typeregister/typeregister.ih"
3 namespace odc {
5 TypeRegister::TypeRegister(): d_map() {}
7 TypeRegister *TypeRegister::s_instance = 0;
9 TypeRegister &TypeRegister::getInstance() {
10 if (s_instance == 0) {
11 s_instance = new TypeRegister();
12 }
13 return *s_instance;
14 }
16 void TypeRegister::add(const std::string &name, TypeProxyBase *proxy) {
17 d_map[name] = proxy;
18 }
20 const TypeProxyBase *TypeRegister::get(const std::string &name) {
21 return d_map[name];
22 }
24 TypeProxyBase::TypeProxyBase(const std::string &name) {
25 TypeRegister::getInstance().add(name, this);
26 }
28 }