Add ENABLE_COMPLEX_DEPS flag
[platform/upstream/libsolv.git] / src / pooltypes.h
index daee334..bccdfc1 100644 (file)
@@ -7,12 +7,16 @@
 
 /*
  * pooltypes.h
- * 
+ *
  */
 
 #ifndef LIBSOLV_POOLTYPES_H
 #define LIBSOLV_POOLTYPES_H
 
+#ifdef __cplusplus
+extern "C" {
+#endif
+
 /* format version number for .solv files */
 #define SOLV_VERSION_0 0
 #define SOLV_VERSION_1 1
 #define SOLV_VERSION_6 6
 #define SOLV_VERSION_7 7
 #define SOLV_VERSION_8 8
+#define SOLV_VERSION_9 9
+
+#define SOLV_FLAG_PREFIX_POOL  4
+#define SOLV_FLAG_SIZE_BYTES   8
+#define SOLV_FLAG_USERDATA     16
+#define SOLV_FLAG_IDARRAYBLOCK 32
 
-/* The format of .solv files might change incompatibly, and that is described
-   by the above version number.  But sometimes we also extend the emitted
-   attributes (e.g. by adding a new one for solvables, for instance patch
-   category).  Consumers need to know if the .solv file they have needs to
-   be regenerated by newer converters or not (or better, if regenerating them
-   would give a different .solv file).  We use this serial number for that.
-   We increase it every time we add or remove attributes (or change the
-   interpretation of them).  Tools installed by the user will have their
-   version compiled in, so they can detect mismatches between .solv files
-   they see and themself.  */
-#define SOLV_CONTENT_VERSION 1
+struct s_Stringpool;
+typedef struct s_Stringpool Stringpool;
 
-#define SOLV_FLAG_PREFIX_POOL 4
+struct s_Pool;
+typedef struct s_Pool Pool;
 
-struct _Stringpool;
-typedef struct _Stringpool Stringpool;
+struct s_Repo;
+typedef struct s_Repo Repo;
 
-struct _Pool;
-typedef struct _Pool Pool;
+struct s_Repodata;
+typedef struct s_Repodata Repodata;
 
-// identifier for string values
+struct s_Solvable;
+typedef struct s_Solvable Solvable;
+
+/* identifier for string values */
 typedef int Id;                /* must be signed!, since negative Id is used in solver rules to denote negation */
 
-// offset value, e.g. used to 'point' into the stringspace
+/* offset value, e.g. used to 'point' into the stringspace */
 typedef unsigned int Offset;
 
+#ifdef __cplusplus
+}
+#endif
+
 #endif /* LIBSOLV_POOLTYPES_H */