]> git.sesse.net Git - pkanalytics/blob - players.h
Export formations to the JSON.
[pkanalytics] / players.h
1 #ifndef _PLAYERS_H
2 #define _PLAYERS_H 1
3
4 #include <sqlite3.h>
5 #include <QAbstractTableModel>
6 #include <string>
7 #include <vector>
8
9 class PlayersModel : public QAbstractTableModel
10 {
11 public:
12         PlayersModel(sqlite3 *db);
13
14         int rowCount(const QModelIndex &parent) const override
15         {
16                 return players.size();
17         }
18         int columnCount(const QModelIndex &column) const override
19         {
20                 return 3;
21         }
22         QVariant headerData(int section, Qt::Orientation orientation, int role) const override;
23         QVariant data(const QModelIndex &index, int role) const override;
24
25         int get_player_id(unsigned row) const {
26                 return players[row].player_id;
27         }
28         std::string get_player_name_by_id(unsigned player_id);
29
30 private:
31         struct Player {
32                 int player_id;
33                 std::string number;
34                 std::string name;
35                 std::string gender;
36         };
37         std::vector<Player> players;
38
39         sqlite3 *db;
40
41         void load_data();
42 };
43
44 #endif  // !defined(_PLAYERS_H)