Pokered Save Editor 2
Pokemon Red & Blue save file editor - Qt 6 C++/QML
Toggle main menu visibility
Loading...
Searching...
No Matches
gamedata.h
Go to the documentation of this file.
1
/*
2
* Copyright 2019 Twilight
3
*
4
* Licensed under the Apache License, Version 2.0 (the "License");
5
* you may not use this file except in compliance with the License.
6
* You may obtain a copy of the License at
7
*
8
* http://www.apache.org/licenses/LICENSE-2.0
9
*
10
* Unless required by applicable law or agreed to in writing, software
11
* distributed under the License is distributed on an "AS IS" BASIS,
12
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
* See the License for the specific language governing permissions and
14
* limitations under the License.
15
*/
16
#pragma once
17
#include <QObject>
18
#include <QJsonDocument>
19
#include <QByteArray>
20
21
#include "
../db_autoport.h
"
22
23
class
QQmlEngine;
24
25
// This helps with getting game data from the JSON files
26
35
class
DB_AUTOPORT
GameData :
public
QObject
36
{
37
Q_OBJECT
38
39
public
:
40
// Get Instance
41
static
GameData*
inst
();
42
43
// Retrieves JSON document from disk
44
// Passed by value because of Qt's COW principle ensures no speed loss
45
// Give the name of the file in /assets/data without the .json file extension
46
const
QByteArray
jsonRaw
(
const
QString filename)
const
;
47
const
QJsonDocument
json
(
const
QString filename)
const
;
48
Q_INVOKABLE
const
QString
jsonStr
(
const
QString filename)
const
;
49
50
public
slots:
51
void
qmlProtect
(
const
QQmlEngine*
const
engine)
const
;
52
53
private
:
54
GameData();
55
56
void
qmlRegister()
const
;
57
};
GameData::json
const QJsonDocument json(const QString filename) const
Parsed document for filename.
Definition
gamedata.cpp:45
GameData::inst
static GameData * inst()
The process-wide GameData singleton.
Definition
gamedata.cpp:71
GameData::qmlProtect
void qmlProtect(const QQmlEngine *const engine) const
Pin to C++ ownership.
Definition
gamedata.cpp:56
GameData::jsonStr
const QString jsonStr(const QString filename) const
filename as a string (for QML).
Definition
gamedata.cpp:51
GameData::jsonRaw
const QByteArray jsonRaw(const QString filename) const
Raw bytes of filename (no .json extension).
Definition
gamedata.cpp:29
db_autoport.h
Import/export macro for the db library, plus the central list of DB entry pointer types declared opaq...
DB_AUTOPORT
#define DB_AUTOPORT
Expands to the correct dllexport/dllimport decoration for this library.
Definition
db_autoport.h:37
projects
db
src
pse-db
util
gamedata.h
Generated by
1.17.0