Torch
Loading...
Searching...
No Matches
MessageLookupFactory.h
1
#pragma once
2
3
#include <factories/BaseFactory.h>
4
5
namespace
SF64 {
6
7
struct
MessageEntry
{
8
int32_t id;
9
uint32_t ptr;
10
};
11
12
class
MessageTable :
public
IParsedData
{
13
public
:
14
std::vector<MessageEntry> mTable;
15
16
MessageTable(
const
std::vector<MessageEntry>&table) : mTable(table) {}
17
};
18
19
class
MessageLookupCodeExporter
:
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
MessageLookupHeaderExporter
:
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
MessageLookupBinaryExporter
:
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
MessageLookupXMLExporter
:
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
MessageLookupFactory
:
public
BaseFactory
{
36
public
:
37
std::optional<std::shared_ptr<IParsedData>> parse(std::vector<uint8_t>& buffer, YAML::Node& data)
override
;
38
inline
std::unordered_map<ExportType, std::shared_ptr<BaseExporter>> GetExporters()
override
{
39
return
{
40
REGISTER(XML,
MessageLookupXMLExporter
)
41
REGISTER(Code,
MessageLookupCodeExporter
)
42
REGISTER(Header,
MessageLookupHeaderExporter
)
43
REGISTER(Binary,
MessageLookupBinaryExporter
)
44
};
45
}
46
bool
HasModdedDependencies()
override
{
return
true
; }
47
};
48
}
BaseExporter
Definition
BaseFactory.h:88
BaseFactory
Definition
BaseFactory.h:94
IParsedData
Definition
BaseFactory.h:80
SF64::MessageLookupBinaryExporter
Definition
MessageLookupFactory.h:27
SF64::MessageLookupCodeExporter
Definition
MessageLookupFactory.h:19
SF64::MessageLookupFactory
Definition
MessageLookupFactory.h:35
SF64::MessageLookupHeaderExporter
Definition
MessageLookupFactory.h:23
SF64::MessageLookupXMLExporter
Definition
MessageLookupFactory.h:31
SF64::MessageEntry
Definition
MessageLookupFactory.h:7
src
factories
sf64
MessageLookupFactory.h
Generated by
1.14.0