NO FRAMES

Class IloCplex::NodeEvaluator

Definition file: ilcplex/ilocplexi.h

This class is the handle class for objects of type IloCplex::NodeEvaluatorI. Node evaluators can be used to control the node selection strategy during goal-controlled search. That is, node evaluators control the order in which nodes are processed during branch & cut search using IloCplex goals. Such objects allow you to control the node-selection scheme.

IloCplex::NodeEvaluatorI objects are reference-counted. In other words, every instance of IloCplex::NodeEvaluatorI keeps track of how many handle objects refer to it. When this number drops to 0 (zero), the IloCplex::NodeEvaluatorI object is automatically deleted. As a consequence, whenever you deal with node evaluators, you must maintain a handle object rather than just a pointer to the implementation object. Otherwise, you risk ending up with a pointer to an implementation object that has already been deleted.

See Also:

Constructor and Destructor Summary
public NodeEvaluator()
public NodeEvaluator(IloCplex::NodeEvaluatorI * impl)
public NodeEvaluator(const NodeEvaluator & eval)
public ~NodeEvaluator()
Method Summary
public IloCplex::NodeEvaluatorI *getImpl() const
public NodeEvaluatoroperator=(const NodeEvaluator & eval)
Constructor and Destructor Detail

NodeEvaluator

public NodeEvaluator()

The empty constructor creates a new evaluator containing no pointers to an implementation object.


NodeEvaluator

public NodeEvaluator(IloCplex::NodeEvaluatorI * impl)

This constructor creates a new evaluator with a pointer to an implementation. It increases the reference count of impl by one.


NodeEvaluator

public NodeEvaluator(const NodeEvaluator & eval)

This copy constructor increments the reference count of the implementation object referenced by eval by one.


~NodeEvaluator

public ~NodeEvaluator()

The destructor decreases the reference count of the implementation object by one. If this reduces the reference count to 0 (zero), the implementation object is automatically deleted.


Method Detail

getImpl

public IloCplex::NodeEvaluatorI * getImpl() const

Queries the implementation object.


operator=

public NodeEvaluator operator=(const NodeEvaluator & eval)

The assignment operator increases the reference count of the implementation object of eval. If the invoking handle referred to an implementation object before the assignment operation, its reference count is decreased. If this decrement reduces the reference count to 0 (zero), the implementation object is deleted.