Mercurial > minori
annotate include/core/anime_db.h @ 175:9b10175be389
dep/json: update to v3.11.3
anime/db: save anime list to database, very much untested and likely won't work as intended
| author | Paper <mrpapersonic@gmail.com> |
|---|---|
| date | Thu, 30 Nov 2023 13:52:26 -0500 |
| parents | f88eda79c60a |
| children | 122fad646f81 |
| rev | line source |
|---|---|
| 10 | 1 #ifndef __core__anime_db_h |
| 2 #define __core__anime_db_h | |
| 85 | 3 |
| 10 | 4 #include "core/anime.h" |
| 175 | 5 #include "json/json_fwd.hpp" |
| 76 | 6 #include <string> |
| 10 | 7 #include <unordered_map> |
| 8 | |
| 9 namespace Anime { | |
| 10 | |
| 11 class Database { | |
| 12 public: | |
| 13 std::unordered_map<int, Anime> items; | |
| 14 int GetTotalAnimeAmount(); | |
| 15 int GetTotalEpisodeAmount(); | |
| 16 int GetTotalWatchedAmount(); | |
| 17 int GetTotalPlannedAmount(); | |
| 18 double GetAverageScore(); | |
| 19 double GetScoreDeviation(); | |
| 20 int GetListsAnimeAmount(ListStatus status); | |
| 83 | 21 int GetAnimeFromTitle(const std::string& title); |
|
173
de0a8d2f28b3
WILL NOT COMPILE: sample export ability for anime db
Paper <mrpapersonic@gmail.com>
parents:
85
diff
changeset
|
22 |
|
de0a8d2f28b3
WILL NOT COMPILE: sample export ability for anime db
Paper <mrpapersonic@gmail.com>
parents:
85
diff
changeset
|
23 bool GetDatabaseAsJSON(nlohmann::json& json); |
|
174
f88eda79c60a
anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents:
173
diff
changeset
|
24 bool SaveDatabaseToDisk(); |
|
f88eda79c60a
anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents:
173
diff
changeset
|
25 |
|
f88eda79c60a
anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents:
173
diff
changeset
|
26 bool ParseDatabaseJSON(const nlohmann::json& json); |
|
f88eda79c60a
anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents:
173
diff
changeset
|
27 bool LoadDatabaseFromFile(); |
|
f88eda79c60a
anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents:
173
diff
changeset
|
28 |
|
f88eda79c60a
anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents:
173
diff
changeset
|
29 protected: |
|
f88eda79c60a
anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents:
173
diff
changeset
|
30 bool ParseAnimeInfoJSON(const nlohmann::json& json); |
| 10 | 31 }; |
| 32 | |
| 11 | 33 extern Database db; |
| 10 | 34 |
| 35 } // namespace Anime | |
| 85 | 36 |
| 37 | |
| 10 | 38 #endif // __core__anime_db_h |
