38#ifndef __GECODE_KERNEL_HH__
39#define __GECODE_KERNEL_HH__
56#if !defined(GECODE_STATIC_LIBS) && \
57 (defined(__CYGWIN__) || defined(__MINGW32__) || defined(_MSC_VER))
59#ifdef GECODE_BUILD_KERNEL
60#define GECODE_KERNEL_EXPORT __declspec( dllexport )
62#define GECODE_KERNEL_EXPORT __declspec( dllimport )
67#ifdef GECODE_GCC_HAS_CLASS_VISIBILITY
68#define GECODE_KERNEL_EXPORT __attribute__ ((visibility("default")))
70#define GECODE_KERNEL_EXPORT
76#ifndef GECODE_BUILD_KERNEL
77#define GECODE_LIBRARY_NAME "Kernel"
97 namespace Kernel {
namespace Config {
222 branch(Home home, std::function<
void(Space& home)> f);
271 trace(Home home, TraceFilter tf,
static StdTracer def
Default tracer (printing to std::cerr)
GECODE_FLOAT_EXPORT void trace(Home home, const FloatVarArgs &x, TraceFilter tf, int te=(TE_INIT|TE_PRUNE|TE_FIX|TE_FAIL|TE_DONE), FloatTracer &t=StdFloatTracer::def)
Create a tracer for float variables.
void branch(Home home, const FloatVarArgs &x, FloatVarBranch vars, FloatValBranch vals, FloatBranchFilter bf=nullptr, FloatVarValPrint vvp=nullptr)
Branch over x with variable selection vars and value selection vals.
@ TE_POST
Trace propagator posting.
@ TE_COMMIT
Trace commit operations by branchers.
@ TE_PROPAGATE
Trace propagator executions.
#define GECODE_KERNEL_EXPORT
const double chb_alpha_decrement
Alpha decrement in CHB.
const double chb_qscore_init
Initial value for Q-score in CHB.
const double rescale_limit
Rescale action and afc values when larger than this.
const double chb_alpha_init
Initial value for alpha in CHB.
const double rescale
Rescale factor for action and afc values.
const double chb_alpha_limit
Limit for decreasing alpha in CHB.
Gecode toplevel namespace