LkEngine
0.1.2
Loading...
Searching...
No Matches
ApplicationSerializer.h
Go to the documentation of this file.
1
5
#pragma once
6
7
#include "
LkEngine/Core/LObject/Object.h
"
8
#include "LkEngine/Core/LObject/ObjectPtr.h"
9
#include "LkEngine/Core/ApplicationConfig.h"
10
11
#include "LkEngine/Serialization/FileStream.h"
12
#include "LkEngine/Serialization/Serializer.h"
13
14
namespace
LkEngine
{
15
16
class
LApplication;
17
21
class
LApplicationSerializer
22
{
23
public
:
24
LApplicationSerializer
(
LApplication
* InApplication);
25
LApplicationSerializer
(
LApplication
* InApplication,
const
std::filesystem::path& InConfigFile);
26
LApplicationSerializer
() =
delete
;
27
~LApplicationSerializer
() =
default
;
28
29
void
Serialize(
const
std::filesystem::path& InConfigFile);
30
bool
Deserialize(
const
std::filesystem::path& InConfigFile,
FApplicationSpecification
& Spec);
31
32
private
:
33
void
SerializeToYaml(YAML::Emitter& Out);
34
bool
DeserializeFromYaml(
const
std::string& YamlString,
FApplicationSpecification
& Spec);
35
36
private
:
37
std::filesystem::path ConfigFile{};
38
39
LApplication
* Application{};
40
};
41
42
}
Object.h
LObject implementation.
LkEngine::LApplicationSerializer
Definition
ApplicationSerializer.h:22
LkEngine::LApplication
Definition
Application.h:77
LkEngine
Definition
Asset.h:11
LkEngine::FApplicationSpecification
Definition
ApplicationConfig.h:10
LkEngine
Source
LkEngine
Core
ApplicationSerializer.h
Generated by
1.12.0