]> cygwin.com Git - cygwin-apps/setup.git/blob - cygpackage.h
2001-11-29 Robert Collins <rbtcollins@hotmail.com>
[cygwin-apps/setup.git] / cygpackage.h
1 /*
2 * Copyright (c) 2001, Robert Collins.
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation; either version 2 of the License, or
7 * (at your option) any later version.
8 *
9 * A copy of the GNU General Public License can be found at
10 * http://www.gnu.org/
11 *
12 * Written by Robert Collins <rbtcollins@hotmail.com>
13 *
14 */
15
16 /* This is a cygwin specific package class, that should be able to
17 * arbitrate acceess to cygwin binary packages amd cygwin source packages
18 */
19
20 #ifndef _CYGPACKAGE_H_
21 #define _CYGPACKAGE_H_
22
23 #include "category_list.h"
24
25 class cygpackage:public packageversion
26 {
27 public:
28 virtual const char *Name ();
29 virtual const char *Vendor_version ();
30 virtual const char *Package_version ();
31 virtual char const *Canonical_version ();
32 virtual package_status_t Status ()
33 {
34 return status;
35 };
36 virtual package_type_t Type ()
37 {
38 return type;
39 };
40 void set_sdesc (char const *);
41 void set_ldesc (char const *);
42 virtual char const *SDesc ()
43 {
44 return sdesc;
45 };
46 virtual char const *LDesc ()
47 {
48 return ldesc;
49 };
50 virtual void uninstall ();
51
52
53 /* pass the name of the package when constructing */
54 cygpackage (const char *);
55 cygpackage (const char *, const char *, size_t, const char *,
56 package_status_t, package_type_t);
57 void set_canonical_version (char const *);
58
59
60 virtual ~ cygpackage ();
61 /* TODO: we should probably return a metaclass - file name & path & size & type
62 - ie doc/script/binary
63 */
64 virtual const char *getfirstfile ();
65 virtual const char *getnextfile ();
66 private:
67 void destroy ();
68 char *name;
69 char *vendor;
70 char *packagev;
71 char *canonical;
72 char *fn;
73 char *sdesc, *ldesc;
74 char getfilenamebuffer[_MAX_PATH];
75
76 // package_stability_t stability;
77 package_status_t status;
78 package_type_t type;
79
80 io_stream *listdata, *listfile;
81 size_t filesize;
82 };
83
84 #endif /* _CYGPACKAGE_H_ */
This page took 0.037965 seconds and 5 git commands to generate.