98 virtual ExportResult Export(std::ostream& write, std::shared_ptr<IParsedData> data, std::string& entryName, YAML::Node& node, std::string* replacement) = 0;
99 static void WriteHeader(LUS::BinaryWriter& write, Torch::ResourceType resType, int32_t version);
104 virtual std::optional<std::shared_ptr<IParsedData>> parse(std::vector<uint8_t>& buffer, YAML::Node& data) = 0;
105 virtual std::optional<std::shared_ptr<IParsedData>> parse_modding(std::vector<uint8_t>& buffer, YAML::Node& data) {
108 std::optional<std::shared_ptr<BaseExporter>> GetExporter(ExportType type) {
109 auto exporters = this->GetExporters();
110 if (exporters.find(type) != exporters.end()) {
111 return exporters[type];
115 virtual bool SupportModdedAssets() {
118 virtual bool HasModdedDependencies() {
121 virtual uint32_t GetAlignment() {
124 virtual bool IsDialogPackRoot()
const {
127 virtual void PreprocessConfig(YAML::Node& cfg,
N64::Cartridge* cart) {}
128 virtual std::optional<std::shared_ptr<IParsedData>> CreateDataPointer() {
134 virtual bool CanPreviewCode() {
138 virtual std::unordered_map<ExportType, std::shared_ptr<BaseExporter>> GetExporters() {
Definition BaseFactory.h:40