#include "component_registry.h" #include namespace gencpp { namespace registry { ComponentRegistry& ComponentRegistry::Instance() { static ComponentRegistry instance; return instance; } void ComponentRegistry::Register(const std::string& type, ComponentCreator creator) { std::cout << "Registering component type: " << type << std::endl; m_creators[type] = creator; } std::unique_ptr> ComponentRegistry::Create(const std::string& type) { auto it = m_creators.find(type); if (it != m_creators.end()) { return it->second(); } return nullptr; } } // namespace registry } // namespace gencpp