Logo Search packages:      
Sourcecode: taskjuggler version File versions  Download package

Task Class Reference

#include <Task.h>

Inheritance diagram for Task:


List of all members.

Detailed Description

The class that holds all task related information.

This class stores all task related information and provides methods to manipulte them. It provides fundamental functions like the scheduler.

See also:


Chris Schlaeger <cs@kde.org>

Definition at line 57 of file Task.h.

Public Types

enum  SchedulingInfo { ASAP, ALAP }

Public Member Functions

void addAllocation (Allocation *a)
void addBookedResource (int sc, Resource *r)
void addCustomAttribute (const QString &id, CustomAttribute *ca)
TaskDependencyaddDepends (const QString &id)
void addFlag (QString flag)
void addJournalEntry (JournalEntry *entry)
TaskDependencyaddPrecedes (const QString &id)
bool addShift (const Interval &i, Shift *s)
void allocationFromXML (const QDomElement &)
void calcCompletionDegree (int sc)
void calcContainerCompletionDegree (int sc, time_t now)
bool checkDetermination (int sc) const
void clearFlag (const QString &flag)
void computeBuffers ()
void computeCriticalness (int sc)
void computePathCriticalness (int sc)
void errorMessage (const char *,...) const
void finishScenario (int sc)
AccountgetAccount () const
long getAllocatedTime (int sc, const Interval &period, const Resource *resource=0) const
double getAllocatedTimeLoad (int sc, const Interval &period, const Resource *resource=0) const
QPtrListIterator< Allocation > getAllocationIterator () const
ResourceList getBookedResources (int sc) const
ResourceListIterator getBookedResourcesIterator (int sc) const
double getCalcDuration (int sc) const
double getCalcedCompletionDegree (int sc) const
double getCalcEffort (int sc) const
double getComplete (int sc) const
double getCompletionDegree (int sc) const
TaskStatus getCompletionStatus (int sc) const
double getCredits (int sc, const Interval &period, AccountType acctType, const Resource *resource=0, bool recursive=TRUE) const
double getCriticalness (int sc) const
const CustomAttribute * getCustomAttribute (const QString &id) const
const QDict< const
CustomAttribute > & 
getCustomAttributeDict () const
const QString & getDefinitionFile () const
uint getDefinitionLine () const
QPtrListIterator< TaskDependencygetDependsIterator () const
double getDuration (int sc) const
double getEffort (int sc) const
const time_t getEnd (int sc) const
double getEndBuffer (int sc) const
time_t getEndBufferStart (int sc) const
double getEndCredit (int sc) const
FlagList getFlagList () const
TaskListIterator getFollowersIterator () const
QString getFullId () const
void getFullName (QString &fullName) const
QString getHierarchIndex () const
QString getHierarchNo () const
const QString & getId () const
int getIndex () const
JournalIterator getJournalIterator () const
double getLength (int sc) const
double getLoad (int sc, const Interval &period, const Resource *resource=0) const
time_t getMaxEnd (int sc) const
time_t getMaxStart (int sc) const
time_t getMinEnd (int sc) const
time_t getMinStart (int sc) const
const QString & getName () const
const QString & getNote () const
TaskgetParent () const
double getPathCriticalness (int sc) const
QPtrListIterator< TaskDependencygetPrecedesIterator () const
TaskListIterator getPreviousIterator () const
int getPriority () const
ProjectgetProject () const
const QString & getProjectId () const
const QString & getReference () const
const QString & getReferenceLabel () const
ResourcegetResponsible () const
bool getScheduled (int sc) const
SchedulingInfo getScheduling () const
uint getSequenceNo () const
const time_t getStart (int sc) const
double getStartBuffer (int sc) const
time_t getStartBufferEnd (int sc) const
double getStartCredit (int sc) const
TaskStatus getStatus (int sc) const
const QString & getStatusNote (int sc) const
QString getStatusText (int sc) const
CoreAttributesList getSubList () const
TaskListIterator getSubListIterator () const
virtual CAType getType () const
bool hasExtraValues (int sc) const
bool hasFlag (const QString &flag)
bool hasFollower (const Task *t)
bool hasFollowers () const
bool hasJournal () const
bool hasPrevious (const Task *t)
bool hasPrevious () const
bool hasSameAncestor (const CoreAttributes *c) const
bool hasSubs () const
void implicitXRef ()
void inheritCustomAttributes (const QDict< const CustomAttributeDefinition > &dict)
void inheritValues ()
void initLoopDetector ()
bool isActive (int sc, const Interval &period) const
bool isBookedResource (int sc, const Resource *r) const
bool isBuffer (int sc, const Interval &iv) const
bool isChildOf (const CoreAttributes *c) const
bool isCompleted (int sc, time_t date) const
bool isContainer () const
bool isDescendentOf (const CoreAttributes *c) const
bool isDutyOf (int sc, const Resource *r) const
bool isEndOk (int sc) const
bool isLeaf () const
bool isMilestone () const
bool isParentOf (const CoreAttributes *c) const
bool isRoot () const
bool isRunaway () const
bool isSchedulingDone () const
bool isStartOk (int sc) const
bool isSubTask (Task *t) const
void loadFromXML (QDomElement &parent, Project *p)
bool loopDetector () const
time_t nextSlot (time_t slotDuration) const
void overlayScenario (int base, int sc)
void prepareScenario (int sc)
bool preScheduleOk (int sc)
void propagateEnd (int sc, bool safeMode=TRUE)
void propagateInitialValues (int sc)
void propagateStart (int sc, bool safeMode=TRUE)
QString resolveId (QString relId)
void saveSpecifiedBookedResources ()
void schedule (int sc, time_t &reqStart, time_t duration)
bool scheduleOk (int sc, int &errors) const
void setAccount (Account *a)
void setComplete (int sc, double c)
void setDuration (int sc, double d)
void setEffort (int sc, double e)
void setEnd (int sc, time_t s)
void setEndBuffer (int sc, double p)
void setEndCredit (int sc, double c)
void setHierarchIndex (uint no)
void setHierarchNo (uint no)
void setIndex (int idx)
void setLength (int sc, double days)
void setMaxEnd (int sc, time_t e)
void setMaxStart (int sc, time_t s)
void setMilestone (bool ms=TRUE)
void setMinEnd (int sc, time_t e)
void setMinStart (int sc, time_t s)
void setName (const QString &n)
void setNote (const QString &d)
void setPriority (int p)
void setProjectId (const QString &i)
void setReference (const QString &r, const QString &l)
void setResponsible (Resource *r)
void setRunaway ()
void setScheduled (int sc, bool ps)
void setScheduling (SchedulingInfo si)
void setSequenceNo (uint no)
void setSpecifiedEnd (int sc, time_t s)
void setSpecifiedScheduled (int sc, bool ps)
void setSpecifiedStart (int sc, time_t s)
void setStart (int sc, time_t s)
void setStartBuffer (int sc, double p)
void setStartCredit (int sc, double c)
void setStatusNote (int sc, const QString &d)
void sortAllocations ()
 Task (Project *prj, const QString &id_, const QString &n, Task *p, const QString &f, int l)
uint treeLevel () const
QDomElement xmlElement (QDomDocument &doc, bool absId=true)
bool xRef (QDict< Task > &hash)

Protected Attributes

QDict< CustomAttribute > customAttributes
 User defined, optional attributes.
const QString definitionFile
uint definitionLine
FlagList flags
 List of flags set for this attribute.
uint hierarchIndex
uint hierarchNo
QString id
 An ID that must be unique within the attribute class.
int index
QString name
 A short description of the attribute.
 Pointer to parent. If there is no parent the pointer is 0.
 A pointer to access information that are global to the project.
uint sequenceNo
 List of child attributes.

Private Member Functions

void addBookedResource (Resource *r)
bool bookResource (Resource *r, time_t day, time_t duration, int &availability)
void bookResources (int sc, time_t day, time_t duration)
bool checkPathForLoops (LDIList &list, bool atEnd) const
double computeBackwardCriticalness (int sc)
double computeForwardCriticalness (int sc)
bool countMilestones (int sc, time_t now, int &totalMilestones, int &completedMilestones, int &reportedCompletedMilestones)
QPtrList< ResourcecreateCandidateList (int sc, time_t date, Allocation *a)
time_t earliestStart (int sc) const
bool endCanBeDetermined (LDIList &list, int sc) const
bool hasEndDependency () const
bool hasEndDependency (int sc) const
bool hasStartDependency () const
bool hasStartDependency (int sc) const
time_t latestEnd (int sc) const
bool loopDetection (LDIList &list, bool atEnd, LoopDetectorInfo::FromWhere caller) const
bool scheduleContainer (int sc, bool safeMode)
bool startCanBeDetermined (LDIList &list, int sc) const
TasksubFirst ()
TasksubNext ()
bool sumUpEffort (int sc, time_t now, double &totalEffort, double &completedEffort, double &reportedCompletedEffort)

Private Attributes

 Account where the credits of the task are credited to.
QPtrList< Allocation > allocations
 List of resource allocations requested by the task.
ResourceList bookedResources
 A list of all the resources booked for this task.
QPtrList< TaskDependencydepends
double doneDuration
 The already completed duration in a scheduler run.
double doneEffort
 The already completed effort in a scheduler run.
double doneLength
 The already completed length in a scheduler run.
double duration
 Duration in calender days.
double effort
 Effort (in man days) needed to complete the task.
time_t end
 Day when the task should end.
TaskList followers
Journal journal
 List of notes with a date attached.
time_t lastSlot
double length
 Length in working days.
bool milestone
 True if the task is a milestone.
QString note
 A longer description of the task.
QPtrList< TaskDependencyprecedes
TaskList predecessors
TaskList previous
int priority
QString projectId
QString ref
 A reference to an external document.
QString refLabel
 A label used instead of the reference.
 ID of responsible resource.
bool runAway
TaskScenario * scenarios
SchedulingInfo scheduling
 The scheduling policy of the task.
bool schedulingDone
 This variable is set to true when the task has been scheduled.
ShiftSelectionList shifts
 Tasks may only be worked on during the specified shifts.
time_t start
 Day when the task should start.
TaskList successors
time_t tentativeEnd
time_t tentativeStart
bool workStarted


int TaskList::compareItemsLevel (Task *, Task *, int)

The documentation for this class was generated from the following files:

Generated by  Doxygen 1.6.0   Back to index