From e7dff03f31be944630dda6f0a377e2546cc50e6a Mon Sep 17 00:00:00 2001 From: KiritoDv Date: Wed, 18 Feb 2026 04:42:36 +0000 Subject: =?UTF-8?q?Deploying=20to=20gh-pages=20from=20@=20HarbourMasters/T?= =?UTF-8?q?orch@8989568a03882f81e030b68a854d7cc6acbe74fa=20=F0=9F=9A=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Companion_8h_source.html | 521 ++++++++++++++++++++++---------------------- classCompanion-members.html | 36 +-- classCompanion.html | 8 +- 3 files changed, 288 insertions(+), 277 deletions(-) diff --git a/Companion_8h_source.html b/Companion_8h_source.html index 4c5bd29..f73f598 100644 --- a/Companion_8h_source.html +++ b/Companion_8h_source.html @@ -97,277 +97,282 @@ $(function(){initNavTree('Companion_8h_source.html','',''); });
4#include <optional>
5#include <filesystem>
6#include <vector>
-
7#include <fstream>
-
8#include <unordered_map>
-
9#include <unordered_set>
-
10#include <variant>
-
11#include "factories/BaseFactory.h"
-
12#include "n64/Cartridge.h"
-
13#include "utils/Decompressor.h"
-
14#include "factories/TextureFactory.h"
-
15
-
16class BinaryWrapper;
-
17namespace fs = std::filesystem;
-
18
-
19enum class ParseMode {
-
20 Default,
-
21 Directory
-
22};
-
23
-
24enum class GBIVersion {
-
25 f3db,
-
26 f3d,
-
27 f3dex,
-
28 f3dexb,
-
29 f3dex2,
-
30};
-
31
-
32enum class GBIMinorVersion {
-
33 None,
-
34 Mk64,
-
35 SM64
-
36};
-
37
-
38enum class TableMode {
-
39 Reference,
-
40 Append
-
41};
-
42
-
43enum class ArchiveType {
-
44 None,
-
45 OTR,
-
46 O2R,
-
47};
-
48
-
- -
50 std::unordered_map<uint32_t, uint32_t> global;
-
51 std::unordered_map<uint32_t, uint32_t> local;
-
52 std::unordered_map<uint32_t, uint32_t> temporal;
-
53};
+
7#include <atomic>
+
8#include <fstream>
+
9#include <unordered_map>
+
10#include <unordered_set>
+
11#include <variant>
+
12#include "factories/BaseFactory.h"
+
13#include "n64/Cartridge.h"
+
14#include "utils/Decompressor.h"
+
15#include "factories/TextureFactory.h"
+
16
+
17class BinaryWrapper;
+
18namespace fs = std::filesystem;
+
19
+
20enum class ParseMode {
+
21 Default,
+
22 Directory
+
23};
+
24
+
25enum class GBIVersion {
+
26 f3db,
+
27 f3d,
+
28 f3dex,
+
29 f3dexb,
+
30 f3dex2,
+
31};
+
32
+
33enum class GBIMinorVersion {
+
34 None,
+
35 Mk64,
+
36 SM64
+
37};
+
38
+
39enum class TableMode {
+
40 Reference,
+
41 Append
+
42};
+
43
+
44enum class ArchiveType {
+
45 None,
+
46 OTR,
+
47 O2R,
+
48};
+
49
+
+ +
51 std::unordered_map<uint32_t, uint32_t> global;
+
52 std::unordered_map<uint32_t, uint32_t> local;
+
53 std::unordered_map<uint32_t, uint32_t> temporal;
+
54};
-
54
-
-
55struct Table {
-
56 std::string name;
-
57 uint32_t start;
-
58 uint32_t end;
-
59 TableMode mode;
-
60 int32_t index_size;
-
61};
+
55
+
+
56struct Table {
+
57 std::string name;
+
58 uint32_t start;
+
59 uint32_t end;
+
60 TableMode mode;
+
61 int32_t index_size;
+
62};
-
62
-
-
63struct VRAMEntry {
-
64 uint32_t addr;
-
65 uint32_t offset;
-
66};
+
63
+
+
64struct VRAMEntry {
+
65 uint32_t addr;
+
66 uint32_t offset;
+
67};
-
67
-
-
68struct WriteEntry {
-
69 std::string name;
-
70 uint32_t addr;
-
71 uint32_t alignment;
-
72 std::string buffer;
-
73 std::optional<std::string> comment;
-
74 std::optional<uint32_t> endptr;
-
75};
+
68
+
+
69struct WriteEntry {
+
70 std::string name;
+
71 uint32_t addr;
+
72 uint32_t alignment;
+
73 std::string buffer;
+
74 std::optional<std::string> comment;
+
75 std::optional<uint32_t> endptr;
+
76};
-
76
-
-
77struct GBIConfig {
-
78 GBIVersion version = GBIVersion::f3d;
-
79 GBIMinorVersion subversion = GBIMinorVersion::None;
-
80 bool useFloats = false;
-
81};
+
77
+
+
78struct GBIConfig {
+
79 GBIVersion version = GBIVersion::f3d;
+
80 GBIMinorVersion subversion = GBIMinorVersion::None;
+
81 bool useFloats = false;
+
82};
-
82
-
- -
84 GBIConfig gbi;
-
85 SegmentConfig segment;
-
86 std::string outputPath;
-
87 std::string moddingPath;
-
88 ExportType exporterType;
-
89 ParseMode parseMode;
-
90 ArchiveType otrMode;
-
91 bool debug;
-
92 bool modding;
-
93 bool textureDefines;
-
94};
+
83
+
+ +
85 GBIConfig gbi;
+
86 SegmentConfig segment;
+
87 std::string outputPath;
+
88 std::string moddingPath;
+
89 ExportType exporterType;
+
90 ParseMode parseMode;
+
91 ArchiveType otrMode;
+
92 bool debug;
+
93 bool modding;
+
94 bool textureDefines;
+
95};
-
95
-
- -
97 std::string name;
-
98 std::string type;
-
99 YAML::Node node;
-
100 std::optional<std::shared_ptr<IParsedData>> data;
-
101
-
102 uint32_t GetOffset() {
-
103 return GetSafeNode<uint32_t>(node, "offset");
-
104 }
-
105
-
106 std::optional<std::string> GetSymbol() {
-
107 return GetSafeNode<std::string>(node, "symbol");
-
108 }
-
109};
+
96
+
+ +
98 std::string name;
+
99 std::string type;
+
100 YAML::Node node;
+
101 std::optional<std::shared_ptr<IParsedData>> data;
+
102
+
103 uint32_t GetOffset() {
+
104 return GetSafeNode<uint32_t>(node, "offset");
+
105 }
+
106
+
107 std::optional<std::string> GetSymbol() {
+
108 return GetSafeNode<std::string>(node, "symbol");
+
109 }
+
110};
-
110
-
-
111class Companion {
-
112public:
-
113 static Companion* Instance;
-
114
-
115 explicit Companion(std::filesystem::path rom, const ArchiveType otr, const bool debug, const bool modding = false,
-
116 const std::string& srcDir = "", const std::string& destPath = "") : gCartridge(nullptr),
-
117 gSourceDirectory(srcDir), gDestinationDirectory(destPath) {
-
118 this->gRomPath = rom;
-
119 this->gConfig.otrMode = otr;
-
120 this->gConfig.debug = debug;
-
121 this->gConfig.modding = modding;
-
122 this->gConfig.textureDefines = false;
-
123 }
-
124
-
125 explicit Companion(std::vector<uint8_t> rom, const ArchiveType otr, const bool debug, const bool modding = false,
-
126 const std::string& srcDir = "", const std::string& destPath = "") : gCartridge(nullptr),
-
127 gSourceDirectory(srcDir), gDestinationDirectory(destPath) {
-
128 this->gRomData = rom;
-
129 this->gConfig.otrMode = otr;
-
130 this->gConfig.debug = debug;
-
131 this->gConfig.modding = modding;
-
132 this->gConfig.textureDefines = false;
-
133 }
-
134
-
135 explicit Companion(std::filesystem::path rom, const ArchiveType otr, const bool debug, const std::string& srcDir = "", const std::string& destPath = "") :
-
136 Companion(rom, otr, debug, false, srcDir, destPath) {}
-
137
-
138 explicit Companion(std::vector<uint8_t> rom, const ArchiveType otr, const bool debug, const std::string& srcDir = "", const std::string& destPath = "") :
-
139 Companion(rom, otr, debug, false, srcDir, destPath) {}
-
140
-
141 void Init(ExportType type);
-
142
-
143 bool NodeHasChanges(const std::string& string);
+
111
+
+
112class Companion {
+
113public:
+
114 static Companion* Instance;
+
115
+
116 explicit Companion(std::filesystem::path rom, const ArchiveType otr, const bool debug, const bool modding = false,
+
117 const std::string& srcDir = "", const std::string& destPath = "") : gCartridge(nullptr),
+
118 gSourceDirectory(srcDir), gDestinationDirectory(destPath) {
+
119 this->gRomPath = rom;
+
120 this->gConfig.otrMode = otr;
+
121 this->gConfig.debug = debug;
+
122 this->gConfig.modding = modding;
+
123 this->gConfig.textureDefines = false;
+
124 }
+
125
+
126 explicit Companion(std::vector<uint8_t> rom, const ArchiveType otr, const bool debug, const bool modding = false,
+
127 const std::string& srcDir = "", const std::string& destPath = "") : gCartridge(nullptr),
+
128 gSourceDirectory(srcDir), gDestinationDirectory(destPath) {
+
129 this->gRomData = rom;
+
130 this->gConfig.otrMode = otr;
+
131 this->gConfig.debug = debug;
+
132 this->gConfig.modding = modding;
+
133 this->gConfig.textureDefines = false;
+
134 }
+
135
+
136 explicit Companion(std::filesystem::path rom, const ArchiveType otr, const bool debug, const std::string& srcDir = "", const std::string& destPath = "") :
+
137 Companion(rom, otr, debug, false, srcDir, destPath) {}
+
138
+
139 explicit Companion(std::vector<uint8_t> rom, const ArchiveType otr, const bool debug, const std::string& srcDir = "", const std::string& destPath = "") :
+
140 Companion(rom, otr, debug, false, srcDir, destPath) {}
+
141
+
142 void Init(ExportType type);
+
143 void Init(ExportType type, std::atomic_ref<size_t> assetCount);
144
-
145 void Process();
+
145 bool NodeHasChanges(const std::string& string);
146
-
147 bool IsOTRMode() const { return (this->gConfig.otrMode != ArchiveType::None); }
-
148 bool IsDebug() const { return this->gConfig.debug; }
-
149 bool AddTextureDefines() const { return this->gConfig.textureDefines; }
-
150
-
151 N64::Cartridge* GetCartridge() const { return this->gCartridge.get(); }
-
152 std::vector<uint8_t>& GetRomData() { return this->gRomData; }
-
153 std::string GetOutputPath() { return this->gConfig.outputPath; }
-
154 std::string GetDestRelativeOutputPath() { return RelativePathToDestDir(GetOutputPath()); }
-
155
-
156 GBIVersion GetGBIVersion() const { return this->gConfig.gbi.version; }
-
157 GBIMinorVersion GetGBIMinorVersion() const { return this->gConfig.gbi.subversion; }
-
158 std::unordered_map<std::string, std::vector<YAML::Node>> GetCourseMetadata() { return this->gCourseMetadata; }
-
159 std::optional<std::string> GetEnumFromValue(const std::string& key, int id);
-
160 bool IsUsingIndividualIncludes() const { return this->gIndividualIncludes; }
-
161
-
162 std::optional<ParseResultData> GetParseDataByAddr(uint32_t addr);
-
163 std::optional<ParseResultData> GetParseDataBySymbol(const std::string& symbol);
-
164
-
165 std::optional<std::uint32_t> GetFileOffsetFromSegmentedAddr(uint8_t segment) const;
-
166 std::optional<std::shared_ptr<BaseFactory>> GetFactory(const std::string& type);
-
167 uint32_t PatchVirtualAddr(uint32_t addr);
-
168 std::optional<std::tuple<std::string, YAML::Node>> GetNodeByAddr(uint32_t addr);
-
169 std::optional<std::string> GetStringByAddr(uint32_t addr);
-
170 std::optional<std::tuple<std::string, YAML::Node>> GetSafeNodeByAddr(const uint32_t addr, std::string type);
-
171 std::optional<std::string> GetSafeStringByAddr(const uint32_t addr, std::string type);
-
172 std::optional<std::vector<std::tuple<std::string, YAML::Node>>> GetNodesByType(const std::string& type);
-
173 std::string GetSymbolFromAddr(uint32_t addr, bool validZero = false);
-
174
-
175 std::optional<std::uint32_t> GetFileOffset(void) const { return this->gCurrentFileOffset; };
-
176 std::optional<std::uint32_t> GetCurrSegmentNumber(void) const { return this->gCurrentSegmentNumber; };
-
177 CompressionType GetCurrCompressionType(void) const { return this->gCurrentCompressionType; };
-
178 std::optional<VRAMEntry> GetCurrentVRAM(void) const { return this->gCurrentVram; };
-
179 std::optional<Table> SearchTable(uint32_t addr);
-
180
-
181 static std::vector<char> ParseVersionString(const std::string& version);
-
182 static std::string CalculateHash(const std::vector<uint8_t>& data);
-
183 static void Pack(const std::string& folder, const std::string& output, const ArchiveType otrMode, const std::string& version = "");
-
184 std::string NormalizeAsset(const std::string& name) const;
-
185 std::string RelativePath(const std::string& path) const;
-
186 std::string RelativePathToSrcDir(const std::string& path) const;
-
187 std::string RelativePathToDestDir(const std::string& path) const;
-
188 void RegisterCompanionFile(const std::string path, std::vector<char> data);
-
189 void SetAdditionalFiles(const std::vector<std::string>& files) { this->gAdditionalFiles = files; }
-
190 void SetVersion(const std::string& version) { this->gVersion = version; }
-
191
-
192 TorchConfig& GetConfig() { return this->gConfig; }
-
193 BinaryWrapper* GetCurrentWrapper() { return this->gCurrentWrapper; }
-
194
-
195 std::optional<std::tuple<std::string, YAML::Node>> RegisterAsset(const std::string& name, YAML::Node& node);
-
196 std::optional<YAML::Node> AddAsset(YAML::Node asset);
-
197private:
-
198 TorchConfig gConfig;
-
199 YAML::Node gModdingConfig;
-
200 fs::path gSourceDirectory;
-
201 fs::path gDestinationDirectory;
-
202 fs::path gCurrentDirectory;
-
203 std::string gCurrentHash;
-
204 std::string gAssetPath;
-
205 std::string gVersion;
-
206 std::vector<uint8_t> gRomData;
-
207 std::optional<std::filesystem::path> gRomPath;
-
208 bool gNodeForceProcessing = false;
-
209 bool gIndividualIncludes = false;
-
210 YAML::Node gHashNode;
-
211 std::shared_ptr<N64::Cartridge> gCartridge;
-
212 std::unordered_map<std::string, std::vector<YAML::Node>> gCourseMetadata;
-
213 std::unordered_map<std::string, std::unordered_map<int32_t, std::string>> gEnums;
-
214 BinaryWrapper* gCurrentWrapper;
-
215
-
216 // Temporal Variables
-
217 std::string gCurrentFile;
-
218 std::string gCurrentVirtualPath;
-
219 std::string gFileHeader;
-
220 bool gEnablePadGen = false;
-
221 uint32_t gCurrentPad = 0;
-
222 uint32_t gCurrentFileOffset;
-
223 uint32_t gCurrentSegmentNumber;
-
224 std::optional<VRAMEntry> gCurrentVram;
-
225 CompressionType gCurrentCompressionType = CompressionType::None;
-
226 std::vector<Table> gTables;
-
227 std::vector<std::string> gCurrentExternalFiles;
-
228 std::unordered_map<int, std::string> gManualSegments;
-
229 std::unordered_set<std::string> gProcessedFiles;
-
230
-
231 std::unordered_map<std::string, std::vector<char>> gCompanionFiles;
-
232 std::unordered_map<std::string, std::vector<ParseResultData>> gParseResults;
-
233 std::vector<std::string> gAdditionalFiles;
+
147 void Process(std::atomic_ref<size_t> assetCount);
+
148
+
149 bool IsOTRMode() const { return (this->gConfig.otrMode != ArchiveType::None); }
+
150 bool IsDebug() const { return this->gConfig.debug; }
+
151 bool AddTextureDefines() const { return this->gConfig.textureDefines; }
+
152
+
153 N64::Cartridge* GetCartridge() const { return this->gCartridge.get(); }
+
154 std::vector<uint8_t>& GetRomData() { return this->gRomData; }
+
155 std::string GetOutputPath() { return this->gConfig.outputPath; }
+
156 std::string GetDestRelativeOutputPath() { return RelativePathToDestDir(GetOutputPath()); }
+
157
+
158 GBIVersion GetGBIVersion() const { return this->gConfig.gbi.version; }
+
159 GBIMinorVersion GetGBIMinorVersion() const { return this->gConfig.gbi.subversion; }
+
160 std::unordered_map<std::string, std::vector<YAML::Node>> GetCourseMetadata() { return this->gCourseMetadata; }
+
161 std::optional<std::string> GetEnumFromValue(const std::string& key, int id);
+
162 bool IsUsingIndividualIncludes() const { return this->gIndividualIncludes; }
+
163
+
164 std::optional<ParseResultData> GetParseDataByAddr(uint32_t addr);
+
165 std::optional<ParseResultData> GetParseDataBySymbol(const std::string& symbol);
+
166
+
167 std::optional<std::uint32_t> GetFileOffsetFromSegmentedAddr(uint8_t segment) const;
+
168 std::optional<std::shared_ptr<BaseFactory>> GetFactory(const std::string& type);
+
169 uint32_t PatchVirtualAddr(uint32_t addr);
+
170 std::optional<std::tuple<std::string, YAML::Node>> GetNodeByAddr(uint32_t addr);
+
171 std::optional<std::string> GetStringByAddr(uint32_t addr);
+
172 std::optional<std::tuple<std::string, YAML::Node>> GetSafeNodeByAddr(const uint32_t addr, std::string type);
+
173 std::optional<std::string> GetSafeStringByAddr(const uint32_t addr, std::string type);
+
174 std::optional<std::vector<std::tuple<std::string, YAML::Node>>> GetNodesByType(const std::string& type);
+
175 std::string GetSymbolFromAddr(uint32_t addr, bool validZero = false);
+
176
+
177 std::optional<std::uint32_t> GetFileOffset(void) const { return this->gCurrentFileOffset; };
+
178 std::optional<std::uint32_t> GetCurrSegmentNumber(void) const { return this->gCurrentSegmentNumber; };
+
179 CompressionType GetCurrCompressionType(void) const { return this->gCurrentCompressionType; };
+
180 std::optional<VRAMEntry> GetCurrentVRAM(void) const { return this->gCurrentVram; };
+
181 std::optional<Table> SearchTable(uint32_t addr);
+
182
+
183 static std::vector<char> ParseVersionString(const std::string& version);
+
184 static std::string CalculateHash(const std::vector<uint8_t>& data);
+
185 static void Pack(const std::string& folder, const std::string& output, const ArchiveType otrMode, const std::string& version = "");
+
186 std::string NormalizeAsset(const std::string& name) const;
+
187 std::string RelativePath(const std::string& path) const;
+
188 std::string RelativePathToSrcDir(const std::string& path) const;
+
189 std::string RelativePathToDestDir(const std::string& path) const;
+
190 void RegisterCompanionFile(const std::string path, std::vector<char> data);
+
191 void SetAdditionalFiles(const std::vector<std::string>& files) { this->gAdditionalFiles = files; }
+
192 void SetVersion(const std::string& version) { this->gVersion = version; }
+
193
+
194 void SetProcess(bool shouldProcess);
+
195 TorchConfig& GetConfig() { return this->gConfig; }
+
196 BinaryWrapper* GetCurrentWrapper() { return this->gCurrentWrapper; }
+
197
+
198 std::optional<std::tuple<std::string, YAML::Node>> RegisterAsset(const std::string& name, YAML::Node& node);
+
199 std::optional<YAML::Node> AddAsset(YAML::Node asset);
+
200private:
+
201 TorchConfig gConfig;
+
202 YAML::Node gModdingConfig;
+
203 fs::path gSourceDirectory;
+
204 fs::path gDestinationDirectory;
+
205 fs::path gCurrentDirectory;
+
206 std::string gCurrentHash;
+
207 std::string gAssetPath;
+
208 std::string gVersion;
+
209 std::vector<uint8_t> gRomData;
+
210 std::optional<std::filesystem::path> gRomPath;
+
211 bool gNodeForceProcessing = false;
+
212 bool gIndividualIncludes = false;
+
213 YAML::Node gHashNode;
+
214 std::shared_ptr<N64::Cartridge> gCartridge;
+
215 std::unordered_map<std::string, std::vector<YAML::Node>> gCourseMetadata;
+
216 std::unordered_map<std::string, std::unordered_map<int32_t, std::string>> gEnums;
+
217 BinaryWrapper* gCurrentWrapper;
+
218
+
219 // Temporal Variables
+
220 std::string gCurrentFile;
+
221 std::string gCurrentVirtualPath;
+
222 std::string gFileHeader;
+
223 bool gEnablePadGen = false;
+
224 bool process = true;
+
225 uint32_t gCurrentPad = 0;
+
226 uint32_t gCurrentFileOffset;
+
227 uint32_t gCurrentSegmentNumber;
+
228 std::optional<VRAMEntry> gCurrentVram;
+
229 CompressionType gCurrentCompressionType = CompressionType::None;
+
230 std::vector<Table> gTables;
+
231 std::vector<std::string> gCurrentExternalFiles;
+
232 std::unordered_map<int, std::string> gManualSegments;
+
233 std::unordered_set<std::string> gProcessedFiles;
234
-
235 std::unordered_map<std::string, std::string> gModdedAssetPaths;
-
236 std::variant<std::vector<std::string>, std::string> gWriteOrder;
-
237 std::unordered_map<std::string, std::shared_ptr<BaseFactory>> gFactories;
-
238 std::unordered_map<std::string, std::map<std::string, std::vector<WriteEntry>>> gWriteMap;
-
239 std::unordered_map<std::string, std::tuple<uint32_t, uint32_t>> gVirtualAddrMap;
-
240 std::unordered_map<std::string, std::unordered_map<uint32_t, std::tuple<std::string, YAML::Node>>> gAddrMap;
-
241
-
242 void ProcessFile(YAML::Node root);
-
243 void ParseEnums(std::string& file);
-
244 void ParseHash();
-
245 void ParseModdingConfig();
-
246 void ParseCurrentFileConfig(YAML::Node node);
-
247 void RegisterFactory(const std::string& type, const std::shared_ptr<BaseFactory>& factory);
-
248 void ExtractNode(YAML::Node& node, std::string& name, BinaryWrapper* binary);
-
249 void ProcessTables(YAML::Node& rom);
-
250 void LoadYAMLRecursively(const std::string &dirPath, std::vector<YAML::Node> &result, bool skipRoot);
-
251 std::optional<ParseResultData> ParseNode(YAML::Node& node, std::string& name);
-
252};
+
235 std::unordered_map<std::string, std::vector<char>> gCompanionFiles;
+
236 std::unordered_map<std::string, std::vector<ParseResultData>> gParseResults;
+
237 std::vector<std::string> gAdditionalFiles;
+
238
+
239 std::unordered_map<std::string, std::string> gModdedAssetPaths;
+
240 std::variant<std::vector<std::string>, std::string> gWriteOrder;
+
241 std::unordered_map<std::string, std::shared_ptr<BaseFactory>> gFactories;
+
242 std::unordered_map<std::string, std::map<std::string, std::vector<WriteEntry>>> gWriteMap;
+
243 std::unordered_map<std::string, std::tuple<uint32_t, uint32_t>> gVirtualAddrMap;
+
244 std::unordered_map<std::string, std::unordered_map<uint32_t, std::tuple<std::string, YAML::Node>>> gAddrMap;
+
245
+
246 void ProcessFile(YAML::Node root);
+
247 void ProcessFile(YAML::Node root, std::atomic_ref<size_t> assetCount);
+
248 void ParseEnums(std::string& file);
+
249 void ParseHash();
+
250 void ParseModdingConfig();
+
251 void ParseCurrentFileConfig(YAML::Node node, std::atomic_ref<size_t> assetCount);
+
252 void RegisterFactory(const std::string& type, const std::shared_ptr<BaseFactory>& factory);
+
253 void ExtractNode(YAML::Node& node, std::string& name, BinaryWrapper* binary);
+
254 void ProcessTables(YAML::Node& rom);
+
255 void LoadYAMLRecursively(const std::string &dirPath, std::vector<YAML::Node> &result, bool skipRoot);
+
256 std::optional<ParseResultData> ParseNode(YAML::Node& node, std::string& name);
+
257};
Definition BinaryWrapper.h:7
Definition Cartridge.h:15
-
Definition Companion.h:77
-
Definition Companion.h:96
-
Definition Companion.h:49
-
Definition Companion.h:55
-
Definition Companion.h:83
-
Definition Companion.h:63
-
Definition Companion.h:68
+
Definition Companion.h:78
+
Definition Companion.h:97
+
Definition Companion.h:50
+
Definition Companion.h:56
+
Definition Companion.h:84
+
Definition Companion.h:64
+
Definition Companion.h:69
diff --git a/classCompanion-members.html b/classCompanion-members.html index 7dc8610..9869444 100644 --- a/classCompanion-members.html +++ b/classCompanion-members.html @@ -126,23 +126,25 @@ $(function(){initNavTree('classCompanion.html','',''); }); GetStringByAddr(uint32_t addr) (defined in Companion)Companion GetSymbolFromAddr(uint32_t addr, bool validZero=false) (defined in Companion)Companion Init(ExportType type) (defined in Companion)Companion - Instance (defined in Companion)Companionstatic - IsDebug() const (defined in Companion)Companioninline - IsOTRMode() const (defined in Companion)Companioninline - IsUsingIndividualIncludes() const (defined in Companion)Companioninline - NodeHasChanges(const std::string &string) (defined in Companion)Companion - NormalizeAsset(const std::string &name) const (defined in Companion)Companion - Pack(const std::string &folder, const std::string &output, const ArchiveType otrMode, const std::string &version="") (defined in Companion)Companionstatic - ParseVersionString(const std::string &version) (defined in Companion)Companionstatic - PatchVirtualAddr(uint32_t addr) (defined in Companion)Companion - Process() (defined in Companion)Companion - RegisterAsset(const std::string &name, YAML::Node &node) (defined in Companion)Companion - RegisterCompanionFile(const std::string path, std::vector< char > data) (defined in Companion)Companion - RelativePath(const std::string &path) const (defined in Companion)Companion - RelativePathToDestDir(const std::string &path) const (defined in Companion)Companion - RelativePathToSrcDir(const std::string &path) const (defined in Companion)Companion - SearchTable(uint32_t addr) (defined in Companion)Companion - SetAdditionalFiles(const std::vector< std::string > &files) (defined in Companion)Companioninline + Init(ExportType type, std::atomic_ref< size_t > assetCount) (defined in Companion)Companion + Instance (defined in Companion)Companionstatic + IsDebug() const (defined in Companion)Companioninline + IsOTRMode() const (defined in Companion)Companioninline + IsUsingIndividualIncludes() const (defined in Companion)Companioninline + NodeHasChanges(const std::string &string) (defined in Companion)Companion + NormalizeAsset(const std::string &name) const (defined in Companion)Companion + Pack(const std::string &folder, const std::string &output, const ArchiveType otrMode, const std::string &version="") (defined in Companion)Companionstatic + ParseVersionString(const std::string &version) (defined in Companion)Companionstatic + PatchVirtualAddr(uint32_t addr) (defined in Companion)Companion + Process(std::atomic_ref< size_t > assetCount) (defined in Companion)Companion + RegisterAsset(const std::string &name, YAML::Node &node) (defined in Companion)Companion + RegisterCompanionFile(const std::string path, std::vector< char > data) (defined in Companion)Companion + RelativePath(const std::string &path) const (defined in Companion)Companion + RelativePathToDestDir(const std::string &path) const (defined in Companion)Companion + RelativePathToSrcDir(const std::string &path) const (defined in Companion)Companion + SearchTable(uint32_t addr) (defined in Companion)Companion + SetAdditionalFiles(const std::vector< std::string > &files) (defined in Companion)Companioninline + SetProcess(bool shouldProcess) (defined in Companion)Companion SetVersion(const std::string &version) (defined in Companion)Companioninline
diff --git a/classCompanion.html b/classCompanion.html index ae8f684..a937aa9 100644 --- a/classCompanion.html +++ b/classCompanion.html @@ -104,10 +104,12 @@ Public Member Functions  Companion (std::vector< uint8_t > rom, const ArchiveType otr, const bool debug, const std::string &srcDir="", const std::string &destPath="") void Init (ExportType type) + +void Init (ExportType type, std::atomic_ref< size_t > assetCount) bool NodeHasChanges (const std::string &string) - -void Process () + +void Process (std::atomic_ref< size_t > assetCount) bool IsOTRMode () const @@ -178,6 +180,8 @@ void RegisterCompanionFile void SetAdditionalFiles (const std::vector< std::string > &files) void SetVersion (const std::string &version) + +void SetProcess (bool shouldProcess) TorchConfigGetConfig () -- cgit v1.2.3