X-Git-Url: https://git.saurik.com/apt.git/blobdiff_plain/7b197262212f49b3b355b1124edf2ba9adb73411..c382e0dff11beb00632d67d9361831358a38e465:/apt-pkg/edsp.h?ds=sidebyside diff --git a/apt-pkg/edsp.h b/apt-pkg/edsp.h index 3e0982a56..60f8c2883 100644 --- a/apt-pkg/edsp.h +++ b/apt-pkg/edsp.h @@ -236,16 +236,41 @@ namespace EDSP /*{{{*/ bool const autoRemove, OpProgress *Progress = NULL); } /*}}}*/ +class pkgPackageManager; namespace EIPP /*{{{*/ { - APT_HIDDEN bool OrderInstall(char const * const solver, pkgDepCache &Cache, - unsigned int const version, OpProgress * const Progress); + namespace Request + { + enum Flags + { + IMMEDIATE_CONFIGURATION_ALL = (1 << 0), /*!< try to keep the least amount of packages unconfigured as possible at all times */ + NO_IMMEDIATE_CONFIGURATION = (1 << 1), /*!< do not perform immediate configuration at all */ + ALLOW_TEMPORARY_REMOVE_OF_ESSENTIALS = (1 << 2), /*!< just as the name suggests, very special case and dangerous! */ + }; + } + APT_HIDDEN bool WriteRequest(pkgDepCache &Cache, FileFd &output, - unsigned int const version, OpProgress * const Progress); + unsigned int const flags, OpProgress * const Progress); APT_HIDDEN bool WriteScenario(pkgDepCache &Cache, FileFd &output, OpProgress * const Progress); - APT_HIDDEN bool ReadResponse(int const input, pkgDepCache &Cache, + + APT_HIDDEN bool OrderInstall(char const * const planner, pkgPackageManager * const PM, + unsigned int const version, OpProgress * const Progress); + APT_HIDDEN bool ReadResponse(int const input, pkgPackageManager * const PM, OpProgress * const Progress); + + enum class PKG_ACTION + { + NOOP, + INSTALL, + REINSTALL, + REMOVE + }; + bool ReadRequest(int const input, + std::list> &actions, + unsigned int &flags); + bool ApplyRequest(std::list> &actions, + pkgDepCache &Cache); } /*}}}*/ #endif