race.h 543 B

123456789101112131415161718192021222324252627282930313233
  1. #ifndef INCLUDEACE_H
  2. #define INCLUDEACE_H
  3. #include <QObject>
  4. #include <QString>
  5. #include <vector>
  6. #include "abstractfactory.h"
  7. class Unit;
  8. class Race : public QObject
  9. {
  10. Q_OBJECT
  11. public:
  12. explicit Race(QString race_name, QObject *parent = nullptr);
  13. Unit* createUnit(QString unit_name);
  14. const std::vector<QString> &getAvailableUnitsList();
  15. private:
  16. QString race_name_;
  17. ObjectFactory<Unit, QString> units_factory_;
  18. std::vector<QString> available_units_list_;
  19. signals:
  20. public slots:
  21. };
  22. #endif // INCLUDEACE_H