Generated on Thu Jan 16 2025 00:00:00 for Gecode by doxygen 1.14.0
Gecode::Int::GCC::Edge Class Reference

Class for edges $ e(x,v) $ in the variable-value-graph. More...

#include <dom-sup.hpp>

Constructors

 Edge (void)
 Default constructor.
 Edge (VarNode *x, ValNode *v)
 Construct edge $e(x,v)$ from variable node x and value node y.

Access

bool used (BC bc) const
 Whether the edge is used.
bool matched (BC bc) const
 return whether the edge is matched
bool deleted (void) const
 return whether the edge has been deleted from the graph
Edgenext (bool t) const
 return a pointer to the next edge If t is false the function returns the next edge incident on x otherwise it returns the next edge incident on v
Edgenext (void) const
 return the pointer to the next edge incident on x
Edgeprev (void) const
 return the pointer to the previous edge incident on x
Edgevnext (void) const
 return the pointer to the next edge incident on v
Edgevprev (void) const
 return the pointer to the previous edge incident on v
VarNodegetVar (void) const
 return the pointer to the variable node x of this edge
ValNodegetVal (void) const
 return the pointer to the value node v of this edge
NodegetMate (bool t) const
 return pointer to x if t = true otherwise return v
void use (BC bc)
 Update.
void free (BC bc)
 Mark the edge as unused.
void reset (BC bc)
 Reset the edge (free the edge, and unmatch the edge)
void match (BC bc)
 Match the edge.
void unmatch (BC bc)
 Unmatch the edge and the incident nodes.
void unmatch (BC bc, bool t)
 Unmatch the edge and ( x if t=false, v otherwise )
void unlink (void)
 Unlink the edge from the linked list of edges.
void del_edge (void)
 Mark the edge as deleted during synchronization.
void insert_edge (void)
 Insert the edge again.
Edge ** next_ref (void)
 return the reference to the next edge incident on x
Edge ** prev_ref (void)
 return the reference to the previous edge incident on x
Edge ** vnext_ref (void)
 return the reference to the next edge incident on v
Edge ** vprev_ref (void)
 return the reference to the previous edge incident on v

Memory management

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

Detailed Description

Class for edges $ e(x,v) $ in the variable-value-graph.

Definition at line 264 of file dom-sup.hpp.

Constructor & Destructor Documentation

◆ Edge() [1/2]

Gecode::Int::GCC::Edge::Edge ( void )
inline

Default constructor.

Definition at line 299 of file dom-sup.hpp.

◆ Edge() [2/2]

Gecode::Int::GCC::Edge::Edge ( VarNode * x,
ValNode * v )
inline

Construct edge $e(x,v)$ from variable node x and value node y.

Definition at line 845 of file dom-sup.hpp.

Member Function Documentation

◆ used()

bool Gecode::Int::GCC::Edge::used ( BC bc) const
inline

Whether the edge is used.

Definition at line 865 of file dom-sup.hpp.

◆ matched()

bool Gecode::Int::GCC::Edge::matched ( BC bc) const
inline

return whether the edge is matched

Definition at line 970 of file dom-sup.hpp.

◆ deleted()

bool Gecode::Int::GCC::Edge::deleted ( void ) const
inline

return whether the edge has been deleted from the graph

Definition at line 989 of file dom-sup.hpp.

◆ next() [1/2]

Edge * Gecode::Int::GCC::Edge::next ( bool t) const
inline

return a pointer to the next edge If t is false the function returns the next edge incident on x otherwise it returns the next edge incident on v

Definition at line 876 of file dom-sup.hpp.

◆ next() [2/2]

Edge * Gecode::Int::GCC::Edge::next ( void ) const
inline

return the pointer to the next edge incident on x

Definition at line 872 of file dom-sup.hpp.

◆ prev()

Edge * Gecode::Int::GCC::Edge::prev ( void ) const
inline

return the pointer to the previous edge incident on x

Definition at line 893 of file dom-sup.hpp.

◆ vnext()

Edge * Gecode::Int::GCC::Edge::vnext ( void ) const
inline

return the pointer to the next edge incident on v

Definition at line 885 of file dom-sup.hpp.

◆ vprev()

Edge * Gecode::Int::GCC::Edge::vprev ( void ) const
inline

return the pointer to the previous edge incident on v

Definition at line 901 of file dom-sup.hpp.

◆ getVar()

VarNode * Gecode::Int::GCC::Edge::getVar ( void ) const
inline

return the pointer to the variable node x of this edge

Definition at line 913 of file dom-sup.hpp.

◆ getVal()

ValNode * Gecode::Int::GCC::Edge::getVal ( void ) const
inline

return the pointer to the value node v of this edge

Definition at line 919 of file dom-sup.hpp.

◆ getMate()

Node * Gecode::Int::GCC::Edge::getMate ( bool t) const
inline

return pointer to x if t = true otherwise return v

Definition at line 925 of file dom-sup.hpp.

◆ use()

void Gecode::Int::GCC::Edge::use ( BC bc)
inline

Update.

Mark the edge as used

Definition at line 851 of file dom-sup.hpp.

◆ free()

void Gecode::Int::GCC::Edge::free ( BC bc)
inline

Mark the edge as unused.

Definition at line 858 of file dom-sup.hpp.

◆ reset()

void Gecode::Int::GCC::Edge::reset ( BC bc)
inline

Reset the edge (free the edge, and unmatch the edge)

Definition at line 954 of file dom-sup.hpp.

◆ match()

void Gecode::Int::GCC::Edge::match ( BC bc)
inline

Match the edge.

Definition at line 959 of file dom-sup.hpp.

◆ unmatch() [1/2]

void Gecode::Int::GCC::Edge::unmatch ( BC bc)
inline

Unmatch the edge and the incident nodes.

Definition at line 933 of file dom-sup.hpp.

◆ unmatch() [2/2]

void Gecode::Int::GCC::Edge::unmatch ( BC bc,
bool t )
inline

Unmatch the edge and ( x if t=false, v otherwise )

Definition at line 942 of file dom-sup.hpp.

◆ unlink()

void Gecode::Int::GCC::Edge::unlink ( void )
inline

Unlink the edge from the linked list of edges.

Definition at line 808 of file dom-sup.hpp.

◆ del_edge()

void Gecode::Int::GCC::Edge::del_edge ( void )
inline

Mark the edge as deleted during synchronization.

Definition at line 978 of file dom-sup.hpp.

◆ insert_edge()

void Gecode::Int::GCC::Edge::insert_edge ( void )
inline

Insert the edge again.

Definition at line 983 of file dom-sup.hpp.

◆ next_ref()

Edge ** Gecode::Int::GCC::Edge::next_ref ( void )
inline

return the reference to the next edge incident on x

Definition at line 909 of file dom-sup.hpp.

◆ prev_ref()

Edge ** Gecode::Int::GCC::Edge::prev_ref ( void )
inline

return the reference to the previous edge incident on x

Definition at line 897 of file dom-sup.hpp.

◆ vnext_ref()

Edge ** Gecode::Int::GCC::Edge::vnext_ref ( void )
inline

return the reference to the next edge incident on v

Definition at line 889 of file dom-sup.hpp.

◆ vprev_ref()

Edge ** Gecode::Int::GCC::Edge::vprev_ref ( void )
inline

return the reference to the previous edge incident on v

Definition at line 905 of file dom-sup.hpp.

◆ operator new()

void * Gecode::Int::GCC::Edge::operator new ( size_t s,
Space & home )
inlinestatic

Allocate memory from space.

Definition at line 994 of file dom-sup.hpp.

◆ operator delete() [1/2]

void Gecode::Int::GCC::Edge::operator delete ( void * ,
Space &  )
inlinestatic

Free memory (unused)

Definition at line 375 of file dom-sup.hpp.

◆ operator delete() [2/2]

void Gecode::Int::GCC::Edge::operator delete ( void * )
inlinestatic

Needed for exceptions.

Definition at line 377 of file dom-sup.hpp.


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