]> git.ipfire.org Git - pakfire.git/blob - src/solver.h
Move from libsatsolver to libsolv.
[pakfire.git] / src / solver.h
1
2 #ifndef PAKFIRE_SOLVER_H
3 #define PAKFIRE_SOLVER_H
4
5 #include <Python.h>
6
7 #include <solv/solver.h>
8
9 // Sat Solver object
10 typedef struct {
11 PyObject_HEAD
12 Solver *_solver;
13 } SolverObject;
14
15 extern PyObject* Solver_new(PyTypeObject *type, PyObject *args, PyObject *kwds);
16 extern PyObject *Solver_dealloc(SolverObject *self);
17
18 extern PyObject *Solver_get_fix_system(SolverObject *self, PyObject *args);
19 extern PyObject *Solver_set_fix_system(SolverObject *self, PyObject *args);
20 extern PyObject *Solver_get_allow_downgrade(SolverObject *self, PyObject *args);
21 extern PyObject *Solver_set_allow_downgrade(SolverObject *self, PyObject *args);
22 extern PyObject *Solver_get_allow_archchange(SolverObject *self, PyObject *args);
23 extern PyObject *Solver_set_allow_archchange(SolverObject *self, PyObject *args);
24 extern PyObject *Solver_get_allow_vendorchange(SolverObject *self, PyObject *args);
25 extern PyObject *Solver_set_allow_vendorchange(SolverObject *self, PyObject *args);
26 extern PyObject *Solver_get_allow_uninstall(SolverObject *self, PyObject *args);
27 extern PyObject *Solver_set_allow_uninstall(SolverObject *self, PyObject *args);
28 extern PyObject *Solver_get_updatesystem(SolverObject *self, PyObject *args);
29 extern PyObject *Solver_set_updatesystem(SolverObject *self, PyObject *args);
30 extern PyObject *Solver_get_do_split_provides(SolverObject *self, PyObject *args);
31 extern PyObject *Solver_set_do_split_provides(SolverObject *self, PyObject *args);
32
33 extern PyObject *Solver_solve(SolverObject *self, PyObject *args);
34 extern PyObject *Solver_get_problems(SolverObject *self, PyObject *args);
35
36 extern PyTypeObject SolverType;
37
38 #endif