summaryrefslogtreecommitdiff
path: root/src/AliasManager.cpp
diff options
context:
space:
mode:
authorbriaguya <70942617+briaguya0@users.noreply.github.com>2026-07-24 18:09:55 -0400
committerGitHub <noreply@github.com>2026-07-24 18:09:55 -0400
commit4cae44160693e1beb562e39dc301bd42278be1f9 (patch)
tree5d247f7821a6040221b4bf34d2cae2b87c42d23a /src/AliasManager.cpp
parentcd33252589a61d044138f449041a87adee2a8291 (diff)
oot support (#219)
Diffstat (limited to 'src/AliasManager.cpp')
-rw-r--r--src/AliasManager.cpp23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/AliasManager.cpp b/src/AliasManager.cpp
new file mode 100644
index 0000000..1f12aeb
--- /dev/null
+++ b/src/AliasManager.cpp
@@ -0,0 +1,23 @@
+#include "AliasManager.h"
+#include "utils/TorchUtils.h"
+
+static AliasManager sAliasManagerInstance;
+AliasManager* AliasManager::Instance = &sAliasManagerInstance;
+
+void AliasManager::Register(const std::string& primaryPath, const std::string& aliasPath) {
+ mAliases[primaryPath].push_back(aliasPath);
+}
+
+void AliasManager::WriteAliases(const std::string& primaryPath, BinaryWrapper* wrapper,
+ const std::vector<char>& data) {
+ if (!Torch::contains(mAliases, primaryPath)) return;
+
+ for (auto& alias : mAliases[primaryPath]) {
+ wrapper->AddFile(alias, data);
+ }
+ mAliases.erase(primaryPath);
+}
+
+void AliasManager::Clear() {
+ mAliases.clear();
+}