Generated on Fri Oct 19 11:26:16 2018 for Gecode by doxygen 1.6.3

Gecode::Int::ViewValGraph::Edge< View > Class Template Reference

Edges in view-value graph. More...

#include <view-val-graph.hh>

List of all members.

Public Member Functions

 Edge (ValNode< View > *v, ViewNode< View > *x)
 Construct new edge between x and v.
 Edge (ValNode< View > *v, ViewNode< View > *x, Edge< View > *n)
 Construct new edge between x and v with next edge n.
Node< View > * dst (Node< View > *s) const
 Return destination of edge when source s is given.
ViewNode< View > * view (ValNode< View > *v) const
 Return view node when value node v is given.
ValNode< View > * val (ViewNode< View > *x) const
 Return value node when view node x is given.
bool used (Node< View > *v) const
 Whether edge is used (marked or between nodes from the same scc).
void use (void)
 Mark node as used.
void free (void)
 Unmark node as used.
void revert (Node< View > *d)
 Revert edge to node d for matching.
Edge< View > * next_edge (void) const
 Return next edge in list of value edges.
Edge< View > ** next_edge_ref (void)
 Return reference to next edge in list of value edges.
Edge< View > * next (void) const
 Return next edge in list of edges per node.

Static Public Member Functions

static void * operator new (size_t, Space &)
 Allocate memory from space.
static void operator delete (void *, size_t)
 Needed for exceptions.
static void operator delete (void *, Space &)
 Needed for exceptions.

Protected Attributes

Edge< View > * _next_edge
 Next edge in chain of value edges.
CombPtrFlag< Node< View > > sd
 Combine source and destination node and flag.

Detailed Description

template<class View>
class Gecode::Int::ViewValGraph::Edge< View >

Edges in view-value graph.

Definition at line 208 of file view-val-graph.hh.


Constructor & Destructor Documentation

template<class View>
Gecode::Int::ViewValGraph::Edge< View >::Edge ( ValNode< View > *  v,
ViewNode< View > *  x 
) [inline]

Construct new edge between x and v.

Definition at line 38 of file edge.hpp.

template<class View>
Gecode::Int::ViewValGraph::Edge< View >::Edge ( ValNode< View > *  v,
ViewNode< View > *  x,
Edge< View > *  n 
) [inline]

Construct new edge between x and v with next edge n.

Definition at line 44 of file edge.hpp.


Member Function Documentation

template<class View>
Node< View > * Gecode::Int::ViewValGraph::Edge< View >::dst ( Node< View > *  s  )  const [inline]

Return destination of edge when source s is given.

Definition at line 51 of file edge.hpp.

template<class View>
ViewNode< View > * Gecode::Int::ViewValGraph::Edge< View >::view ( ValNode< View > *  v  )  const [inline]

Return view node when value node v is given.

Definition at line 64 of file edge.hpp.

template<class View>
ValNode< View > * Gecode::Int::ViewValGraph::Edge< View >::val ( ViewNode< View > *  x  )  const [inline]

Return value node when view node x is given.

Definition at line 69 of file edge.hpp.

template<class View>
bool Gecode::Int::ViewValGraph::Edge< View >::used ( Node< View > *  v  )  const [inline]

Whether edge is used (marked or between nodes from the same scc).

Definition at line 75 of file edge.hpp.

template<class View >
void Gecode::Int::ViewValGraph::Edge< View >::use ( void   )  [inline]

Mark node as used.

Definition at line 80 of file edge.hpp.

template<class View >
void Gecode::Int::ViewValGraph::Edge< View >::free ( void   )  [inline]

Unmark node as used.

Definition at line 85 of file edge.hpp.

template<class View>
void Gecode::Int::ViewValGraph::Edge< View >::revert ( Node< View > *  d  )  [inline]

Revert edge to node d for matching.

Definition at line 57 of file edge.hpp.

template<class View >
Edge< View > * Gecode::Int::ViewValGraph::Edge< View >::next_edge ( void   )  const [inline]

Return next edge in list of value edges.

Definition at line 91 of file edge.hpp.

template<class View >
Edge< View > ** Gecode::Int::ViewValGraph::Edge< View >::next_edge_ref ( void   )  [inline]

Return reference to next edge in list of value edges.

Definition at line 96 of file edge.hpp.

template<class View >
Edge< View > * Gecode::Int::ViewValGraph::Edge< View >::next ( void   )  const [inline]

Return next edge in list of edges per node.

Reimplemented from Gecode::Int::ViewValGraph::BiLink.

Definition at line 101 of file edge.hpp.

template<class View >
void * Gecode::Int::ViewValGraph::Edge< View >::operator new ( size_t  s,
Space home 
) [inline, static]

Allocate memory from space.

Definition at line 113 of file edge.hpp.

template<class View >
void Gecode::Int::ViewValGraph::Edge< View >::operator delete ( void *  ,
size_t   
) [inline, static]

Needed for exceptions.

Definition at line 107 of file edge.hpp.

template<class View >
void Gecode::Int::ViewValGraph::Edge< View >::operator delete ( void *  ,
Space  
) [inline, static]

Needed for exceptions.

Definition at line 110 of file edge.hpp.


Member Data Documentation

template<class View>
Edge<View>* Gecode::Int::ViewValGraph::Edge< View >::_next_edge [protected]

Next edge in chain of value edges.

Definition at line 211 of file view-val-graph.hh.

template<class View>
CombPtrFlag<Node<View> > Gecode::Int::ViewValGraph::Edge< View >::sd [protected]

Combine source and destination node and flag.

Definition at line 213 of file view-val-graph.hh.


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