Generated on Sat Jul 29 2017 12:41:24 for Gecode by doxygen 1.8.13
Gecode::ViewTraceRecorder< View > Class Template Reference

Propagator for recording view trace information. More...

#include <trace-recorder.hpp>

Classes

class  Idx
 Advisor with index information. More...
 
class  Slack
 Collection of slack values. More...
 

Public Types

typedef TraceTraits< View >::TraceView TraceView
 The corresponding duplicate view type. More...
 
typedef TraceTraits< View >::TraceDelta TraceDelta
 The corresponding trace delta type. More...
 
typedef TraceTraits< View >::SlackValue SlackValue
 The corresponding slack value type. More...
 

Public Member Functions

 ViewTraceRecorder (Home home, ViewArray< View > &x, TraceFilter tf, int te, ViewTracer< View > &t)
 Constructor for creation. More...
 
virtual Propagatorcopy (Space &home, bool share)
 Copy propagator during cloning. More...
 
virtual PropCost cost (const Space &home, const ModEventDelta &med) const
 Cost function (record so that propagator runs last) More...
 
virtual void reschedule (Space &home)
 Schedule function. More...
 
virtual ExecStatus advise (Space &home, Advisor &a, const Delta &d)
 Give advice to propagator. More...
 
virtual ExecStatus propagate (Space &home, const ModEventDelta &med)
 Perform propagation. More...
 
virtual size_t dispose (Space &home)
 Delete propagator and return its size. More...
 
- Public Member Functions inherited from Gecode::Propagator
ModEventDelta modeventdelta (void) const
 Return the modification event delta. More...
 
virtual void advise (Space &home, Advisor &a)
 Run advisor a to be run on failure in failed space. More...
 
double afc (void) const
 Return the accumlated failure count. More...
 
unsigned int id (void) const
 Return propagator id. More...
 
PropagatorGroup group (void) const
 Return group propagator belongs to. More...
 
void group (PropagatorGroup g)
 Add propagator to group g. More...
 
bool disabled (void) const
 Whether propagator is currently disabled. More...
 
- Public Member Functions inherited from Gecode::Actor
virtual ~Actor (void)
 To avoid warnings. More...
 

Static Public Member Functions

static ExecStatus post (Home home, ViewArray< View > &x, TraceFilter tf, int te, ViewTracer< View > &t)
 Post recorder propagator. More...
 
- Static Public Member Functions inherited from Gecode::Actor
static void * operator new (size_t s)
 Not used. More...
 
static void operator delete (void *p)
 Not used. More...
 
static void * operator new (size_t s, Space &home)
 Allocate memory from space. More...
 
static void operator delete (void *p, Space &home)
 No-op for exceptions. More...
 

Protected Member Functions

 ViewTraceRecorder (Space &home, bool share, ViewTraceRecorder &p)
 Constructor for cloning p. More...
 
- Protected Member Functions inherited from Gecode::Propagator
 Propagator (Home home)
 Constructor for posting. More...
 
 Propagator (Space &home, bool share, Propagator &p)
 Constructor for cloning p. More...
 
Propagatorfwd (void) const
 Return forwarding pointer during copying. More...
 
GPI::Infogpi (void)
 Provide access to global propagator information. More...
 

Protected Attributes

ViewArray< TraceViewo
 Duplicate views (old information) More...
 
ViewArray< View > n
 Original views (new information) More...
 
Council< Idxc
 The advisor council. More...
 
TraceFilter tf
 The trace filter. More...
 
int te
 Which events to trace. More...
 
ViewTracer< View > & t
 The actual tracer. More...
 
Slack s
 Slack information. More...
 

Trace information

const View::VarType operator[] (int i) const
 Return variable being traced at position i. More...
 
int size (void) const
 Return number of variables being traced. More...
 
const Slackslack (void) const
 Provide access to slack information. More...
 

Detailed Description

template<class View>
class Gecode::ViewTraceRecorder< View >

Propagator for recording view trace information.

Definition at line 63 of file trace-recorder.hpp.

Member Typedef Documentation

◆ TraceView

template<class View>
typedef TraceTraits<View>::TraceView Gecode::ViewTraceRecorder< View >::TraceView

The corresponding duplicate view type.

Definition at line 66 of file trace-recorder.hpp.

◆ TraceDelta

template<class View>
typedef TraceTraits<View>::TraceDelta Gecode::ViewTraceRecorder< View >::TraceDelta

The corresponding trace delta type.

Definition at line 68 of file trace-recorder.hpp.

◆ SlackValue

template<class View>
typedef TraceTraits<View>::SlackValue Gecode::ViewTraceRecorder< View >::SlackValue

The corresponding slack value type.

Definition at line 70 of file trace-recorder.hpp.

Constructor & Destructor Documentation

◆ ViewTraceRecorder() [1/2]

template<class View >
Gecode::ViewTraceRecorder< View >::ViewTraceRecorder ( Space home,
bool  share,
ViewTraceRecorder< View > &  p 
)
inlineprotected

Constructor for cloning p.

Definition at line 304 of file trace-recorder.hpp.

◆ ViewTraceRecorder() [2/2]

template<class View>
Gecode::ViewTraceRecorder< View >::ViewTraceRecorder ( Home  home,
ViewArray< View > &  x,
TraceFilter  tf,
int  te,
ViewTracer< View > &  t 
)
inline

Constructor for creation.

Definition at line 265 of file trace-recorder.hpp.

Member Function Documentation

◆ copy()

template<class View >
Propagator * Gecode::ViewTraceRecorder< View >::copy ( Space home,
bool  share 
)
virtual

Copy propagator during cloning.

Implements Gecode::Actor.

Definition at line 315 of file trace-recorder.hpp.

◆ cost()

template<class View >
PropCost Gecode::ViewTraceRecorder< View >::cost ( const Space home,
const ModEventDelta med 
) const
virtual

Cost function (record so that propagator runs last)

Implements Gecode::Propagator.

Definition at line 335 of file trace-recorder.hpp.

◆ reschedule()

template<class View >
void Gecode::ViewTraceRecorder< View >::reschedule ( Space home)
virtual

Schedule function.

Implements Gecode::Propagator.

Definition at line 341 of file trace-recorder.hpp.

◆ advise()

template<class View >
ExecStatus Gecode::ViewTraceRecorder< View >::advise ( Space home,
Advisor a,
const Delta d 
)
virtual

Give advice to propagator.

Reimplemented from Gecode::Propagator.

Definition at line 347 of file trace-recorder.hpp.

◆ propagate()

template<class View >
ExecStatus Gecode::ViewTraceRecorder< View >::propagate ( Space home,
const ModEventDelta med 
)
virtual

Perform propagation.

Implements Gecode::Propagator.

Definition at line 362 of file trace-recorder.hpp.

◆ dispose()

template<class View >
size_t Gecode::ViewTraceRecorder< View >::dispose ( Space home)
inlinevirtual

Delete propagator and return its size.

Reimplemented from Gecode::Actor.

Definition at line 321 of file trace-recorder.hpp.

◆ post()

template<class View>
ExecStatus Gecode::ViewTraceRecorder< View >::post ( Home  home,
ViewArray< View > &  x,
TraceFilter  tf,
int  te,
ViewTracer< View > &  t 
)
inlinestatic

Post recorder propagator.

Definition at line 289 of file trace-recorder.hpp.

◆ operator[]()

template<class View >
const View::VarType Gecode::ViewTraceRecorder< View >::operator[] ( int  i) const
inline

Return variable being traced at position i.

Definition at line 200 of file trace-recorder.hpp.

◆ size()

template<class View >
int Gecode::ViewTraceRecorder< View >::size ( void  ) const
inline

Return number of variables being traced.

Definition at line 206 of file trace-recorder.hpp.

◆ slack()

template<class View >
const ViewTraceRecorder< View >::Slack & Gecode::ViewTraceRecorder< View >::slack ( void  ) const
inline

Provide access to slack information.

Definition at line 211 of file trace-recorder.hpp.

Member Data Documentation

◆ o

template<class View>
ViewArray<TraceView> Gecode::ViewTraceRecorder< View >::o
protected

Duplicate views (old information)

Definition at line 104 of file trace-recorder.hpp.

◆ n

template<class View>
ViewArray<View> Gecode::ViewTraceRecorder< View >::n
protected

Original views (new information)

Definition at line 106 of file trace-recorder.hpp.

◆ c

template<class View>
Council<Idx> Gecode::ViewTraceRecorder< View >::c
protected

The advisor council.

Definition at line 108 of file trace-recorder.hpp.

◆ tf

template<class View>
TraceFilter Gecode::ViewTraceRecorder< View >::tf
protected

The trace filter.

Definition at line 110 of file trace-recorder.hpp.

◆ te

template<class View>
int Gecode::ViewTraceRecorder< View >::te
protected

Which events to trace.

Definition at line 112 of file trace-recorder.hpp.

◆ t

template<class View>
ViewTracer<View>& Gecode::ViewTraceRecorder< View >::t
protected

The actual tracer.

Definition at line 114 of file trace-recorder.hpp.

◆ s

template<class View>
Slack Gecode::ViewTraceRecorder< View >::s
protected

Slack information.

Definition at line 116 of file trace-recorder.hpp.


The documentation for this class was generated from the following file: