Represents a Cut in the CutPool. More...
#include <cuts.h>
Classes | |
class | NodeInfo |
Public Member Functions | |
Cut (Pointer< CutType > cut_, Pointer< MinlpNode > node=NULL) | |
Cut (const Cut< CutType > &cut_) | |
virtual | ~Cut () |
bool | valid (const Pointer< MinlpNode > &node=NULL) const |
void | add_node (Pointer< MinlpNode > node) |
void | duplicate_nodeinfo (Pointer< MinlpNode > oldnode, Pointer< MinlpNode > newnode) |
Duplicates a CutNodeInfo and uses it for a new node. | |
bool | remove_node (Pointer< MinlpNode > node) |
Removed a node from the nodes-list, if it exists there. | |
pair< bool, bool > | set_inactivetime (Pointer< MinlpNode > node, bool increase, int limit) |
Increases or resets the inactivity time for a node or global. | |
const CutType & | get_cut () const |
Private Attributes | |
Pointer< CutType > | cut |
The cut. | |
map< Pointer< MinlpNode > , NodeInfo > | nodes |
The nodes, which use this cut. | |
bool | global |
Indicates, whether this is a global cut (valid for all nodes). | |
int | inactive_time_global |
If global, the time, this cut was inactive now. | |
bool | tagged |
Used to distinguish between cuts, which were added recently, and cuts, which existed "from the beginning". | |
Friends | |
class | CutPool |
Represents a Cut in the CutPool.
Definition at line 144 of file cuts.h.
void Cut< CutType >::duplicate_nodeinfo | ( | Pointer< MinlpNode > | oldnode, | |
Pointer< MinlpNode > | newnode | |||
) |
Duplicates a CutNodeInfo and uses it for a new node.
Needed, when a node is splitted into new nodes.
Removed a node from the nodes-list, if it exists there.
pair<bool, bool> Cut< CutType >::set_inactivetime | ( | Pointer< MinlpNode > | node, | |
bool | increase, | |||
int | limit | |||
) |
Increases or resets the inactivity time for a node or global.
If this time exceeds a limit, the node is removed from the nodes set. For a global cut, the value of node is nonrelevant.
increase | Whether to increase the inactive timer or to set it to 0. | |
limit | The limit for inactivity. |
const CutType& Cut< CutType >::get_cut | ( | ) | const [inline] |
int Cut< CutType >::inactive_time_global [private] |