blob: 560eedac79580d418599e1ec3570880f9e62ec2e (
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
|
#ifndef DATABASE_H_75C3CE0F
#define DATABASE_H_75C3CE0F
#include <string>
struct sqlite3;
struct achievement {
int achievementId;
int gameId;
std::string title;
std::string moonImage;
};
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;
private:
database() = default;
sqlite3* ppdb_ = nullptr;
};
#endif /* end of include guard: DATABASE_H_75C3CE0F */
|