44 os <<
"trace<Set>::init(id:" << t.
id();
47 os <<
") slack: 100.00% (" << t.
slack().initial() <<
" values)"
54 os <<
"trace<Set>::prune(id:" << t.
id();
57 os <<
"): [" << i <<
"] = " << t[i] <<
" + {";
61 os << glb.
min() <<
".." << glb.
max();
64 os <<
"," << glb.
min() <<
".." << glb.
max();
73 os << lub.
min() <<
".." << lub.
max();
76 os <<
"," << lub.
min() <<
".." << lub.
max();
81 os <<
"} by " << vti << std::endl;
86 os <<
"trace<Set>::fix(id:" << t.
id();
90 double sl_i =
static_cast<double>(t.
slack().initial());
91 double sl_p =
static_cast<double>(t.
slack().previous());
92 double sl_c =
static_cast<double>(t.
slack().current());
93 double p_c = 100.0 * (sl_c / sl_i);
94 double p_d = 100.0 * (sl_p / sl_i) - p_c;
95 os << std::showpoint << std::setprecision(4)
97 << std::showpoint << std::setprecision(4)
104 os <<
"trace<Set>::fail(id:" << t.
id();
108 double sl_i =
static_cast<double>(t.
slack().initial());
109 double sl_p =
static_cast<double>(t.
slack().previous());
110 double sl_c =
static_cast<double>(t.
slack().current());
111 double p_c = 100.0 * (sl_c / sl_i);
112 double p_d = 100.0 * (sl_p / sl_i) - p_c;
113 os << std::showpoint << std::setprecision(4)
115 << std::showpoint << std::setprecision(4)
122 os <<
"trace<Set>::done(id:" << t.
id();
125 os <<
") slack: 0%" << std::endl;
unsigned int id(void) const
Return a unique id for the group.
bool in(Group a) const
Check whether actor group a is included in this group.
int min(void) const
Return smallest value of range.
int max(void) const
Return largest value of range.
unsigned int id(void) const
Return propagator id.
PropagatorGroup group(void) const
Return group propagator belongs to.
Delta for the greatest lower bound.
Delta for the least upper bound.
Trace delta information for set variables.
Standard set variable tracer.
virtual void done(const Space &home, const SetTraceRecorder &t)
Print that trace recorder is done.
virtual void init(const Space &home, const SetTraceRecorder &t)
Print init information.
StdSetTracer(std::ostream &os0=std::cerr)
Initialize with output stream os0.
virtual void fail(const Space &home, const SetTraceRecorder &t)
Print failure information.
virtual void prune(const Space &home, const SetTraceRecorder &t, const ViewTraceInfo &vti, int i, SetTraceDelta &d)
Print prune information.
virtual void fix(const Space &home, const SetTraceRecorder &t)
Print fixpoint information.
std::ostream & os
Output stream to use.
static StdSetTracer def
Default tracer (printing to std::cerr)
const Slack & slack(void) const
Provide access to slack information.
ViewTraceRecorder< Set::SetView > SetTraceRecorder
Trace recorder for set variables.
Gecode toplevel namespace