Class IlcShiftListObject
Definition file: ilsched/shifts.h
The class IlcShiftListObject
inherits from the class
IlcShiftObject
). It allows expression of shifts as a list
of forbidden time intervals. Depending on the type of the shift list object,
the time restriction can concern the whole activity execution, or only
its start or its end. Indeed three different types are defined:
OnStart
: Shifts only concern the start of the activity.
For instance, if the shift is the interval [a,b), then the
start of the activity must be strictly smaller than a or greater
than b.OnEnd
: Shifts only concern the end of the activity.
For instance, if the shift is the interval [a,b), then the
end of the activity must be strictly smaller than a or greater
than b.OnOverlap
: Shifts concern the whole activity.
That is, the activity cannot overlap shifts. For example, if the shift
is the interval [a,b), then the end of the activity must be
strictly smaller than a or the start must be greater than b.
In addition, each time interval (see
IlcIntervalList
) can be associated with
an integer type. In such cases, activities can specify which types have to be ignored.
For more information, see
Calendars and
Shift Object Semantic.
public IlcShiftListObject()
This constructor creates an instance which is empty, that is, one whose handle pointer is null.
You must assign it a value before you access it. Any attempt to access it before assignment leads to undefined behaviour.
public IlcShiftListObject(IlcShiftListObjectI * impl)
This constructor creates an instance of the handle class from the pointer to an instance
of the implementation class.
This constructor creates a new instance of IlcShiftListObject
.
By default, the shift list is empty and the type is OnStart
.
This constructor creates a new instance of IlcShiftListObject
.
The shift list is set to shiftList
and the type is set to type
.
public IlcShiftListObjectI * getImpl() const
This member function returns a pointer to the implementation object of the invoking handle.
This member function returns the time interval list that represents
the set of forbidden dates of the invoking shift object.
This member function returns the type that defines
the behavior of the shifts during the search (see
IlcShiftListObject::Type
).
public void operator=(const IlcShiftListObject & 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. After execution of this operator,
the invoking object and the provided argument point to the same implementation object.
This member function sets shiftList
as the new shift
list of the invoking shift object with the type type
.
Definition file: ilsched/shifts.h
The Type
of IlcShiftListObject
allows definition of the behavior during search
regarding the variables of concerned activities. The possible types are:
OnStart
: Shifts only concern the start of the activity.
For instance, if the shift is the interval [a,b), then the
start of the activity must be strictly smaller than a or greater
than b.OnEnd
: Shifts only concern the end of the activity.
For instance, if the shift is the interval [a,b), then the
end of the activity must be strictly smaller than a or greater
than b.OnOverlap
: Shifts concern the whole activity.
That is, the activity cannot overlap shifts. For instance, if the shift
is the interval [a,b), then the end of the activity must be
strictly smaller than a or the start must be greater than b.
OnStart = 0 | |
OnEnd = 1 | |
OnOverlap = 2 | |