author | unc0rr |
Sat, 24 Nov 2018 23:51:45 +0100 | |
changeset 14290 | 92e5682810d4 |
parent 14271 | 1aac8a62be6f |
child 14294 | 21be7838a127 |
permissions | -rw-r--r-- |
14154
8354b390f1a2
Some refactoring of qmlfrontend. It now shows land preview generated by hedgewars-engine
unC0Rr
parents:
diff
changeset
|
1 |
#include "engine_instance.h" |
8354b390f1a2
Some refactoring of qmlfrontend. It now shows land preview generated by hedgewars-engine
unC0Rr
parents:
diff
changeset
|
2 |
|
14290
92e5682810d4
Prepare to have possibility to pass opengl context to engine
unc0rr
parents:
14271
diff
changeset
|
3 |
EngineInstance::EngineInstance(QObject* parent) |
14154
8354b390f1a2
Some refactoring of qmlfrontend. It now shows land preview generated by hedgewars-engine
unC0Rr
parents:
diff
changeset
|
4 |
: QObject(parent), m_instance(Engine::start_engine()) {} |
8354b390f1a2
Some refactoring of qmlfrontend. It now shows land preview generated by hedgewars-engine
unC0Rr
parents:
diff
changeset
|
5 |
|
8354b390f1a2
Some refactoring of qmlfrontend. It now shows land preview generated by hedgewars-engine
unC0Rr
parents:
diff
changeset
|
6 |
EngineInstance::~EngineInstance() { Engine::cleanup(m_instance); } |
8354b390f1a2
Some refactoring of qmlfrontend. It now shows land preview generated by hedgewars-engine
unC0Rr
parents:
diff
changeset
|
7 |
|
14290
92e5682810d4
Prepare to have possibility to pass opengl context to engine
unc0rr
parents:
14271
diff
changeset
|
8 |
void EngineInstance::sendConfig(const GameConfig& config) { |
14271
1aac8a62be6f
Implement send_ipc and read_ipc in engine lib, send_ipc in frontend
unC0Rr
parents:
14154
diff
changeset
|
9 |
for (auto b : config.config()) { |
14290
92e5682810d4
Prepare to have possibility to pass opengl context to engine
unc0rr
parents:
14271
diff
changeset
|
10 |
Engine::send_ipc(m_instance, reinterpret_cast<uint8_t*>(b.data()), |
14271
1aac8a62be6f
Implement send_ipc and read_ipc in engine lib, send_ipc in frontend
unC0Rr
parents:
14154
diff
changeset
|
11 |
static_cast<size_t>(b.size())); |
1aac8a62be6f
Implement send_ipc and read_ipc in engine lib, send_ipc in frontend
unC0Rr
parents:
14154
diff
changeset
|
12 |
} |
1aac8a62be6f
Implement send_ipc and read_ipc in engine lib, send_ipc in frontend
unC0Rr
parents:
14154
diff
changeset
|
13 |
} |
1aac8a62be6f
Implement send_ipc and read_ipc in engine lib, send_ipc in frontend
unC0Rr
parents:
14154
diff
changeset
|
14 |
|
14290
92e5682810d4
Prepare to have possibility to pass opengl context to engine
unc0rr
parents:
14271
diff
changeset
|
15 |
void EngineInstance::advance(quint32 ticks) {} |
92e5682810d4
Prepare to have possibility to pass opengl context to engine
unc0rr
parents:
14271
diff
changeset
|
16 |
|
92e5682810d4
Prepare to have possibility to pass opengl context to engine
unc0rr
parents:
14271
diff
changeset
|
17 |
void EngineInstance::renderFrame() {} |
92e5682810d4
Prepare to have possibility to pass opengl context to engine
unc0rr
parents:
14271
diff
changeset
|
18 |
|
92e5682810d4
Prepare to have possibility to pass opengl context to engine
unc0rr
parents:
14271
diff
changeset
|
19 |
void EngineInstance::setOpenGLContext(QOpenGLContext* context) {} |
92e5682810d4
Prepare to have possibility to pass opengl context to engine
unc0rr
parents:
14271
diff
changeset
|
20 |
|
14154
8354b390f1a2
Some refactoring of qmlfrontend. It now shows land preview generated by hedgewars-engine
unC0Rr
parents:
diff
changeset
|
21 |
Engine::PreviewInfo EngineInstance::generatePreview() { |
8354b390f1a2
Some refactoring of qmlfrontend. It now shows land preview generated by hedgewars-engine
unC0Rr
parents:
diff
changeset
|
22 |
Engine::PreviewInfo pinfo; |
8354b390f1a2
Some refactoring of qmlfrontend. It now shows land preview generated by hedgewars-engine
unC0Rr
parents:
diff
changeset
|
23 |
|
8354b390f1a2
Some refactoring of qmlfrontend. It now shows land preview generated by hedgewars-engine
unC0Rr
parents:
diff
changeset
|
24 |
Engine::generate_preview(m_instance, &pinfo); |
8354b390f1a2
Some refactoring of qmlfrontend. It now shows land preview generated by hedgewars-engine
unC0Rr
parents:
diff
changeset
|
25 |
|
8354b390f1a2
Some refactoring of qmlfrontend. It now shows land preview generated by hedgewars-engine
unC0Rr
parents:
diff
changeset
|
26 |
return pinfo; |
8354b390f1a2
Some refactoring of qmlfrontend. It now shows land preview generated by hedgewars-engine
unC0Rr
parents:
diff
changeset
|
27 |
} |