X-Git-Url: https://git.saurik.com/ldid.git/blobdiff_plain/2da83dea4ef1fa6c8e8cc0f5f2fbe2dca6873e36..b4b49374e27cbb90f8fae723326484ddaaed62e9:/ldid.hpp diff --git a/ldid.hpp b/ldid.hpp index a5cf5d7..8b7c76e 100644 --- a/ldid.hpp +++ b/ldid.hpp @@ -48,6 +48,11 @@ FunctorImpl<decltype(&Function_::operator())> fun(const Function_ &value) { return value; } +struct Progress { + virtual void operator()(const std::string &value) const = 0; + virtual void operator()(double value) const = 0; +}; + class Folder { public: virtual void Save(const std::string &path, bool edit, const void *flag, const Functor<void (std::streambuf &)> &code) = 0; @@ -148,11 +153,11 @@ struct Bundle { Hash hash; }; -Bundle Sign(const std::string &root, Folder &folder, const std::string &key, const std::string &requirements, const Functor<std::string (const std::string &, const std::string &)> &alter, const Functor<void (const std::string &)> &progress, const Functor<void (double)> &percent); +Bundle Sign(const std::string &root, Folder &folder, const std::string &key, const std::string &requirements, const Functor<std::string (const std::string &, const std::string &)> &alter, const Progress &progress); typedef std::map<uint32_t, Hash> Slots; -Hash Sign(const void *idata, size_t isize, std::streambuf &output, const std::string &identifier, const std::string &entitlements, const std::string &requirements, const std::string &key, const Slots &slots, const Functor<void (double)> &percent); +Hash Sign(const void *idata, size_t isize, std::streambuf &output, const std::string &identifier, const std::string &entitlements, const std::string &requirements, const std::string &key, const Slots &slots, const Progress &progress); }