blob: 9dcb118957d380cc65b8c22c6ce77a61425760d3 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
|
#ifndef DATABASE_H_75C3CE0F
#define DATABASE_H_75C3CE0F
#include <string>
struct sqlite3;
struct achievement {
int achievementId;
int gameId;
std::string title;
std::string color;
};
struct did {
int profileId;
std::string date;
};
class database {
public:
// Constructor
explicit database(std::string path);
// Disable copying
database(const database& other) = delete;
database& operator=(const database& other) = delete;
// Move constructor and move assignment
database(database&& other);
database& operator=(database&& other);
// Swap
friend void swap(database& first, database& second);
// Destructor
~database();
// Accessors
achievement getRandomAchievement() const;
std::string getRandomImageForGame(int gameId) const;
did getRandomDidForAchievement(int achievementId) const;
private:
database() = default;
sqlite3* ppdb_ = nullptr;
};
#endif /* end of include guard: DATABASE_H_75C3CE0F */
|