| Overview | Group | Tree | Graph | Deprecated | Index | Concepts |

An instance of this class is a constrained interval variable in
the CP Optimizer engine.
An instance of IlcIntervalVar can be retrieved from a Concert
Technology instance of IloIntervalVar by using the
member function IlcIntervalVar IloCPEngine::getInterval(const
IloIntervalVar) const.
The member functions of this class give access to the domain of an optimizer engine interval variable. The domain of an interval variable is comprised of the domains for start, end, length, and size as well as the Boolean range for the presence. The member functions give access to the delta-domains and events for constraint propagation implementations. These members functions are available only during the search process of the optimizer engine.
For more information on interval variables and the search API for scheduling, see the concept Search API for scheduling in CP Optimizer.
See Also:
| Method Summary | |
|---|---|
public IlcCPEngine | getCPEngine() const |
public IlcInt | getEndMax() const |
public IlcInt | getEndMin() const |
public IlcInt | getLengthMax() const |
public IlcInt | getLengthMin() const |
public IlcInt | getOldEndMax() const |
public IlcInt | getOldEndMin() const |
public IlcInt | getOldLengthMax() const |
public IlcInt | getOldLengthMin() const |
public IlcInt | getOldSizeMax() const |
public IlcInt | getOldSizeMin() const |
public IlcInt | getOldStartMax() const |
public IlcInt | getOldStartMin() const |
public IlcInt | getSizeMax() const |
public IlcInt | getSizeMin() const |
public IlcInt | getStartMax() const |
public IlcInt | getStartMin() const |
public IlcBool | hasDeltaInterval() const |
public IlcBool | hasDeltaPresence() const |
public IlcBool | hasDeltaSize() const |
public IlcBool | isAbsent() const |
public IlcBool | isFixed() const |
public IlcBool | isOldAbsent() const |
public IlcBool | isOldPresent() const |
public IlcBool | isPresenceFixed() const |
public IlcBool | isPresent() const |
public IlcBool | isSizeFixed() const |
public void | setAbsent() const |
public void | setEnd(IlcInt value) const |
public void | setEndMax(IlcInt max) const |
public void | setEndMin(IlcInt min) const |
public void | setLength(IlcInt value) const |
public void | setLengthMax(IlcInt max) const |
public void | setLengthMin(IlcInt min) const |
public void | setPresent() const |
public void | setSize(IlcInt value) const |
public void | setSizeMax(IlcInt max) const |
public void | setSizeMin(IlcInt min) const |
public void | setStart(IlcInt value) const |
public void | setStartMax(IlcInt max) const |
public void | setStartMin(IlcInt min) const |
public void | whenIntervalDomain(const IlcDemon d) const |
public void | whenPresence(const IlcDemon d) const |
public void | whenSize(const IlcDemon d) const |
| Method Detail |
|---|
This member function returns the instance of
IlcCPEngine associated with the invoking
instance of IlcIntervalVar.
This member function returns the current maximum of the
domain of the end
of the invoking instance of IlcIntervalVar. If the
interval is absent, the value returned by this
member function is meaningless.
This member function returns the current minimum of the
domain of the end
of the invoking instance of IlcIntervalVar. If the
interval is absent, the value returned by this
member function is meaningless.
This member function returns the current maximum of the
domain of the length
of the invoking instance of IlcIntervalVar. If the
interval is absent, the value returned by this
member function is meaningless.
This member function returns the current minimum of the
domain of the length
of the invoking instance of IlcIntervalVar. If the
interval is absent, the value returned by this
member function is meaningless.
This member function returns the maximum of the domain
of the end of the invoking instance of
IlcIntervalVar the last time the interval
was processed by the propagation algorithm of the
optimizer engine. If the interval was absent
at that time, the value returned by this
member function is meaningless.
This function can only be used in a propagation
function: that is at the execution of a demon (instance of
IlcDemonI) or the virtual member
propagate of a constraint (instance of
IlcConstraintI).
This member function returns the minimum of the domain
of the end of the invoking instance of
IlcIntervalVar the last time the interval
was processed by the propagation algorithm of the
optimizer engine. If the interval was absent
at that time, the value returned by this
member function is meaningless.
This function can only be used in a propagation
function: that is at the execution of a demon (instance of
IlcDemonI) or the virtual member
propagate of a constraint (instance of
IlcConstraintI).
This member function returns the maximum of the domain
of the length of the invoking instance of
IlcIntervalVar the last time the interval
was processed by the propagation algorithm of the
optimizer engine. If the interval was absent
at that time, the value returned by this
member function is meaningless.
This function can only be used in a propagation
function: that is at the execution of a demon (instance of
IlcDemonI) or the virtual member
propagate of a constraint (instance of
IlcConstraintI).
This member function returns the minimum of the domain
of the length of the invoking instance of
IlcIntervalVar the last time the interval
was processed by the propagation algorithm of the
optimizer engine. If the interval was absent
at that time, the value returned by this
member function is meaningless.
This function can only be used in a propagation
function: that is at the execution of a demon (instance of
IlcDemonI) or the virtual member
propagate of a constraint (instance of
IlcConstraintI).
This member function returns the maximum of the domain
of the size of the invoking instance of
IlcIntervalVar the last time the interval
was processed by the propagation algorithm of the
optimizer engine. If the interval was absent
at that time, the value returned by this
member function is meaningless.
This function can only be used in a propagation
function: that is at the execution of a demon (instance of
IlcDemonI) or the virtual member
propagate of a constraint (instance of
IlcConstraintI).
This member function returns the minimum of the domain
of the size of the invoking instance of
IlcIntervalVar the last time the interval
was processed by the propagation algorithm of the
optimizer engine. If the interval was absent
at that time, the value returned by this
member function is meaningless.
This function can only be used in a propagation
function: that is at the execution of a demon (instance of
IlcDemonI or the virtual member
propagate of a constraint (instance of
IlcConstraintI.
This member function returns the maximum of the domain
of the start of the invoking instance of
IlcIntervalVar the last time the interval
was processed by the propagation algorithm of the
optimizer engine. If the interval was absent
at that time, the value returned by this
member function is meaningless.
This function can only be used in a propagation
function: that is at the execution of a demon (instance of
IlcDemonI) or the virtual member
propagate of a constraint (instance of
IlcConstraintI).
This member function returns the minimum of the domain
of the start of the invoking instance of
IlcIntervalVar the last time the interval
was processed by the propagation algorithm of the
optimizer engine. If the interval was absent
at that time, the value returned by this
member function is meaningless.
This function can only be used in a propagation
function: that is at the execution of a demon (instance of
IlcDemonI or the virtual member
propagate of a constraint (instance of
IlcConstraintI.
This member function returns the currnet maximum of the
domain of the size
of the invoking instance of IlcIntervalVar. If the
interval is absent, the value returned by this
member function is meaningless.
This member function returns the current minimum of the
domain of the size
of the invoking instance of IlcIntervalVar. If the
interval is absent, the value returned by this
member function is meaningless.
This member function returns the current maximum of the
domain of the start
of the invoking instance of IlcIntervalVar. If the
interval is absent, the value returned by this
member function is meaningless.
This member function returns the current minimum of the
domain of the start
of the invoking instance of IlcIntervalVar. If the
interval is absent, the value returned by this
member function is meaningless.
This member function returns IlcTrue if the
integer range of the start, end, or length of the
invoking instance of IlcIntervalVar has changed
since the last time the interval was
processed by the propagation algorithm of the
optimizer engine. Otherwise, it returns IlcFalse.
This function can only be used in a propagation
function: that is at the execution of a demon (instance of
IlcDemonI) or the virtual member
propagate of a constraint (instance of
IlcConstraintI).
IlcIntervalVar can be absent yet
still have a delta interval.This member function returns IlcTrue if the
presence value of the invoking instance of
IlcIntervalVar has changed since the last time the interval was
processed by the propagation algorithm of the optimizer
engine. Otherwise, it returns IlcFalse.
This function can only be used in a propagation
function: that is at the execution of a demon (instance of
IlcDemonI) or the virtual member
propagate of a constraint (instance of
IlcConstraintI).
IlcTrue, the presence
of the invoking instance of
IlcIntervalVar is fixed.This member function returns IlcTrue if the
integer range of the size of the
invoking instance of IlcIntervalVar has changed
since the last time the interval was
processed by the propagation algorithm of the
optimizer engine. Otherwise, it returns IlcFalse.
This function can only be used in a propagation
function: that is at the execution of a demon (instance of
IlcDemonI) or the virtual member
propagate of a constraint (instance of
IlcConstraintI).
IlcIntervalVar can be absent and yet
still have a delta size.This member function returns IlcTrue if the
invoking instance of IlcIntervalVar is
absent. Otherwise, it returns IlcFalse. Note that an
absent interval is fixed.
This member function returns IlcTrue if the
invoking instance of IlcIntervalVar is fixed,
that is, if the interval is absent or present and the start and end
(and implicitly the length and size) integer ranges of the
invoking instance of IlcIntervalVar are
fixed. Otherwise, it returns IlcFalse.
This member function returns IlcTrue if the invoking instance of
IlcIntervalVar was absent the last
time the interval was
processed by the propagation algorithm of the
optimizer engine.
This function can only be used in a propagation
function: that is at the execution of a demon (instance of
IlcDemonI) or the virtual member
propagate of a constraint (instance of
IlcConstraintI).
This member function returns IlcTrue if the invoking instance of
IlcIntervalVar was present the last
time the interval was
processed by the propagation algorithm of the
optimizer engine.
This function can only be used in a propagation
function: that is at the execution of a demon (instance of
IlcDemonI) or the virtual member
propagate of a constraint (instance of
IlcConstraintI).
This member function returns IlcTrue
if the presence of the
invoking instance of IlcIntervalVar is
fixed, that is, if the interval is present or absent.
Otherwise, it returns IlcFalse.
This member function returns IlcTrue if the
invoking instance of IlcIntervalVar is
present. Otherwise, it returns IlcFalse.
This member function returns IlcTrue if the
integer range of the size of the
invoking instance of IlcIntervalVar is
fixed or empty (empty indicates an absent interval). Otherwise, it
returns IlcFalse.
This member function sets as absent the invoking instance of
IlcIntervalVar, if not already absent. If the presence Boolean range
becomes empty, such as if the interval is present, then a failure is
raised from the optimizer engine. Otherwise, a
presence domain event is created. The
effects of this member function are reversible.
This member function sets the value of the end
range of the invoking instance of IlcIntervalVar to
the integer argument value. If
the interval is absent, no changes occur (due to the monotonicity of
the CP Optimizer engine). If the end range becomes empty,
the interval is set to be absent. Otherwise, an interval domain
event is created. The effects of this member function are reversible.
This member function sets the maximum of the end
range of the invoking instance of IlcIntervalVar to
the integer argument max. If max is
greater than the current maximum of the end range or if
the interval is absent, no changes occur (due to the monotonicity of
the optimizer engine). If the end range becomes empty,
the interval is set to be absent. Otherwise, an interval domain
event is created. The
effects of this member function are reversible.
This member function sets the minimum of the end
range of the invoking instance of IlcIntervalVar to
the integer argument min. If min is less than
the current minimum of the end range or if
the interval is absent, no changes occur (due to the monotonicity of
the optimizer engine). If the end range becomes empty,
the interval is set to be absent. Otherwise, an interval domain
event is created. The
effects of this member function are reversible.
This member function sets the value of the length
range of the invoking instance of IlcIntervalVar to
the integer argument value. If
the interval is absent, no changes occur (due to the monotonicity of
the optimizer engine). If the length range becomes empty,
the interval is set to be absent. Otherwise, an interval domain
event is created. The effects of this member function are
reversible.
This member function sets the maximum of the length
range of the invoking instance of IlcIntervalVar to
the integer argument max. If max is
greater than the current maximum of the length range or if
the interval is absent, no changes occur (due to the monotonicity of
the optimizer engine). If the length range becomes empty,
the interval is set to be absent. Otherwise, an interval domain
event is created. The
effects of this member function are reversible.
This member function sets the minimum of the length
range of the invoking instance of IlcIntervalVar to
the integer argument min. If min is less than
the current minimum of the length range or if
the interval is absent, no changes occur (due to the monotonicity of
the optimizer engine). If the length range becomes empty,
the interval is set to be absent. Otherwise, an interval domain
event is created. The
effects of this member function are reversible.
This member function sets as present the invoking instance of
IlcIntervalVar, if not already present. If the presence Boolean range
becomes empty, such as if the interval is absent, then a failure is
raised from the optimizer engine. Otherwise, a
presence domain event is created. The
effects of this member function are reversible.
This member function sets the value of the size
range of the invoking instance of IlcIntervalVar to
the integer argument value. If
the interval is absent, no changes occur (due to the monotonicity of
the optimizer engine). If the size range becomes empty,
the interval is set to be absent. Otherwise, a size domain
event is created (or an interval domain event if the length and size
are equal). The
effects of this member function are reversible.
This member function sets the maximum of the size
range of the invoking instance of IlcIntervalVar to
the integer argument max. If max is
greater than the current maximum of the size range or if
the interval is absent, no changes occur (due to the monotonicity of
the optimizer engine). If the size range becomes empty,
the interval is set to be absent. Otherwise, a size domain
event is created (or an interval domain event the if length and size
are equal). The
effects of this member function are reversible.
This member function sets the minimum of the size
range of the invoking instance of IlcIntervalVar to
the integer argument min. If min is less than
the current minimum of the size range or if
the interval is absent, no changes occur (due to the monotonicity of
the optimizer engine). If the size range becomes empty,
the interval is set to be absent. Otherwise, a size domain
event is created (or an interval domain event if the length and size
are equal). The
effects of this member function are reversible.
This member function sets the value of the start
range of the invoking instance of IlcIntervalVar to
the integer argument value. If
the interval is absent, no changes occur (due to the monotonicity of
the optimizer engine). If the start range becomes empty,
the interval is set to be absent. Otherwise, an interval domain
event is created. The
effects of this member function are reversible.
This member function sets the maximum of the start
range of the invoking instance of IlcIntervalVar to
the integer argument max. If max is
greater than the current maximum of the start range or if
the interval is absent, no changes occur (due to the monotonicity of
the optimizer engine). If the start range becomes empty,
the interval is set to be absent. Otherwise, an interval domain
event is created. The
effects of this member function are reversible.
This member function sets the minimum of the start
range of the invoking instance of IlcIntervalVar to
the integer argument min. If min is less than
the current minimum of the start range or if
the interval is absent, no changes occur (due to the monotonicity of
the optimizer engine). If the start range becomes empty,
the interval is set to be absent. Otherwise, an interval domain
event is created. The effects of this member function are reversible.
This member function associates the demon d with the
interval domain event on the
invoking instance of IlcIntervalVar. Whenever the
invoking interval has its start, end, or length integer ranges
reduced, the demon will be executed.
Since a constraint is also a demon, a constraint can also be passed as an argument to this member function. Whenever the invoking interval has its start, end, or length integer ranges reduced, the constraint will be propagated.
This member function can only be used during the posting of a constraint.
This member function associates the demon d with the
presence domain event
(when the interval becomes present or absent)
of the invoking instance of IlcIntervalVar.
Whenever the invoking interval variable
has its presence fixed, the demon will be executed.
Since a constraint is also a demon, a constraint can also be passed as an argument to this member function. Whenever the invoking interval has its presence fixed, the constraint will be propagated.
This member function can only be used during the posting of a constraint.
This member function associates the demon d with the
size domain event on the
invoking instance of IlcIntervalVar. Whenever the
size integer range of the invoking interval variable
reduced, the demon will be executed.
Since a constraint is also a demon, a constraint can also be passed as an argument to this member function. Whenever the invoking interval has its size integer range reduced, the constraint will be propagated.
This member function can only be used during the posting of a constraint.