37 #ifndef __GECODE_GIST_HH__
38 #define __GECODE_GIST_HH__
43 #ifdef GECODE_HAS_SET_VARS
46 #ifdef GECODE_HAS_FLOAT_VARS
55 #if !defined(GIST_STATIC_LIBS) && \
56 (defined(__CYGWIN__) || defined(__MINGW32__) || defined(_MSC_VER))
58 #ifdef GECODE_BUILD_GIST
59 #define GECODE_GIST_EXPORT __declspec( dllexport )
61 #define GECODE_GIST_EXPORT __declspec( dllimport )
66 #ifdef GECODE_GCC_HAS_CLASS_VISIBILITY
67 #define GECODE_GIST_EXPORT __attribute__ ((visibility("default")))
69 #define GECODE_GIST_EXPORT
75 #ifndef GECODE_BUILD_GIST
76 #define GECODE_LIBRARY_NAME "Gist"
106 virtual void inspect(
const Space& s) = 0;
108 virtual std::string name(
void);
110 virtual void finalize(
void);
131 virtual std::string name(
void);
133 virtual void finalize(
void);
150 #ifdef GECODE_HAS_SET_VARS
154 #ifdef GECODE_HAS_FLOAT_VARS
174 std::ostream& getStream(
void);
178 void addHtml(
const char* s);
187 virtual std::string name(
void);
199 virtual std::string
name(
void);
222 virtual std::string
name(
void);
244 unsigned int n_click;
246 unsigned int n_solution;
250 unsigned int n_compare;
void click(Inspector *i)
Add inspector that reacts on node double clicks.
Abstract base class for comparators.
#define GECODE_GIST_EXPORT
void stopBranch(Space &home)
A branching that stops exploration.
virtual void inspect(const Space &node)
Use the print method of the template class S to print a space.
Array with arbitrary number of elements.
Helper class storing inspectors.
Abstract base class for inspectors.
virtual void finalize(void)
Clean up when Gist exits.
void solution(Inspector *i)
Add inspector that reacts on each new solution that is found.
Gecode::FloatVal c(-8, 8)
Gecode::IntArgs i(4, 1, 2, 3, 4)
int n
Number of negative literals for node type.
int dfs(Space *root, const Gist::Options &opt)
Create a new stand-alone Gist for root.
Print(const std::string &name)
Constructor.
Options(void)
Initialize with default values.
Boolean integer variables.
VarComparator(std::string name)
Constructor.
Node * x
Pointer to corresponding Boolean expression node.
virtual void finalize(void)
Finalize when Gist exits.
virtual void compare(const Space &s0, const Space &s1)
Compare s0 to s1.
int bab(Space *root, const Gist::Options &opt)
Create a new stand-alone Gist for branch-and-bound search of root.
An window for simple text output.
virtual std::string name(void)
Return name.
static const Options def
Default options.
CompareStatus compare(I &i, J &j)
Check whether range iterator i is a subset of j, or whether they are disjoint.
class Gecode::Gist::Options::_I inspect
int explore(Space *root, bool bab, const Options &opt)
Create a new stand-alone Gist for root using bab.
Gecode toplevel namespace
Argument array for variables.
An inspector for printing simple text output.
Window with associated ostream, used for inspecting Gist nodes.
void compare(Comparator *c)
Add comparator.
virtual std::string name(void)
Return name.
void move(Inspector *i)
Add inspector that reacts on each move of the cursor.