Gecode::Int::GCC::Node Class Reference

Base class for nodes in the variable-value-graph. More...

`#include <dom-sup.hpp>`

## Public Attributes

int | noe
| stores the number of incident edges on the node

## Protected Types

enum | NodeFlag { NF_NONE = 0 , NF_VAL = 1 << 0 , NF_M_LBC = 1 << 1 , NF_M_UBC = 1 << 2 }
| Flags for nodes. More...

## Protected Attributes

Edge * | e
| Stores all incident edges on the node.
Edge * | fst
| First edge.
Edge * | lst
| Last edge.
Edge * | ie
| Single incoming edge used for storing a path in the algorithms.
int | idx
| Index.
unsigned char | nf
| Flags for node.

## Constructors and initialization

| Node (void)
| Default constructor.
| Node (NodeFlag nf, int i)
| Constructor for index i that sets type to t.

## Access

bool | type (void) const
| Return the type of the node (false for a variable node).
Edge ** | adj (void)
| Return reference to the incident edges.
Edge * | first (void) const
| Return pointer to the first incident edge.
Edge * | last (void) const
| Return pointer to the last incident edge.
Edge * | inedge (void) const
| Return pointer to the node's inedge.
int | index (void) const
| Get index of either variable or value.
bool | removed (void) const
| check whether a node has been removed from the graph

## Update

void | first (Edge *p)
| Set the first edge pointer to p.
void | last (Edge *p)
| Set the last edge pointer to p.
void | inedge (Edge *p)
| Set the inedge pointer to p.
void | index (int i)
| Set index of either variable or value.

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

Base class for nodes in the variable-value-graph.

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

## Member Enumeration Documentation

## NodeFlag

enum Gecode::Int::GCC::Node::NodeFlag

protected

Flags for nodes.

Enumerator
NF_NONE | No flags set.
NF_VAL | Whether node is a value node.
NF_M_LBC | Whether matched for LBC.
NF_M_UBC | Whether matched for UBC.

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

## Constructor & Destructor Documentation

## Node() [1/2]

Gecode::Int::GCC::Node::Node | ( | void |  | ) |

inline

Default constructor.

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

## Node() [2/2]

Gecode::Int::GCC::Node::Node | ( | NodeFlag | nf,
|  | int | i )

inline

Constructor for index i that sets type to t.

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

## Member Function Documentation

## type()

bool Gecode::Int::GCC::Node::type | ( | void |  | ) | const

inline

Return the type of the node (false for a variable node).

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

## adj()

Edge ** Gecode::Int::GCC::Node::adj | ( | void |  | ) |

inline

Return reference to the incident edges.

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

## first() [1/2]

Edge * Gecode::Int::GCC::Node::first | ( | void |  | ) | const

inline

Return pointer to the first incident edge.

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

## last() [1/2]

Edge * Gecode::Int::GCC::Node::last | ( | void |  | ) | const

inline

Return pointer to the last incident edge.

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

## inedge() [1/2]

Edge * Gecode::Int::GCC::Node::inedge | ( | void |  | ) | const

inline

Return pointer to the node's inedge.

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

## index() [1/2]

int Gecode::Int::GCC::Node::index | ( | void |  | ) | const

inline

Get index of either variable or value.

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

## removed()

bool Gecode::Int::GCC::Node::removed | ( | void |  | ) | const

inline

check whether a node has been removed from the graph

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

## first() [2/2]

void Gecode::Int::GCC::Node::first | ( | Edge * | p | ) |

inline

Set the first edge pointer to p.

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

## last() [2/2]

void Gecode::Int::GCC::Node::last | ( | Edge * | p | ) |

inline

Set the last edge pointer to p.

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

## inedge() [2/2]

void Gecode::Int::GCC::Node::inedge | ( | Edge * | p | ) |

inline

Set the inedge pointer to p.

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

## index() [2/2]

void Gecode::Int::GCC::Node::index | ( | int | i | ) |

inline

Set index of either variable or value.

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

## operator new()

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

inline static

Allocate memory from space.

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

## operator delete() [1/2]

void Gecode::Int::GCC::Node::operator delete | ( | void * | ,
|  | Space & | )

inline static

Free memory (unused).

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

## operator delete() [2/2]

void Gecode::Int::GCC::Node::operator delete | ( | void * |  | ) |

inline static

Needed for exceptions.

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

## Member Data Documentation

## e

Edge* Gecode::Int::GCC::Node::e

protected

Stores all incident edges on the node.

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

## fst

Edge* Gecode::Int::GCC::Node::fst

protected

First edge.

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

## lst

Edge* Gecode::Int::GCC::Node::lst

protected

Last edge.

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

## ie

Edge* Gecode::Int::GCC::Node::ie

protected

Single incoming edge used for storing a path in the algorithms.

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

## idx

int Gecode::Int::GCC::Node::idx

protected

Index.

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

## nf

unsigned char Gecode::Int::GCC::Node::nf

protected

Flags for node.

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

## noe

int Gecode::Int::GCC::Node::noe

stores the number of incident edges on the node

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

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

- gecode/int/gcc/dom-sup.hpp