Add bunch of missing includes to fix build with gcc 4.7
[apt.git] / apt-pkg / rpm / rpmrecords.h
1 // -*- mode: c++; mode: fold -*-
2 // Description                                                          /*{{{*/
3 // $Id: rpmrecords.h,v 1.3 2002/08/08 20:07:33 niemeyer Exp $
4 /* ######################################################################
5    
6    RPM Package Records - Parser for RPM hdlist/rpmdb files
7    
8    This provides display-type parsing for the Packages file. This is 
9    different than the the list parser which provides cache generation
10    services. There should be no overlap between these two.
11    
12    ##################################################################### */
13                                                                         /*}}}*/
14 // Header section: pkglib
15 #ifndef PKGLIB_RPMRECORDS_H
16 #define PKGLIB_RPMRECORDS_H
17
18 #include <apt-pkg/pkgrecords.h>
19 #include <apt-pkg/fileutl.h>
20 #include "rpmhandler.h"
21   
22 class RPMHandler;
23
24 class rpmRecordParser : public pkgRecords::Parser
25 {
26    RPMHandler *Handler;
27    bool IsDatabase;
28
29    char *Buffer;
30    unsigned BufSize;
31    unsigned BufUsed;
32
33    void BufCat(const char *text);
34    void BufCat(const char *begin, const char *end);
35    void BufCatTag(const char *tag, const char *value);
36    void BufCatDep(Dependency *Dep);
37    void BufCatDescr(const char *descr);
38
39    protected:
40    
41    virtual bool Jump(pkgCache::VerFileIterator const &Ver);
42    
43    public:
44
45    // These refer to the archive file for the Version
46    virtual string FileName();
47    virtual string Hash();
48    virtual string HashType();
49    virtual string SourcePkg();
50    
51    // These are some general stats about the package
52    virtual string Maintainer();
53    virtual string ShortDesc();
54    virtual string LongDesc();
55    virtual string Name();
56
57    virtual bool ChangeLog(vector<ChangeLogEntry *> &ChangeLogs);
58    virtual bool FileList(vector<string> &Files);
59
60    
61    // The record in raw text, in standard Debian format
62    virtual void GetRec(const char *&Start,const char *&Stop);
63
64    virtual bool HasFile(const char *File);
65
66    rpmRecordParser(string File,pkgCache &Cache);
67    ~rpmRecordParser();
68 };
69
70
71 #endif