]> git.saurik.com Git - apt.git/blobdiff - apt-pkg/deb/debrecords.h
Merge remote-tracking branch 'mvo/bugfix/update-progress-reporting' into debian/exper...
[apt.git] / apt-pkg / deb / debrecords.h
index b5e3bbdba85fd552141784daa3049863224ba9e4..d572bc5c20b5605cafc775dfb99aabad2a1771a3 100644 (file)
@@ -17,6 +17,9 @@
 #include <apt-pkg/pkgrecords.h>
 #include <apt-pkg/tagfile.h>
 #include <apt-pkg/fileutl.h>
+#include <apt-pkg/pkgcache.h>
+
+#include <string>
 
 #ifndef APT_8_CLEANER_HEADERS
 #include <apt-pkg/indexfile.h>
@@ -26,17 +29,16 @@ class debRecordParser : public pkgRecords::Parser
 {
    /** \brief dpointer placeholder (for later in case we need it) */
    void *d;
-
+   
+ protected:
    FileFd File;
    pkgTagFile Tags;
    pkgTagSection Section;
    
-   protected:
-   
    virtual bool Jump(pkgCache::VerFileIterator const &Ver);
    virtual bool Jump(pkgCache::DescFileIterator const &Desc);
    
  public:
+ public:
 
    // These refer to the archive file for the Version
    virtual std::string FileName();
@@ -63,4 +65,15 @@ class debRecordParser : public pkgRecords::Parser
    virtual ~debRecordParser() {};
 };
 
+// custom record parser that reads deb files directly
+class debDebFileRecordParser : public debRecordParser
+{
+ public:
+   virtual std::string FileName() {
+      return File.Name();
+   }
+   debDebFileRecordParser(std::string FileName,pkgCache &Cache)
+      : debRecordParser(FileName, Cache) {};
+};
+
 #endif