]> git.saurik.com Git - apt.git/blobdiff - apt-inst/contrib/arfile.h
simulate all package manager actions explicitly
[apt.git] / apt-inst / contrib / arfile.h
index 6c54d3e6bf4812d239c305bc39c3c8cfc00b5007..297303a9d8403de1e28412c1368d5fcfa21b6685 100644 (file)
 #ifndef PKGLIB_ARFILE_H
 #define PKGLIB_ARFILE_H
 
-#ifdef __GNUG__
-#pragma interface "apt-pkg/arfile.h"
-#endif
 
 #include <string>
+#include <apt-pkg/macros.h>
+#ifndef APT_8_CLEANER_HEADERS
 #include <apt-pkg/fileutl.h>
+#endif
+
+class FileFd;
 
 class ARArchive
 {
@@ -42,6 +44,7 @@ class ARArchive
 
    // Locate a member by name
    const Member *FindMember(const char *Name) const;
+   inline Member *Members() { return List; }
    
    ARArchive(FileFd &File);
    ~ARArchive();
@@ -51,15 +54,15 @@ class ARArchive
 struct ARArchive::Member
 {
    // Fields from the header
-   string Name;
+   std::string Name;
    unsigned long MTime;
    unsigned long UID;
    unsigned long GID;
    unsigned long Mode;
-   unsigned long Size;
+   unsigned long long Size;
    
    // Location of the data.
-   unsigned long Start;
+   unsigned long long Start;
    Member *Next;
    
    Member() : Start(0), Next(0) {};