namespace APT {
namespace Progress {
+ class PackageManager;
+ PackageManager* PackageManagerProgressFactory();
+
class PackageManager
{
private:
: percentage(0.0), last_reported_progress(-1) {};
virtual ~PackageManager() {};
+ /* Global Start/Stop */
virtual void Start() {};
virtual void Stop() {};
+ /* When dpkg is invoked (may happen multiple times for each
+ * install/remove block
+ */
+ virtual void StartDpkg() {};
+
virtual pid_t fork() {return fork(); };
virtual void Pulse() {};
public:
PackageManagerProgressFd(int progress_fd);
- virtual void Start();
+ virtual void StartDpkg();
virtual void Stop();
virtual bool StatusChanged(std::string PackageName,