]> git.saurik.com Git - apt.git/blobdiff - apt-pkg/pkgrecords.h
Only do openpty() if both stdin/stdout are terminals
[apt.git] / apt-pkg / pkgrecords.h
index af5fac646e057d3434e92c35e6871069297dad98..b5237b3a08052ef337ed11e31644e3df7a948e16 100644 (file)
@@ -1,6 +1,6 @@
 // -*- mode: cpp; mode: fold -*-
 // Description                                                         /*{{{*/
-// $Id: pkgrecords.h,v 1.5 2001/02/20 07:03:17 jgg Exp $
+// $Id: pkgrecords.h,v 1.6 2001/03/13 06:51:46 jgg Exp $
 /* ######################################################################
    
    Package Records - Allows access to complete package description records
 #ifndef PKGLIB_PKGRECORDS_H
 #define PKGLIB_PKGRECORDS_H
 
-#ifdef __GNUG__
-#pragma interface "apt-pkg/pkgrecords.h"
-#endif 
-
 #include <apt-pkg/pkgcache.h>
-#include <apt-pkg/fileutl.h>
 
-class pkgRecords
+#include <string>
+#include <vector>
+
+class pkgRecords                                                       /*{{{*/
 {
    public:
    class Parser;
    
    private:
+   /** \brief dpointer placeholder (for later in case we need it) */
+   void *d;
    
    pkgCache &Cache;
-   Parser **Files;
-      
-   public:
+   std::vector<Parser *>Files;
 
+    public:
    // Lookup function
    Parser &Lookup(pkgCache::VerFileIterator const &Ver);
+   Parser &Lookup(pkgCache::DescFileIterator const &Desc);
 
    // Construct destruct
    pkgRecords(pkgCache &Cache);
    ~pkgRecords();
 };
-
-class pkgRecords::Parser
+                                                                       /*}}}*/
+class pkgRecords::Parser                                               /*{{{*/
 {
    protected:
    
    virtual bool Jump(pkgCache::VerFileIterator const &Ver) = 0;
+   virtual bool Jump(pkgCache::DescFileIterator const &Desc) = 0;
    
    public:
    friend class pkgRecords;
    
    // These refer to the archive file for the Version
-   virtual string FileName() {return string();};
-   virtual string MD5Hash() {return string();};
-   virtual string SourcePkg() {return string();};
+   virtual std::string FileName() {return std::string();};
+   virtual std::string MD5Hash() {return std::string();};
+   virtual std::string SHA1Hash() {return std::string();};
+   virtual std::string SHA256Hash() {return std::string();};
+   virtual std::string SHA512Hash() {return std::string();};
+   virtual std::string SourcePkg() {return std::string();};
+   virtual std::string SourceVer() {return std::string();};
 
    // These are some general stats about the package
-   virtual string Maintainer() {return string();};
-   virtual string ShortDesc() {return string();};
-   virtual string LongDesc() {return string();};
-   virtual string Name() {return string();};
-   
+   virtual std::string Maintainer() {return std::string();};
+   virtual std::string ShortDesc() {return std::string();};
+   virtual std::string LongDesc() {return std::string();};
+   virtual std::string Name() {return std::string();};
+   virtual std::string Homepage() {return std::string();}
+
+   // An arbitrary custom field
+   virtual std::string RecordField(const char * /*fieldName*/) { return std::string();};
+
    // The record in binary form
    virtual void GetRec(const char *&Start,const char *&Stop) {Start = Stop = 0;};
    
    virtual ~Parser() {};
 };
-
+                                                                       /*}}}*/
 #endif