problems.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2007-2009, Novell Inc.
00003  *
00004  * This program is licensed under the BSD license, read LICENSE.BSD
00005  * for further information
00006  */
00007 
00008 /*
00009  * problems.h
00010  *
00011  */
00012 
00013 #ifndef SATSOLVER_PROBLEMS_H
00014 #define SATSOLVER_PROBLEMS_H
00015 
00016 #ifdef __cplusplus
00017 extern "C" {
00018 #endif
00019 
00020 
00021 struct _Solver;
00022 
00023 #define SOLVER_SOLUTION_JOB             (0)
00024 #define SOLVER_SOLUTION_DISTUPGRADE     (-1)
00025 #define SOLVER_SOLUTION_INFARCH         (-2)
00026 
00027 void solver_disableproblem(struct _Solver *solv, Id v);
00028 void solver_enableproblem(struct _Solver *solv, Id v);
00029 int solver_prepare_solutions(struct _Solver *solv);
00030 
00031 unsigned int solver_problem_count(struct _Solver *solv);
00032 Id solver_next_problem(struct _Solver *solv, Id problem);
00033 unsigned int solver_solution_count(struct _Solver *solv, Id problem);
00034 Id solver_next_solution(struct _Solver *solv, Id problem, Id solution);
00035 unsigned int solver_solutionelement_count(struct _Solver *solv, Id problem, Id solution);
00036 Id solver_next_solutionelement(struct _Solver *solv, Id problem, Id solution, Id element, Id *p, Id *rp);
00037 
00038 void solver_take_solutionelement(struct _Solver *solv, Id p, Id rp, Queue *job);
00039 void solver_take_solution(struct _Solver *solv, Id problem, Id solution, Queue *job);
00040 
00041 Id solver_findproblemrule(struct _Solver *solv, Id problem);
00042 void solver_findallproblemrules(struct _Solver *solv, Id problem, Queue *rules);
00043 
00044 #ifdef __cplusplus
00045 }
00046 #endif
00047 
00048 #endif
Generated on Mon Dec 12 11:44:12 2011 for satsolver by  doxygen 1.6.3