FRAMES NO FRAMES

Class IlcResource

Definition file: ilsched/schedule.h
Include file: <ilsched/ilsched.h>

In the Scheduler Engine, a resource is represented by an instance of the abstract class IlcResource. Activities in a schedule may require or provide resources, so there is a data member in the class IlcResource to distinguish between resources "to be required" and those "to be provided" by activities. Each resource belongs to a unique schedule, an instance of IlcSchedule. The member function IlcResource::getSchedule returns that unique schedule whenever it is invoked on a resource.

There are several predefined subclasses of IlcResource:

Closing a Resource

The member function close specifies that all the activities requiring the invoking resource are known; that is, they have been linked to the resource. This information allows additional constraint propagation to take place, for example, the propagation of minimal capacity constraints. Propagating minimal capacity constraints is particularly useful in the case of resource allocation problems for which some minimal amount of provided capacity must be reached. With such information, indeed, the system can eliminate situations in which minimal capacity amounts cannot be reached if no other (not deduced) activity can execute to provide the resource.

An instance of IloSolver::SolverErrorException is thrown when a new resource constraint (see the IlcResourceConstraint class) is posted on a closed resource.

The member function IlcResource::close is also crucial for propagation affecting the IlcReservoir and IlcContinuousReservoir classes. If IlcResource::close is not called, new activities providing or requiring capacity can still be added. This means that no propagation can take place before the reservoir is closed.

For more information, see Calendars, Disjunctive Constraint, Durability, Timetable, Transition Times, Precedence Graph Constraints, and Functional and Integral Constraints on Resources.

See Also:

Constructor Summary
public IlcResource()
public IlcResource(IlcResourceI * impl)
Method Summary
public voidclose()
public IlcCalendargetCalendar() const
public IlcConstraintgetDisjunctiveConstraint() const
public IlcSchedulegetDurableSchedule() const
public IlcResourceI *getImpl() const
public IlcResourceConstraintgetLastRankedFirstRC() const
public IlcResourceConstraintgetLastRankedLastRC() const
public IlcResourceConstraintgetLastSurelyContributingRankedFirstRC() const
public IlcResourceConstraintgetLastSurelyContributingRankedLastRC() const
public const char *getName() const
public IlcAnygetObject() const
public IlcResourceConstraintgetOldLastRankedFirstRC() const
public IlcResourceConstraintgetOldLastRankedLastRC() const
public IlcConstraintgetPrecedenceGraphConstraint() const
public IlcSchedulegetSchedule() const
public IloSolvergetSolver() const
public IloSolverI *getSolverI() const
public IlcConstraintgetTimetableConstraint() const
public IlcIntgetTransitionTime(const IlcResourceConstraint ct1, const IlcResourceConstraint ct2) const
public IlcBoolhasCalendar() const
public IlcBoolhasDisjunctiveConstraint() const
public IlcBoolhasLightPrecedenceGraphConstraint() const
public IlcBoolhasPrecedenceGraphConstraint() const
public IlcBoolhasPrecedenceInfo() const
public IlcBoolhasRankInfo() const
public IlcBoolhasTimetableConstraint() const
public IlcBoolisCapacityResource() const
public IlcBoolisClosed() const
public IlcBoolisContinuousReservoir() const
public IlcBoolisDiscreteEnergy() const
public IlcBoolisDiscreteResource() const
public IlcBoolisDurable() const
public IlcBoolisReservoir() const
public IlcBoolisStateResource() const
public IlcBoolisTransitionTimeSuspended() const
public IlcBoolisUnaryResource() const
public IlcConstraintmakeFunctionalConstraint(IlcSchedVariable leftVariable, const IlcGranularFunction func, IlcSchedVariable rightVariable=IlcDurationVariable, IlcBool fste=IlcFalse) const
public IlcConstraintmakeIntegralConstraint(IlcSchedVariable leftVariable, const IlcGranularFunction func, IlcBool ignoreSuspensionAtStartEnd=IlcTrue, IlcBool fste=IlcFalse) const
public IlcConstraintmakeLightPrecedenceGraphConstraint()
public IlcConstraintmakePrecedenceGraphConstraint()
public IlcBooloperator!=(const IlcResource & resource) const
public voidoperator=(const IlcResource & h)
public IlcBooloperator==(const IlcResource & resource) const
public voidsetCalendar(IlcCalendar cal)
public voidsetName(const char * name) const
public voidsetObject(IlcAny object) const
public voidsetTransitionTimeObject(IlcTransitionTimeObject ttobj)
public voidsetTransitionTimeSuspended(IlcBool suspended=IlcTrue)
public voidwhenContribution(const IlcResourceDemon d)
public voidwhenDirectPredecessors(const IlcResourceDemon d)
public voidwhenDirectSuccessors(const IlcResourceDemon d)
public voidwhenNext(const IlcResourceDemon d)
public voidwhenPossibleNext(const IlcResourceDemon d)
public voidwhenPossiblePrevious(const IlcResourceDemon d)
public voidwhenPredecessors(const IlcResourceDemon d)
public voidwhenPrevious(const IlcResourceDemon d)
public voidwhenRankedFirstRC(const IlcDemon demon) const
public voidwhenRankedLastRC(const IlcDemon demon) const
public voidwhenSuccessors(const IlcResourceDemon d)
Inner Enumeration
IlcResource::RankFilter
Inner Class
IlcResource::ResourceConstraintDeltaIterator
IlcResource::ResourceConstraintIterator
Constructor Detail

IlcResource

public IlcResource()
This constructor creates an empty handle. You must initialize it before you use it.

IlcResource

public IlcResource(IlcResourceI * impl)
This constructor creates a handle object from a pointer to an implementation object.

Method Detail

close

public void close()

This member function closes the invoking resource. That is, it states that all the activities requiring or providing the invoking resource are known so constraint propagation can proceed.


getCalendar

public IlcCalendar getCalendar() const

This member function returns the calendar attached to the invoking resource, if such an object exists.


getDisjunctiveConstraint

public IlcConstraint getDisjunctiveConstraint() const

This member function returns the disjunctive constraint of the invoking resource.


getDurableSchedule

public IlcSchedule getDurableSchedule() const

This member function returns the durable schedule on which the invoking durable resource was constructed. It returns an empty handle if the invoking resource is not durable.


getImpl

public IlcResourceI * getImpl() const
This constructor creates an object by copying another one. This constructor creates an object by copying another one. This member function returns a pointer to the implementation object of the invoking handle.

getLastRankedFirstRC

public IlcResourceConstraint getLastRankedFirstRC() const

This member function returns the last resource constraint that was ranked first on the resource. If no resource constraint has been ranked first, it returns an empty handle.

This function should be used only if the ranking information is available on the resource (see IlcResource::hasRankInfo).


getLastRankedLastRC

public IlcResourceConstraint getLastRankedLastRC() const

This member function returns the last resource constraint that was ranked last on the resource. If no resource constraint has been ranked last, it returns an empty handle.

This function should be used only if the ranking information is available on the resource (see IlcResource::hasRankInfo).


getLastSurelyContributingRankedFirstRC

public IlcResourceConstraint getLastSurelyContributingRankedFirstRC() const

This member function returns the last resource constraint that was ranked first on the resource and surely affects the availability of the resource (strictly positive duration and capacity requirement). If no resource constraint meets these conditions, it returns an empty handle.

This function should be used only if the ranking information is available on the resource (see IlcResource::hasRankInfo).


getLastSurelyContributingRankedLastRC

public IlcResourceConstraint getLastSurelyContributingRankedLastRC() const

This member function returns the last resource constraint that was ranked last on the resource and surely affects the availability of the resource (strictly positive duration and capacity requirement). If no resource constraint meets these conditions, it returns an empty handle.

This function should be used only if the ranking information is available on the resource (see IlcResource::hasRankInfo).


getName

public const char * getName() const
This member function returns the name of the invoking object.

getObject

public IlcAny getObject() const
This member function returns a pointer to the external object associated with the invoking object, if there is such an association. It returns 0 (zero) otherwise.

getOldLastRankedFirstRC

public IlcResourceConstraint getOldLastRankedFirstRC() const

When called by the execution of a demon d attached with the event IlcResource::whenRankedFirstRC this member function returns the last resource constraint that has been ranked first during the last triggering of the event. If the event is triggered for the first time, this function returns an empty handle. The delta iterator IlcResource::ResourceConstraintDeltaIterator with argument RankedFirst allows iteration in chronological order (with respect to the start/end time of activities) over all the resource constraints between the one returned by getOldLastRankedFirstRC (excluded) and the one returned by IlcResource::getLastRankedFirstRC (included).

When called outside the execution of a demon d attached with the event IlcResource::whenRankedFirstRC this member function returns the last resource constraint that was ranked first on the resource. That is, it returns exactly the same value as the member function IlcResource::getLastRankedFirstRC.

This function should be used only if the ranking information is available on the resource (see IlcResource::hasRankInfo).


getOldLastRankedLastRC

public IlcResourceConstraint getOldLastRankedLastRC() const

When called by the execution of a demon d attached with the event IlcResource::whenRankedLastRC this member function returns the last resource constraint that has been ranked last during the last triggering of the event. If the event is triggered for the first time, this function returns an empty handle. The delta iterator IlcResource::ResourceConstraintDeltaIterator with argument RankedLast allows iteration in anti-chronological order (with respect to the start/end time of activities) over all the resource constraints between the one returned by getOldLastRankedLastRC (excluded) and the one returned by IlcResource::getLastRankedLastRC (included).

When called outside the execution of a demon d attached with the event IlcResource::whenRankedLastRC this member function returns the last resource constraint that was ranked last on the resource. That is, it returns exactly the same value as the member function IlcResource::getLastRankedLastRC.

This function should be used only if the ranking information is available on the resource (see IlcResource::hasRankInfo).


getPrecedenceGraphConstraint

public IlcConstraint getPrecedenceGraphConstraint() const

This member function returns the precedence graph constraint associated with the invoking resource.


getSchedule

public IlcSchedule getSchedule() const

This member function returns the schedule to which the invoking resource belongs. Each resource belongs to a unique schedule, an instance of IlcSchedule.


getSolver

public IloSolver getSolver() const

This member function returns an instance of IloSolver associated with the invoking object.


getSolverI

public IloSolverI * getSolverI() const

This member function returns a pointer to the implementation object of the solver where the invoking object was extracted.


getTimetableConstraint

public IlcConstraint getTimetableConstraint() const

This member function returns the timetable constraint of the invoking resource.


getTransitionTime

public IlcInt getTransitionTime(const IlcResourceConstraint ct1, const IlcResourceConstraint ct2) const

This member function returns the transition time between the two activities corresponding to ct1 and ct2. By default, that is when no transition time object has been defined for the resource, this function returns 0.

Transition times can be taken into account by the disjunctive constraint or by the type timetable constraint. See Transition Time in Scheduler Engine for more details.


hasCalendar

public IlcBool hasCalendar() const

This member function returns IlcTrue if a calendar has been attached to the invoking resource. Otherwise, it returns IlcFalse.


hasDisjunctiveConstraint

public IlcBool hasDisjunctiveConstraint() const

This member function returns IlcTrue if the invoking resource has a disjunctive constraint. Otherwise, it returns IlcFalse.


hasLightPrecedenceGraphConstraint

public IlcBool hasLightPrecedenceGraphConstraint() const

This member function returns IlcTrue if and only if a light precedence graph constraint has been created on the resource.


hasPrecedenceGraphConstraint

public IlcBool hasPrecedenceGraphConstraint() const

This member function returns IlcTrue if the invoking resource is associated with a precedence graph constraint. Otherwise, it returns IlcFalse.


hasPrecedenceInfo

public IlcBool hasPrecedenceInfo() const

This member function returns IlcTrue if and only if some precedence information is available on the resource. This is the case when the resource has been associated with a precedence graph constraint or when the resource is a unary resource with a sequence constraint.

When this member function returns IlcTrue, all the member functions allowed when IlcResource::hasRankInfo returns IlcTrue are allowed, along with the following additional functions:


hasRankInfo

public IlcBool hasRankInfo() const

This member function returns IlcTrue if and only if some rank information is available on the resource. This is the case when the resource is a unary resource and has been associated with a light precedence graph constraint, a precedence graph constraint, a disjunctive constraint or a sequence constraint, or when the resource is a state resource with a precedence graph constraint or a disjunctive constraint.

When this member function returns IlcTrue, the following functions can be used during the search:


hasTimetableConstraint

public IlcBool hasTimetableConstraint() const

This member function returns IlcTrue if the invoking resource has a timetable constraint. Otherwise, it returns IlcFalse.


isCapacityResource

public IlcBool isCapacityResource() const

This member function distinguishes between the classes of resources available in the Scheduler Engine. It returns IlcTrue if the invoking resource is an instance of the class IlcCapResource. Otherwise, it returns IlcFalse.


isClosed

public IlcBool isClosed() const

This member function returns IlcTrue if the invoking resource is closed; that is, the resource no longer accepts new resource constraints being declared for it. The member function returns IlcFalse if the invoking resource is still open.


isContinuousReservoir

public IlcBool isContinuousReservoir() const

This member function distinguishes among the classes of resources available in the Scheduler Engine. It returns IlcTrue if the invoking resource is an instance of the class IlcContinuousReservoir. Otherwise, it returns IlcFalse.


isDiscreteEnergy

public IlcBool isDiscreteEnergy() const

This member function distinguishes among the classes of resources available in the Scheduler Engine. It returns IlcTrue if the invoking resource is an instance of the class IlcDiscreteEnergy. Otherwise, it returns IlcFalse.


isDiscreteResource

public IlcBool isDiscreteResource() const

This member function distinguishes among the classes of resources available in the Scheduler Engine. It returns IlcTrue if the invoking resource is an instance of the class IlcDiscreteResource. Otherwise, it returns IlcFalse.


isDurable

public IlcBool isDurable() const

This member function returns IlcTrue if the invoking resource was constructed on a durable schedule. Otherwise, it returns IlcFalse.


isReservoir

public IlcBool isReservoir() const

This member function distinguishes among the classes of resources available in the Scheduler Engine. It returns IlcTrue if the invoking resource is an instance of the class IlcReservoir. Otherwise, it returns IlcFalse.


isStateResource

public IlcBool isStateResource() const

This member function distinguishes among the classes of resources available in the Scheduler Engine. It returns IlcTrue if the invoking resource is an instance of the class IlcStateResource. Otherwise, it returns IlcFalse.


isTransitionTimeSuspended

public IlcBool isTransitionTimeSuspended() const

This member function returns IlcTrue if the transition time on the invoking resource has been declared to be suspended by breaks.


isUnaryResource

public IlcBool isUnaryResource() const

This member function distinguishes among the classes of resources available in the Scheduler Engine. It returns IlcTrue if the invoking resource is an instance of the class IlcUnaryResource. Otherwise, it returns IlcFalse.


makeFunctionalConstraint

public IlcConstraint makeFunctionalConstraint(IlcSchedVariable leftVariable, const IlcGranularFunction func, IlcSchedVariable rightVariable=IlcDurationVariable, IlcBool fste=IlcFalse) const

This member function creates a functional constraint from the function func on all the activities requiring the invoking resource. If the time extent is IlcNever or IlcAlways, the resource constraint will be ignored.

For each such activity, the integral of the function func is evaluated from the value of the variable designated by rightVariable, and set to be equal to the variable designated by leftVariable:

leftVariable = f(rightVariable)

The func object must be closed, otherwise an error will be raised. Whenever the processing time is used (IloProcessingTimeVariable), every activity executing on the resource must be breakable, and the granular function func must take a value less than or equal to its granularity. Otherwise an error will be raised when starting to solve the problem.


makeIntegralConstraint

public IlcConstraint makeIntegralConstraint(IlcSchedVariable leftVariable, const IlcGranularFunction func, IlcBool ignoreSuspensionAtStartEnd=IlcTrue, IlcBool fste=IlcFalse) const

This member function creates an integral constraint from the function func on all the activities requiring the invoking resource. If the time extent is IlcNever or IlcAlways, the resource constraint will be ignored.

For each such activity, the integral of the function func is computed over the duration, divided by the granularity, and properly rounded (see IlcGranularFunction), It is then set to be equal to the variable designated by leftVar:

The leftVar argument should only be one of the following variable types: IlcExternalVariable, IlcProcessingTimeVariable, IlcCapacityVariable, IlcEnergyVariable. The func object must be closed, otherwise an error will be raised. Whenever the processing time is used (IlcProcessingTimeVariable), every activity executing on the resource must be breakable, and the granular function func must take a value less than or equal to its granularity. Otherwise an error will be raised when starting to solve the problem.

The suspension of activities at the start or end (see IlcActivity::canBeSuspendedAtStart and IlcActivity::canBeSuspendedAtEnd) is by default not taken into account. To take forbidden suspensions into account, the argument ignoreSuspensionAtStartEnd may be set to IlcFalse. Then, the resulting integral constraint will accordingly prevent activities to start/end in intervals where the granular function func has zero values.


makeLightPrecedenceGraphConstraint

public IlcConstraint makeLightPrecedenceGraphConstraint()

This member function allows the creation and return of a light precedence graph constraint on the invoking unary resource. That constraint has to be posted in order to be taken into account.


makePrecedenceGraphConstraint

public IlcConstraint makePrecedenceGraphConstraint()

This member function creates and returns the precedence graph constraint associated with the invoking resource. That constraint has to be posted in order to be taken into account.


operator!=

public IlcBool operator!=(const IlcResource & resource) const

This operator returns IlcTrue if and only if resource does not refer to the same implementation object as the invoking resource.


operator=

public void operator=(const IlcResource & h)
This operator assigns an address to the handle pointer of the invoking object. That address is the location of the implementation object of the provided argument.

operator==

public IlcBool operator==(const IlcResource & resource) const

This operator returns IlcTrue if and only if resource refers to the same implementation object as the invoking resource.


setCalendar

public void setCalendar(IlcCalendar cal)

This member function attaches the calendar cal to the invoking resource.

Outside the search, it is possible to attach a new calendar to a resource that already has a calendar attached. In that case the new attachment replaces the previous one.

During search, it is possible to attach a calendar only to a resource that does not have a previously attached calendar. In that case, the attachment is reversible. During search, any attempt to attach a new calendar to a resource that already has an attached calendar raises an error.

When two different calendars are attached respectively to a resource constraint and to its corresponding resource, only the one on the resource constraint is taken into account. That is, if some breaks are attached to the resource Res using the calendar Cal1 and some shifts are attached to a resource constraint Rct of Res using the calendar Cal2, then only shifts are taken into account on Rct (Cal2). In other words, breaks of cal1 are ignored (Cal1).

Notice that calendars can be shared between resources and resource constraints, and that setCalendar does not imply that a local copy of the calendar is made; one should be aware of the fact that any change to a shared calendar holds for all resources and resource constraints sharing the calendar.


setName

public void setName(const char * name) const
This member function sets the name of the invoking object to a copy of name. This assignment is a reversible action.

setObject

public void setObject(IlcAny object) const
This member function establishes a link between the invoking object and an external object of which the invoking object might be a data member.

setTransitionTimeObject

public void setTransitionTimeObject(IlcTransitionTimeObject ttobj)

This member function allows setting ttobj as the new transition time function of the invoking resource. During the search, any attempt to change the transition function of a resource will raise an error.


setTransitionTimeSuspended

public void setTransitionTimeSuspended(IlcBool suspended=IlcTrue)

This member function allows specifying whether or not the transition time on the invoking resource should be suspended by breaks. By default, the transition time of the resource is not suspended by breaks.


whenContribution

public void whenContribution(const IlcResourceDemon d)

This member function associates the resource demon d with contribution events of resource constraints of the invoking resource. When the contribution status of a resource constraint changes (from possibly contributing to surely contributing or to not possibly contributing), the demon d is executed on that resource constraint.

This member function should be used only in search and only if some rank information is available on the resource (see member function IlcResource::hasRankInfo).


whenDirectPredecessors

public void whenDirectPredecessors(const IlcResourceDemon d)

This member function associates the resource demon d with changes to the set of resource constraints that are direct predecessors of a resource constraint of the invoking resource. When the set of resource constraints that are direct predecessors of a resource constraint changes because some new direct predecessors have appeared, the demon d is executed on the resource constraint whose set of direct predecessors has changed.

This member function should be used only in search and only if some precedence information is available on the resource (see member function IlcResource::hasPrecedenceInfo).


whenDirectSuccessors

public void whenDirectSuccessors(const IlcResourceDemon d)

This member function associates the resource demon d with changes to the set of resource constraints that are direct successors of a resource constraint of the invoking resource. When the set of resource constraints that are direct successors of a resource constraint changes because some new direct successors have appeared, the demon d is executed on the resource constraint whose set of direct successors has changed.

This member function should be used only in search and only if some precedence information is available on the resource (see member function IlcResource::hasPrecedenceInfo).


whenNext

public void whenNext(const IlcResourceDemon d)

This member function associates the resource demon d with the next resource constraint of resource constraints of the invoking resource. When the next resource constraint of a resource constraint is known, the demon d is executed on the resource constraint whose next resource constraints have become known. This next resource constraint can then be accessed with the member function IlcResourceConstraint::getNextRC. When the setup resource constraints is known, the resource demon d is executed on an empty handle resource constraint.

This member function should be used only in search and only if some rank information is available on the resource (see member function IlcResource::hasRankInfo).


whenPossibleNext

public void whenPossibleNext(const IlcResourceDemon d)

This member function associates the resource demon d with changes to the set of resource constraints that are possibly next to a resource constraint of the invoking resource. When the set of resource constraints that are possibly next to a resource constraint changes because some resource constraint that was possibly next is no longer possibly next, the demon d is executed on the resource constraint whose set of possibly next resource constraints has changed. In case the possible setup resource constraints change, the resource demon d is executed on an empty handle resource constraint.

This member function should be used only in search and only if some precedence information is available on the resource (see member function IlcResource::hasPrecedenceInfo).


whenPossiblePrevious

public void whenPossiblePrevious(const IlcResourceDemon d)

This member function associates the resource demon d with changes to the set of resource constraints that are possibly previous to a resource constraint of the invoking resource. When the set of resource constraints that are possibly previous to a resource constraint changes because some resource constraint that was possibly previous is no longer possibly previous, the demon d is executed on the resource constraint whose set of possibly previous resource constraints has changed. In case the possible teardown resource constraints change, the resource demon d is executed on an empty handle resource constraint.

This member function should be used only in search and only if some precedence information is available on the resource (see member function IlcResource::hasPrecedenceInfo).


whenPredecessors

public void whenPredecessors(const IlcResourceDemon d)

This member function associates the resource demon d with changes to the set of resource constraints that are predecessors of a resource constraint of the invoking resource. When the set of resource constraints that are predecessors of a resource constraint changes because some new predecessors have appeared, the demon d is executed on the resource constraint whose set of predecessors has changed.

This member function should be used only in search and only if some precedence information is available on the resource (see member function IlcResource::hasPrecedenceInfo).


whenPrevious

public void whenPrevious(const IlcResourceDemon d)

This member function associates the resource demon d with the previous resource constraint of resource constraints of the invoking resource. When the previous resource constraint of a resource constraint is known, the demon d is executed on the resource constraint whose previous resource constraints have become known. This previous resource constraint can then be accessed with the member function IlcResourceConstraint::getPrevRC. When the teardown resource constraints is known, the resource demon d is executed on an empty handle resource constraint.

This member function should be used only in search and only if some rank information is available on the resource (see member function IlcResource::hasRankInfo).


whenRankedFirstRC

public void whenRankedFirstRC(const IlcDemon demon) const

This member function associates a demon with a change of the set of resource constraints currently ranked first on the resource. When this set changes because some resource constraint has just been ranked first, the demon is executed. In the execution code of the demon, the delta iterator IlcResource::ResourceConstraintDeltaIterator is available to iterate over the freshly ranked first resource constraints.

Since a constraint is also a demon, a constraint can be passed as an argument to this member function. When the change event is triggered, the constraint is posted and propagated.

This function should be used only if the ranking information is available on the resource (see IlcResource::hasRankInfo).


whenRankedLastRC

public void whenRankedLastRC(const IlcDemon demon) const

This member function associates a demon with a change of the set of resource constraints currently ranked last on the resource. When this set changes because some resource constraint has just been ranked last, the demon is executed. In the execution code of the demon, the delta iterator IlcResource::ResourceConstraintDeltaIterator is available to iterate over the freshly ranked last resource constraints.

Since a constraint is also a demon, a constraint can be passed as an argument to this member function. When the change event is triggered, the constraint is posted and propagated.

This function should be used only if the ranking information is available on the resource (see IlcResource::hasRankInfo).


whenSuccessors

public void whenSuccessors(const IlcResourceDemon d)

This member function associates the resource demon d with changes to the set of resource constraints that are successors of a resource constraint of the invoking resource. When the set of resource constraints that are successors of a resource constraint changes because some new successors have appeared, the demon d is executed on the resource constraint whose set of successors has changed.

This member function should be used only in search and only if some precedence information is available on the resource (see member function IlcResource::hasPrecedenceInfo).


Inner Enumeration Detail

Enumeration RankFilter

Definition file: ilsched/schedule.h
Include file: <ilsched/ilsched.h>

This enumeration allows specifying a subset of resource constraints to traverse with the iterators IlcResource::ResourceConstraintIterator, and IlcResource::ResourceConstraintDeltaIterator.

RankedFirst indicates the subset of resource constraints that have been ranked first on the resource.

RankedLast indicates the subset of resource constraints that have been ranked last on the resource.

NotRanked indicates the subset of resource constraints that have not yet been ranked first or last on the resource.

PossibleFirst indicates the subset of resource constraints that can possibly be ranked first on the resource. This is the set of resource constraints that has not yet been ranked first nor ranked last, nor otherwise determined to be unavailable to be ranked first.

PossibleLast indicates the subset of resource constraints that can possibly be ranked last on the resource. This is the set of resource constraints that has not yet been ranked first nor ranked last, nor otherwise determined to be unavailable to be ranked last.

See Also:

Fields

RankedFirst = 1 
RankedLast = 2 
Ranked = 3 
NotRanked = 4 
PossibleFirst = 8 
PossibleLast = 16