debrecords.h 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. // -*- mode: cpp; mode: fold -*-
  2. // Description /*{{{*/
  3. // $Id: debrecords.h,v 1.8 2001/03/13 06:51:46 jgg Exp $
  4. /* ######################################################################
  5. Debian Package Records - Parser for debian package records
  6. This provides display-type parsing for the Packages file. This is
  7. different than the the list parser which provides cache generation
  8. services. There should be no overlap between these two.
  9. ##################################################################### */
  10. /*}}}*/
  11. #ifndef PKGLIB_DEBRECORDS_H
  12. #define PKGLIB_DEBRECORDS_H
  13. #ifdef __GNUG__
  14. #pragma interface "apt-pkg/debrecords.h"
  15. #endif
  16. #include <apt-pkg/pkgrecords.h>
  17. #include <apt-pkg/indexfile.h>
  18. #include <apt-pkg/tagfile.h>
  19. class debRecordParser : public pkgRecords::Parser
  20. {
  21. FileFd File;
  22. pkgTagFile Tags;
  23. pkgTagSection Section;
  24. protected:
  25. virtual bool Jump(pkgCache::VerFileIterator const &Ver);
  26. virtual bool Jump(pkgCache::DescFileIterator const &Desc);
  27. public:
  28. // These refer to the archive file for the Version
  29. virtual string FileName();
  30. virtual string MD5Hash();
  31. virtual string SHA1Hash();
  32. virtual string SourcePkg();
  33. // These are some general stats about the package
  34. virtual string Maintainer();
  35. virtual string ShortDesc();
  36. virtual string LongDesc();
  37. virtual string Name();
  38. virtual void GetRec(const char *&Start,const char *&Stop);
  39. debRecordParser(string FileName,pkgCache &Cache);
  40. };
  41. #endif