Fixed a bug where SmartUnPack would be called with Immediate=true (to resolve dependa...
[ntk/apt.git] / apt-pkg / cdrom.h
index 13e7203..e83c385 100644 (file)
@@ -8,7 +8,7 @@
 
 using namespace std;
 
-class pkgCdromStatus
+class pkgCdromStatus                                                   /*{{{*/
 {
  protected:
    int totalSteps;
@@ -29,8 +29,8 @@ class pkgCdromStatus
    // Progress indicator for the Index rewriter
    virtual OpProgress* GetOpProgress() {return NULL; };
 };
-
-class pkgCdrom 
+                                                                       /*}}}*/
+class pkgCdrom                                                         /*{{{*/
 {
  protected:
    enum {
@@ -65,17 +65,18 @@ class pkgCdrom
    bool Ident(string &ident, pkgCdromStatus *log);
    bool Add(pkgCdromStatus *log);
 };
+                                                                       /*}}}*/
 
 
-// class that uses libudev to find cdrom devices dynamically
-struct CdromDevice
+// class that uses libudev to find cdrom/removable devices dynamically
+struct CdromDevice                                                     /*{{{*/
 {
    string DeviceName;
    bool Mounted;
    string MountPath;
 };
-
-class pkgUdevCdromDevices
+                                                                       /*}}}*/
+class pkgUdevCdromDevices                                              /*{{{*/
 {
  protected:
    // libudev dlopen stucture
@@ -91,6 +92,9 @@ class pkgUdevCdromDevices
    struct udev_enumerate *(*udev_enumerate_new) (struct udev *udev);
    struct udev_list_entry *(*udev_list_entry_get_next)(struct udev_list_entry *list_entry);
    const char* (*udev_device_get_property_value)(struct udev_device *udev_device, const char *key);
+#if 0 // FIXME: uncomment on next ABI break
+   int (*udev_enumerate_add_match_sysattr)(struct udev_enumerate *udev_enumerate, const char *property, const char *value);
+#endif 
    // end libudev dlopen
    
  public:
@@ -99,9 +103,13 @@ class pkgUdevCdromDevices
 
    // try to open 
    bool Dlopen();
-   vector<CdromDevice> Scan();
-};
 
+   // this is the new interface
+   vector<CdromDevice> ScanForRemovable(bool CdromOnly);
+   // FIXME: compat with the old interface/API/ABI only
+   vector<CdromDevice> Scan();
 
+};
+                                                                       /*}}}*/
 
 #endif