3#include <factories/BaseFactory.h>
7typedef std::variant<uint8_t, int8_t, uint16_t, int16_t, uint32_t, int32_t, float> GeoLayoutArg;
9enum class GeoLayoutArgType { U8, S8, U16, S16, U32, S32, FLOAT };
11enum class GeoLayoutOpCode {
28class GeoLayoutCommand {
30 GeoLayoutOpCode opCode;
32 std::vector<GeoLayoutArg> args;
33 uint32_t originalOffset;
35 GeoLayoutCommand(GeoLayoutOpCode opCode, uint32_t cmdLength, std::vector<GeoLayoutArg> args,
36 uint32_t originalOffset = 0)
37 : opCode(opCode), cmdLength(cmdLength), args(std::move(args)), originalOffset(originalOffset) {
43 std::vector<GeoLayoutCommand> mCmds;
45 GeoLayoutData(std::vector<GeoLayoutCommand> cmds) : mCmds(std::move(cmds)) {
50 ExportResult Export(std::ostream& write, std::shared_ptr<IParsedData> data, std::string& entryName,
51 YAML::Node& node, std::string* replacement)
override;
55 ExportResult Export(std::ostream& write, std::shared_ptr<IParsedData> data, std::string& entryName,
56 YAML::Node& node, std::string* replacement)
override;
60 ExportResult Export(std::ostream& write, std::shared_ptr<IParsedData> data, std::string& entryName,
61 YAML::Node& node, std::string* replacement)
override;
65 ExportResult Export(std::ostream& write, std::shared_ptr<IParsedData> data, std::string& entryName,
66 YAML::Node& node, std::string* replacement)
override;
71 std::optional<std::shared_ptr<IParsedData>> parse(std::vector<uint8_t>& buffer, YAML::Node& data)
override;
74 inline std::unordered_map<ExportType, std::shared_ptr<BaseExporter>> GetExporters()
override {
78 bool SupportModdedAssets()
override {
Definition GeoLayoutFactory.h:54
Definition GeoLayoutFactory.h:59
Definition GeoLayoutFactory.h:69
Definition GeoLayoutFactory.h:64
Definition BaseFactory.h:96
Definition BaseFactory.h:102
Definition BaseFactory.h:88