#ifndef PLAYER_H #define PLAYER_H #include #include #include struct Player { int id; QString name; QColor primaryColor; QColor secondaryColor; Player() : id(0), name("Unknown"), primaryColor(Qt::blue), secondaryColor(Qt::white) {} Player(int pId, const QString &pName, const QColor &primary, const QColor &secondary) : id(pId), name(pName), primaryColor(primary), secondaryColor(secondary) {} }; class PlayerManager { public: PlayerManager(); bool addPlayer(int id, const QString &name, const QColor &primary, const QColor &secondary); const Player* getPlayer(int id) const; Player* getPlayer(int id); const std::vector& getPlayers() const { return m_players; } bool isCombinationUnique(const QColor &primary, const QColor &secondary, int excludeId = -1) const; private: std::vector m_players; }; #endif // PLAYER_H