Atlas Game Manager
A game manager for f95 and dlsite written in c++
Loading...
Searching...
No Matches
AtlasData.hpp
Go to the documentation of this file.
1//
2// Created by kj16609 on 7/28/23.
3//
4
5#ifndef ATLASGAMEMANAGER_ATLASDATA_HPP
6#define ATLASGAMEMANAGER_ATLASDATA_HPP
7
8#include <QString>
9
10#include <memory>
11
12#include "core/Types.hpp"
13
14namespace atlas::remote
15{
16 namespace internal
17 {
18 struct AtlasData
19 {
21 QString id_name {};
22 QString short_name {};
23 QString title {};
24 QString original_name {};
25 QString category {};
26 QString engine {};
27 QString status {};
28 QString version {};
29 QString developer {};
30 QString creator {};
31 QString overview {};
32 QString censored {};
33 QString language {};
34 QString translations {};
35 QString genre {};
36 std::vector< QString > tags {};
37 QString voice {};
38 QString os {};
39 std::uint64_t release_date { 0 };
40 QString length {};
41 QString banner {};
42 QString banner_wide {};
43 QString cover {};
44 QString logo {};
45 QString wallpaper {};
46 std::vector< QString > previews {};
48 std::uint64_t last_db_update { 0 };
49
50 AtlasData( const AtlasID id );
51 };
52
53 } // namespace internal
54
55 [[nodiscard]] AtlasID atlasIDFromF95Thread( const F95ID thread_id );
56
58 {
59 std::shared_ptr< internal::AtlasData > data_ptr;
60
61 public:
62
64
65 const internal::AtlasData* operator->() const { return data_ptr.get(); }
66 };
67
68 std::optional< atlas::remote::AtlasRemoteData > findAtlasData( QString title, QString developer );
69} // namespace atlas::remote
70
71#endif //ATLASGAMEMANAGER_ATLASDATA_HPP
std::uint64_t F95ID
Definition Types.hpp:13
std::uint64_t AtlasID
Definition Types.hpp:12
constexpr AtlasID INVALID_ATLAS_ID
Definition Types.hpp:14
AtlasRemoteData(AtlasID id)
Definition AtlasData.cpp:116
std::shared_ptr< internal::AtlasData > data_ptr
Definition AtlasData.hpp:59
const internal::AtlasData * operator->() const
Definition AtlasData.hpp:65
Definition AtlasData.cpp:12
Definition Game.hpp:20
std::optional< atlas::remote::AtlasRemoteData > findAtlasData(QString title, QString creator)
Definition AtlasData.cpp:127
AtlasID atlasIDFromF95Thread(const F95ID thread_id)
Definition AtlasData.cpp:119
Definition AtlasData.hpp:19
QString cover
Definition AtlasData.hpp:43
QString creator
Definition AtlasData.hpp:30
std::vector< QString > previews
Definition AtlasData.hpp:46
QString category
Definition AtlasData.hpp:25
QString title
Definition AtlasData.hpp:23
std::uint64_t last_db_update
Time of the last remote update (Not the time we've synced)
Definition AtlasData.hpp:48
QString wallpaper
Definition AtlasData.hpp:45
QString genre
Definition AtlasData.hpp:35
QString translations
Definition AtlasData.hpp:34
AtlasID atlas_id
Definition AtlasData.hpp:20
QString short_name
Definition AtlasData.hpp:22
AtlasData(const AtlasID id)
Definition AtlasData.cpp:16
QString id_name
Definition AtlasData.hpp:21
QString engine
Definition AtlasData.hpp:26
QString banner
Definition AtlasData.hpp:41
std::uint64_t release_date
Definition AtlasData.hpp:39
QString language
Definition AtlasData.hpp:33
QString os
Definition AtlasData.hpp:38
QString overview
Definition AtlasData.hpp:31
QString original_name
Definition AtlasData.hpp:24
QString voice
Definition AtlasData.hpp:37
QString length
Definition AtlasData.hpp:40
QString status
Definition AtlasData.hpp:27
QString logo
Definition AtlasData.hpp:44
QString developer
Definition AtlasData.hpp:29
QString version
Definition AtlasData.hpp:28
QString banner_wide
Definition AtlasData.hpp:42
std::vector< QString > tags
Definition AtlasData.hpp:36
QString censored
Definition AtlasData.hpp:32