]> git.saurik.com Git - apt.git/blobdiff - apt-pkg/cdrom.h
Get accurate progress reporting in apt update again
[apt.git] / apt-pkg / cdrom.h
index f4a8738080522124321af99d3d673d2236e69206..ab1e046bf8407e918dd51f022f94f104212143c3 100644 (file)
@@ -1,6 +1,8 @@
 #ifndef PKGLIB_CDROM_H
 #define PKGLIB_CDROM_H
 
 #ifndef PKGLIB_CDROM_H
 #define PKGLIB_CDROM_H
 
+#include <apt-pkg/macros.h>
+
 #include<string>
 #include<vector>
 
 #include<string>
 #include<vector>
 
@@ -16,12 +18,13 @@ class OpProgress;
 
 class pkgCdromStatus                                                   /*{{{*/
 {
 
 class pkgCdromStatus                                                   /*{{{*/
 {
+   void * const d;
  protected:
    int totalSteps;
 
  public:
  protected:
    int totalSteps;
 
  public:
-   pkgCdromStatus() : totalSteps(0) {};
-   virtual ~pkgCdromStatus() {};
+   pkgCdromStatus();
+   virtual ~pkgCdromStatus();
 
    // total steps
    virtual void SetTotal(int total) { totalSteps = total; };
 
    // total steps
    virtual void SetTotal(int total) { totalSteps = total; };
@@ -72,9 +75,15 @@ class pkgCdrom                                                               /*{{{*/
    bool Ident(std::string &ident, pkgCdromStatus *log);
    bool Add(pkgCdromStatus *log);
 
    bool Ident(std::string &ident, pkgCdromStatus *log);
    bool Add(pkgCdromStatus *log);
 
+   pkgCdrom();
+   virtual ~pkgCdrom();
+
  private:
  private:
-   bool MountAndIdentCDROM(Configuration &Database, std::string &CDROM,
-        std::string &ident, pkgCdromStatus * const log);
+   void * const d;
+
+   APT_HIDDEN bool MountAndIdentCDROM(Configuration &Database, std::string &CDROM,
+        std::string &ident, pkgCdromStatus * const log, bool const interactive);
+   APT_HIDDEN bool UnmountCDROM(std::string const &CDROM, pkgCdromStatus * const log);
 };
                                                                        /*}}}*/
 
 };
                                                                        /*}}}*/
 
@@ -89,6 +98,7 @@ struct CdromDevice                                                    /*{{{*/
                                                                        /*}}}*/
 class pkgUdevCdromDevices                                              /*{{{*/
 {
                                                                        /*}}}*/
 class pkgUdevCdromDevices                                              /*{{{*/
 {
+   void * const d;
  protected:
    // libudev dlopen structure
    void *libudev_handle;
  protected:
    // libudev dlopen structure
    void *libudev_handle;