Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
sagemath
GitHub Repository: sagemath/sagesmc
Path: blob/master/src/sage/sat/solvers/cryptominisat/solverconf_helper.h
8823 views
1
/**
2
* @file solverconf_helper.h
3
*
4
* This file implements a map from option names to C++ class
5
* members. This map allows to maintain only one list of options in
6
* the whole Cython interface which means that maintainance is easier
7
* if CryptoMiniSat's interface should change.
8
*/
9
10
/*****************************************************************************
11
* Copyright (C) 2012 Martin Albrecht <[email protected]>
12
* Distributed under the terms of the GNU General Public License (GPL)
13
* The full text of the GPL is available at:
14
* http://www.gnu.org/licenses/
15
****************************************************************************/
16
17
#include <cmsat/SolverConf.h>
18
19
enum sc_type {
20
t_int = 1<<0,
21
t_float = 1<<1,
22
t_double = 1<<2,
23
t_Var = 1<<3,
24
t_bool = 1<<4,
25
t_uint32_t = 1<<5,
26
t_uint64_t = 1<<6,
27
};
28
29
typedef struct {
30
sc_type type;
31
const char *name;
32
void *target;
33
const char *doc;
34
} sc_entry;
35
36
size_t setup_map(sc_entry *entries, CMSat::SolverConf &solver_conf, const size_t n);
37
38