This module defines several python objects to implement
a project plan scheduling mechanism. A project plan is
written as a sequence of nested functions which will be
compiled to a hierachical structur of python objects.
(see the tutorial section )
The module defines the following classes:
-
This class represents a project calendar. It can distinguish between
working times and free times.
-
This class represents a single task in the project tree. A task can have
other child tasks, or is a leaf of the tree. Resources will be allocated
only to leafes. You will never create task objects by your self,
they are created indirectly by Projects.
class Project( |
top_task, scenario="_default", id="") |
-
This class is a subclass of Task and represents
a whole project and is responsible for building
the project tree. An instance of Project is the highest task
in a project tree. Projects do not allocate resources to
tasks. To archieve resource allocating use BalancedProject.
top_task is the highest function of a project definiton.
scenario is the name of the scenario which should be scheduled.
id, is a unique idenfication name to distinguish the project from
other projects in the resource database. The default value for id
is the name of top_task.
class BalancedProject( |
top_task, scenario="_default", id=None, balance=SMART) |
-
This class is like Project, additionally it allocates resources
to tasks.
class AdjustedProject( |
base_project) |
-
This class adjusts a project to the actual tracking data.
See 3.5.5 for more details.
-
Subclasses of this class represent a resource which can be allocated for a task.
class WorkingDaytime( |
value, calendar=None) |
-
This class represents a daytime-type which is aware of working and free times.
All datetime attributes of Tasks are WorkingDaytimes.
value can be a date literal (see 2.1.2) or a python datetime.
Release 0.11.7, documentation updated on january 6, 2007.