Torch
Loading...
Searching...
No Matches
MessageFactory.h
1
#pragma once
2
3
#include <factories/BaseFactory.h>
4
5
namespace
SF64 {
6
7
class
MessageData :
public
IParsedData
{
8
public
:
9
std::vector<uint16_t> mMessage;
10
std::string mMesgStr;
11
12
MessageData(std::vector<uint16_t> message, std::string mesgStr) : mMessage(message), mMesgStr(mesgStr) {}
13
};
14
15
class
MessageCodeExporter
:
public
BaseExporter
{
16
ExportResult Export(std::ostream& write, std::shared_ptr<IParsedData> data, std::string& entryName, YAML::Node& node, std::string* replacement)
override
;
17
};
18
19
class
MessageHeaderExporter
:
public
BaseExporter
{
20
ExportResult Export(std::ostream& write, std::shared_ptr<IParsedData> data, std::string& entryName, YAML::Node& node, std::string* replacement)
override
;
21
};
22
23
class
MessageBinaryExporter
:
public
BaseExporter
{
24
ExportResult Export(std::ostream& write, std::shared_ptr<IParsedData> data, std::string& entryName, YAML::Node& node, std::string* replacement)
override
;
25
};
26
27
class
MessageModdingExporter
:
public
BaseExporter
{
28
ExportResult Export(std::ostream& write, std::shared_ptr<IParsedData> data, std::string& entryName, YAML::Node& node, std::string* replacement)
override
;
29
};
30
31
class
MessageXMLExporter
:
public
BaseExporter
{
32
ExportResult Export(std::ostream& write, std::shared_ptr<IParsedData> data, std::string& entryName, YAML::Node& node, std::string* replacement)
override
;
33
};
34
35
class
MessageFactory
:
public
BaseFactory
{
36
public
:
37
std::optional<std::shared_ptr<IParsedData>> parse(std::vector<uint8_t>& buffer, YAML::Node& data)
override
;
38
std::optional<std::shared_ptr<IParsedData>> parse_modding(std::vector<uint8_t>& buffer, YAML::Node& data)
override
;
39
inline
std::unordered_map<ExportType, std::shared_ptr<BaseExporter>> GetExporters()
override
{
40
return
{
41
REGISTER(XML,
MessageXMLExporter
)
42
REGISTER(Code,
MessageCodeExporter
)
43
REGISTER(Header,
MessageHeaderExporter
)
44
REGISTER(Binary,
MessageBinaryExporter
)
45
REGISTER(Modding,
MessageModdingExporter
)
46
};
47
}
48
bool
SupportModdedAssets()
override
{
return
true
; }
49
};
50
}
BaseExporter
Definition
BaseFactory.h:88
BaseFactory
Definition
BaseFactory.h:94
IParsedData
Definition
BaseFactory.h:80
SF64::MessageBinaryExporter
Definition
MessageFactory.h:23
SF64::MessageCodeExporter
Definition
MessageFactory.h:15
SF64::MessageFactory
Definition
MessageFactory.h:35
SF64::MessageHeaderExporter
Definition
MessageFactory.h:19
SF64::MessageModdingExporter
Definition
MessageFactory.h:27
SF64::MessageXMLExporter
Definition
MessageFactory.h:31
src
factories
sf64
MessageFactory.h
Generated by
1.14.0