diff options
| author | KiritoDv <kiritodev01@gmail.com> | 2024-03-29 01:07:00 -0600 |
|---|---|---|
| committer | Lywx <kiritodev01@gmail.com> | 2024-03-29 03:03:55 -0600 |
| commit | c7c512e7a0d3f10218e251a243396a02c026c84b (patch) | |
| tree | 6128873b513b2a17bd0245589dc5251aae75daef /src/Companion.h | |
| parent | d8df2a4826b6967e1263eaf017ae6e49801d8e3f (diff) | |
Implemented full file change detection
Diffstat (limited to 'src/Companion.h')
| -rw-r--r-- | src/Companion.h | 15 |
1 files changed, 5 insertions, 10 deletions
diff --git a/src/Companion.h b/src/Companion.h index 07d9f20..6f687c2 100644 --- a/src/Companion.h +++ b/src/Companion.h @@ -86,7 +86,7 @@ public: void Init(ExportType type); - void PrepareCache(const std::string& string); + bool NodeHasChanges(const std::string& string); void Process(); @@ -125,11 +125,11 @@ private: TorchConfig gConfig; YAML::Node gModdingConfig; fs::path gCurrentDirectory; - std::string gCurrentCacheHash; + std::string gCurrentHash; std::vector<uint8_t> gRomData; std::filesystem::path gRomPath; - bool gNodeIsCacheable; - YAML::Node gCacheNode; + bool gNodeForceProcessing = false; + YAML::Node gHashNode; std::shared_ptr<N64::Cartridge> gCartridge; std::unordered_map<std::string, std::unordered_map<int32_t, std::string>> gEnums; @@ -146,19 +146,14 @@ private: std::variant<std::vector<std::string>, std::string> gWriteOrder; std::unordered_map<std::string, std::shared_ptr<BaseFactory>> gFactories; std::unordered_map<std::string, std::string> gModdedAssetPaths; - std::unordered_map<std::string, std::unordered_map<std::string, std::vector<uint8_t>>> gCacheData; std::unordered_map<std::string, std::map<std::string, std::vector<WriteEntry>>> gWriteMap; std::unordered_map<std::string, std::map<std::string, std::pair<YAML::Node, bool>>> gAssetDependencies; std::unordered_map<std::string, std::unordered_map<uint32_t, std::tuple<std::string, YAML::Node>>> gAddrMap; void ParseEnums(std::string& file); - void ParseCache(); + void ParseHash(); void ParseModdingConfig(); void ParseCurrentFileConfig(YAML::Node node); void RegisterFactory(const std::string& type, const std::shared_ptr<BaseFactory>& factory); - - void StoreCache(std::string path, const std::vector<uint8_t>& value); - std::vector<uint8_t>& GetCache(std::string path); - void ExtractNode(YAML::Node& node, std::string& name, SWrapper* binary); }; |
