support -X option in rpmmd2solv, make add_autopattern available in bindings
[platform/upstream/libsolv.git] / src / selection.h
index 2a3662f..fc2b15d 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, Novell Inc.
+ * Copyright (c) 2012, Novell Inc.
  *
  * This program is licensed under the BSD license, read LICENSE.BSD
  * for further information
@@ -7,7 +7,7 @@
 
 /*
  * selection.h
- * 
+ *
  */
 
 #ifndef LIBSOLV_SELECTION_H
 
 #include "pool.h"
 
+#ifdef __cplusplus
+extern "C" {
+#endif
+
 #define SELECTION_NAME                 (1 << 0)
 #define SELECTION_PROVIDES             (1 << 1)
 #define SELECTION_FILELIST             (1 << 2)
+#define SELECTION_CANON                        (1 << 3)
+#define SELECTION_DOTARCH              (1 << 4)
+#define SELECTION_REL                  (1 << 5)
 
 #define SELECTION_INSTALLED_ONLY       (1 << 8)
 #define SELECTION_GLOB                 (1 << 9)
 #define SELECTION_FLAT                 (1 << 10)
 #define SELECTION_NOCASE               (1 << 11)
-#define SELECTION_SOURCE               (1 << 12)
+#define SELECTION_SOURCE_ONLY          (1 << 12)
+#define SELECTION_WITH_SOURCE          (1 << 13)
+#define SELECTION_SKIP_KIND            (1 << 14)
 
 extern int  selection_make(Pool *pool, Queue *selection, const char *name, int flags);
-extern void selection_limit(Pool *pool, Queue *sel1, Queue *sel2);
+extern int  selection_make_matchdeps(Pool *pool, Queue *selection, const char *name, int flags, int keyname, int marker);
+
+extern void selection_filter(Pool *pool, Queue *sel1, Queue *sel2);
 extern void selection_add(Pool *pool, Queue *sel1, Queue *sel2);
 extern void selection_solvables(Pool *pool, Queue *selection, Queue *pkgs);
 
+extern const char *pool_selection2str(Pool *pool, Queue *selection, Id flagmask);
+
+#ifdef __cplusplus
+}
+#endif
+
 #endif