modelsregister.h 507 B

12345678910111213141516171819202122232425262728
  1. #ifndef MODELSREGISTER_H
  2. #define MODELSREGISTER_H
  3. #include <QMap>
  4. #include <QObject>
  5. class BaseModel;
  6. class ModelsRegister
  7. {
  8. public:
  9. static ModelsRegister *instance()
  10. {
  11. static ModelsRegister i;
  12. return &i;
  13. }
  14. static void registerModel(BaseModel *model);
  15. static BaseModel *model(const QString &name);
  16. private:
  17. ModelsRegister() = default;
  18. ~ModelsRegister() = default;
  19. QObject m_parent;
  20. QMap<QString, BaseModel *> m_models;
  21. };
  22. #endif // MODELSREGISTER_H