]> git.saurik.com Git - apt-legacy.git/blobdiff - apt-pkg/pkgcachegen.h
The first character of a package should not be case sensitive.
[apt-legacy.git] / apt-pkg / pkgcachegen.h
index 9a729eea4f9b0689611b8cb14b541e22d8382788..306b11729de6c7e2ed4d5eb2cb371c71e100d738 100644 (file)
 #ifndef PKGLIB_PKGCACHEGEN_H
 #define PKGLIB_PKGCACHEGEN_H
 
-#ifdef __GNUG__
-#pragma interface "apt-pkg/pkgcachegen.h"
-#endif 
 
 #include <apt-pkg/pkgcache.h>
+#include <apt-pkg/md5.h>
 
 class pkgSourceList;
 class OpProgress;
 class MMap;
 class pkgIndexFile;
 
-class pkgCacheGenerator
+class pkgCacheGenerator                                                        /*{{{*/
 {
    private:
    
@@ -53,9 +51,13 @@ class pkgCacheGenerator
    // Flag file dependencies
    bool FoundFileDeps;
    
-   bool NewPackage(pkgCache::PkgIterator &Pkg,const string &Pkg);
+   bool NewPackage(pkgCache::PkgIterator &Pkg,const string &PkgName);
+   bool NewPackage(pkgCache::PkgIterator &Pkg,const srkString &PkgName);
    bool NewFileVer(pkgCache::VerIterator &Ver,ListParser &List);
+   bool NewFileDesc(pkgCache::DescIterator &Desc,ListParser &List);
    unsigned long NewVersion(pkgCache::VerIterator &Ver,const string &VerStr,unsigned long Next);
+   unsigned long NewVersion(pkgCache::VerIterator &Ver,const srkString &VerStr,unsigned long Next);
+   map_ptrloc NewDescription(pkgCache::DescIterator &Desc,const string &Lang,const MD5SumValue &md5sum,map_ptrloc Next);
 
    public:
 
@@ -76,8 +78,8 @@ class pkgCacheGenerator
    pkgCacheGenerator(DynamicMMap *Map,OpProgress *Progress);
    ~pkgCacheGenerator();
 };
-
-// This is the abstract package list parser class.
+                                                                       /*}}}*/
+// This is the abstract package list parser class.                     /*{{{*/
 class pkgCacheGenerator::ListParser
 {
    pkgCacheGenerator *Owner;
@@ -96,11 +98,18 @@ class pkgCacheGenerator::ListParser
    inline unsigned long WriteUniqString(const char *S,unsigned int Size) {return Owner->WriteUniqString(S,Size);};
    inline unsigned long WriteString(const string &S) {return Owner->Map.WriteString(S);};
    inline unsigned long WriteString(const char *S,unsigned int Size) {return Owner->Map.WriteString(S,Size);};
+   inline unsigned long WriteString(const srkString &S) {return Owner->Map.WriteString(S.Start,S.Size);};
    bool NewDepends(pkgCache::VerIterator Ver,const string &Package,
                   const string &Version,unsigned int Op,
                   unsigned int Type);
+   bool NewDepends(pkgCache::VerIterator Ver,const srkString &Package,
+                  const srkString &Version,unsigned int Op,
+                  unsigned int Type);
    bool NewProvides(pkgCache::VerIterator Ver,const string &Package,
                    const string &Version);
+   bool NewProvides(pkgCache::VerIterator Ver,const srkString &Package,
+                   const srkString &Version);
+   bool NewTag(pkgCache::PkgIterator Pkg,const char *NameStart,unsigned int NameSize);
    
    public:
    
@@ -108,6 +117,9 @@ class pkgCacheGenerator::ListParser
    virtual string Package() = 0;
    virtual string Version() = 0;
    virtual bool NewVersion(pkgCache::VerIterator Ver) = 0;
+   virtual string Description() = 0;
+   virtual string DescriptionLanguage() = 0;
+   virtual MD5SumValue Description_md5() = 0;
    virtual unsigned short VersionHash() = 0;
    virtual bool UsePackage(pkgCache::PkgIterator Pkg,
                           pkgCache::VerIterator Ver) = 0;
@@ -123,7 +135,7 @@ class pkgCacheGenerator::ListParser
    ListParser() : FoundFileDeps(false) {};
    virtual ~ListParser() {};
 };
-
+                                                                       /*}}}*/
 bool pkgMakeStatusCache(pkgSourceList &List,OpProgress &Progress,
                        MMap **OutMap = 0,bool AllowMem = false);
 bool pkgMakeOnlyStatusCache(OpProgress &Progress,DynamicMMap **OutMap);