]> git.saurik.com Git - apt.git/blob - cmdline/apt-extracttemplates.h
merge patches from daniel to fix merge artifact and test failure
[apt.git] / cmdline / apt-extracttemplates.h
1 // -*- mode: cpp; mode: fold -*-
2 // Description /*{{{*/
3 // $Id: apt-extracttemplates.h,v 1.2 2001/02/27 04:26:03 jgg Exp $
4 /* ######################################################################
5
6 apt-extracttemplate - tool to extract template and config data
7
8 ##################################################################### */
9 /*}}}*/
10 #ifndef _APTEXTRACTTEMPLATE_H_
11 #define _APTEXTRACTTEMPLATE_H_
12
13 #include <apt-pkg/fileutl.h>
14 #include <apt-pkg/pkgcache.h>
15 #include <apt-pkg/dirstream.h>
16
17 #include <string>
18
19 class DebFile : public pkgDirStream
20 {
21 FileFd File;
22 unsigned long Size;
23 char *Control;
24 unsigned long ControlLen;
25
26 public:
27 DebFile(const char *FileName);
28 ~DebFile();
29 bool DoItem(Item &I, int &fd);
30 bool Process(pkgDirStream::Item &I, const unsigned char *data,
31 unsigned long size, unsigned long pos);
32
33 bool Go();
34 bool ParseInfo();
35
36 static std::string GetInstalledVer(const std::string &package);
37
38 std::string Package;
39 std::string Version;
40 std::string DepVer, PreDepVer;
41 unsigned int DepOp, PreDepOp;
42
43 char *Config;
44 char *Template;
45
46 static pkgCache *Cache;
47 enum { None, IsControl, IsConfig, IsTemplate } Which;
48 };
49
50 #endif