Mercurial > minori
comparison include/core/anime_db.h @ 202:71832ffe425a
animia: re-add kvm fd source
this is all being merged from my wildly out-of-date laptop. SORRY!
in other news, I edited the CI file to install the wayland client
as well, so the linux CI build might finally get wayland stuff.
| author | Paper <paper@paper.us.eu.org> |
|---|---|
| date | Tue, 02 Jan 2024 06:05:06 -0500 |
| parents | 122fad646f81 |
| children | 862d0d8619f6 |
comparison
equal
deleted
inserted
replaced
| 201:8f6f8dd2eb23 | 202:71832ffe425a |
|---|---|
| 1 #ifndef __core__anime_db_h | 1 #ifndef __core__anime_db_h |
| 2 #define __core__anime_db_h | 2 #define __core__anime_db_h |
| 3 | 3 |
| 4 #include "core/anime.h" | 4 #include "core/anime.h" |
| 5 #include "json/json_fwd.hpp" | |
| 5 #include <string> | 6 #include <string> |
| 6 #include <unordered_map> | 7 #include <unordered_map> |
| 7 | 8 |
| 8 namespace Anime { | 9 namespace Anime { |
| 9 | 10 |
| 10 class Database { | 11 class Database { |
| 11 public: | 12 public: |
| 12 std::unordered_map<int, Anime> items; | 13 std::unordered_map<int, Anime> items; |
| 13 int GetTotalAnimeAmount(); | 14 size_t GetTotalAnimeAmount(); |
| 14 int GetTotalEpisodeAmount(); | 15 size_t GetTotalEpisodeAmount(); |
| 15 int GetTotalWatchedAmount(); | 16 size_t GetTotalWatchedAmount(); |
| 16 int GetTotalPlannedAmount(); | 17 size_t GetTotalPlannedAmount(); |
| 17 double GetAverageScore(); | 18 double GetAverageScore(); |
| 18 double GetScoreDeviation(); | 19 double GetScoreDeviation(); |
| 19 int GetListsAnimeAmount(ListStatus status); | 20 size_t GetListsAnimeAmount(ListStatus status); |
| 20 int GetAnimeFromTitle(const std::string& title); | 21 int GetAnimeFromTitle(const std::string& title); |
| 22 | |
| 23 bool GetDatabaseAsJSON(nlohmann::json& json); | |
| 24 bool SaveDatabaseToDisk(); | |
| 25 | |
| 26 bool ParseDatabaseJSON(const nlohmann::json& json); | |
| 27 bool LoadDatabaseFromDisk(); | |
| 21 }; | 28 }; |
| 22 | 29 |
| 23 extern Database db; | 30 extern Database db; |
| 24 | 31 |
| 25 } // namespace Anime | 32 } // namespace Anime |
