Imported Upstream version 0.7.27
[platform/upstream/libsolv.git] / src / pooltypes.h
1 /*
2  * Copyright (c) 2007, Novell Inc.
3  *
4  * This program is licensed under the BSD license, read LICENSE.BSD
5  * for further information
6  */
7
8 /*
9  * pooltypes.h
10  *
11  */
12
13 #ifndef LIBSOLV_POOLTYPES_H
14 #define LIBSOLV_POOLTYPES_H
15
16 #ifdef __cplusplus
17 extern "C" {
18 #endif
19
20 /* format version number for .solv files */
21 #define SOLV_VERSION_0 0
22 #define SOLV_VERSION_1 1
23 #define SOLV_VERSION_2 2
24 #define SOLV_VERSION_3 3
25 #define SOLV_VERSION_4 4
26 #define SOLV_VERSION_5 5
27 #define SOLV_VERSION_6 6
28 #define SOLV_VERSION_7 7
29 #define SOLV_VERSION_8 8
30 #define SOLV_VERSION_9 9
31
32 #define SOLV_FLAG_PREFIX_POOL   4
33 #define SOLV_FLAG_SIZE_BYTES    8
34 #define SOLV_FLAG_USERDATA      16
35 #define SOLV_FLAG_IDARRAYBLOCK  32
36
37 struct s_Stringpool;
38 typedef struct s_Stringpool Stringpool;
39
40 struct s_Pool;
41 typedef struct s_Pool Pool;
42
43 struct s_Repo;
44 typedef struct s_Repo Repo;
45
46 struct s_Repodata;
47 typedef struct s_Repodata Repodata;
48
49 struct s_Solvable;
50 typedef struct s_Solvable Solvable;
51
52 /* identifier for string values */
53 typedef int Id;         /* must be signed!, since negative Id is used in solver rules to denote negation */
54
55 /* offset value, e.g. used to 'point' into the stringspace */
56 typedef unsigned int Offset;
57
58 #ifdef __cplusplus
59 }
60 #endif
61
62 #endif /* LIBSOLV_POOLTYPES_H */