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.
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.