Class Ifc4x2::IfcTaskTime

Nested Relationships

This class is a nested type of Struct Ifc4x2.

Inheritance Relationships

Base Type

Derived Type

Class Documentation

class Ifc4x2::IfcTaskTime : public Ifc4x2::IfcSchedulingTime

IfcTaskTime captures the time-related information about a task including the different types (actual or scheduled) of starting and ending times.

HISTORY: New entity in IFC2x4, adapted from IfcScheduleTimeControl. Differently to IfcScheduleTimeControl it is also possible to differentiate duration time measures between the two possible types; (1) work time and (2) elapsed time.

Use definitions All given values should be provided by the application; the IFC schema does not deal with dependencies between task time values. There is also no consistency check through where rules that guarantee a meaningful population of time values. Thus, an application is responsible to provide reasonable values and, if an application receives task times, has to make consistency checks by their own.

IfcTaskTime furthermore provides a generic mechanism to differentiate between user given time values and time values derived from user given time values and other constraints such as work calendars and assigned resources.

Subclassed by Ifc4x2::IfcTaskTimeRecurring

Public Types

typedef IfcTemplatedEntityList<IfcTaskTime> list

Public Functions

bool hasDurationType() const

Whether the optional attribute DurationType is defined for this IfcTaskTime.

::Ifc4x2::IfcTaskDurationEnum::Value DurationType() const

Enables to specify the type of duration values for ScheduleDuration, ActualDuration and RemainingTime. The duration type is either work time or elapsed time.

void setDurationType(::Ifc4x2::IfcTaskDurationEnum::Value v)
bool hasScheduleDuration() const

Whether the optional attribute ScheduleDuration is defined for this IfcTaskTime.

std::string ScheduleDuration() const

The amount of time which is scheduled for completion of a task. The value might be measured or somehow calculated, which is defined by ScheduleDataOrigin. The value is either given as elapsed time or work time, which is defined by DurationType.

NOTE: Scheduled Duration may be calculated as the time from scheduled start date to scheduled finish date.

void setScheduleDuration(std::string v)
bool hasScheduleStart() const

Whether the optional attribute ScheduleStart is defined for this IfcTaskTime.

std::string ScheduleStart() const

The date on which a task is scheduled to be started. The value might be measured or somehow calculated, which is defined by ScheduleDataOrigin.

NOTE: The scheduled start date must be greater than or equal to the earliest start date.

void setScheduleStart(std::string v)
bool hasScheduleFinish() const

Whether the optional attribute ScheduleFinish is defined for this IfcTaskTime.

std::string ScheduleFinish() const

The date on which a task is scheduled to be finished. The value might be measured or somehow calculated, which is defined by ScheduleDataOrigin.

NOTE: The scheduled finish date must be greater than or equal to the earliest finish date.

void setScheduleFinish(std::string v)
bool hasEarlyStart() const

Whether the optional attribute EarlyStart is defined for this IfcTaskTime.

std::string EarlyStart() const

The earliest date on which a task can be started. It is a calculated value.

void setEarlyStart(std::string v)
bool hasEarlyFinish() const

Whether the optional attribute EarlyFinish is defined for this IfcTaskTime.

std::string EarlyFinish() const

The earliest date on which a task can be finished. It is a calculated value.

void setEarlyFinish(std::string v)
bool hasLateStart() const

Whether the optional attribute LateStart is defined for this IfcTaskTime.

std::string LateStart() const

The latest date on which a task can be started. It is a calculated value.

void setLateStart(std::string v)
bool hasLateFinish() const

Whether the optional attribute LateFinish is defined for this IfcTaskTime.

std::string LateFinish() const

The latest date on which a task can be finished. It is a calculated value.

void setLateFinish(std::string v)
bool hasFreeFloat() const

Whether the optional attribute FreeFloat is defined for this IfcTaskTime.

std::string FreeFloat() const

The amount of time during which the start or finish of a task may be varied without any effect on the overall programme of work. It is a calculated elapsed time value.

void setFreeFloat(std::string v)
bool hasTotalFloat() const

Whether the optional attribute TotalFloat is defined for this IfcTaskTime.

std::string TotalFloat() const

The difference between the duration available to carry out a task and the scheduled duration of the task. It is a calculated elapsed time value.

NOTE: Total Float time may be calculated as being the difference between the scheduled duration of a task and the available duration from earliest start to latest finish. Float time may be either positive, zero or negative. Where it is zero or negative, the task becomes critical.

void setTotalFloat(std::string v)
bool hasIsCritical() const

Whether the optional attribute IsCritical is defined for this IfcTaskTime.

bool IsCritical() const

A flag which identifies whether a scheduled task is a critical item within the programme.

NOTE: A task becomes critical when the float time becomes zero or negative.

void setIsCritical(bool v)
bool hasStatusTime() const

Whether the optional attribute StatusTime is defined for this IfcTaskTime.

std::string StatusTime() const

The date or time at which the status of the tasks within the schedule is analyzed.

void setStatusTime(std::string v)
bool hasActualDuration() const

Whether the optional attribute ActualDuration is defined for this IfcTaskTime.

std::string ActualDuration() const

The actual duration of the task. It is a measured value. The value is either given as elapsed time or work time, which is defined by DurationType.

void setActualDuration(std::string v)
bool hasActualStart() const

Whether the optional attribute ActualStart is defined for this IfcTaskTime.

std::string ActualStart() const

The date on which a task is actually started. It is a measured value.

NOTE: The scheduled start date must be greater than or equal to the earliest start date. No constraint is applied to the actual start date with respect to the scheduled start date since a task may be started earlier than had originally been scheduled if circumstances allow.

void setActualStart(std::string v)
bool hasActualFinish() const

Whether the optional attribute ActualFinish is defined for this IfcTaskTime.

std::string ActualFinish() const

The date on which a task is actually finished.

void setActualFinish(std::string v)
bool hasRemainingTime() const

Whether the optional attribute RemainingTime is defined for this IfcTaskTime.

std::string RemainingTime() const

The amount of time remaining to complete a task. It is a predicted value. The value is either given as elapsed time or work time, which is defined by DurationType.

NOTE: The time remaining in which to complete a task may be determined both for tasks which have not yet started and those which have. Remaining time for a task not yet started has the same value as the scheduled duration. For a task already started, remaining time is calculated as the difference between the scheduled finish and the point of analysis.

void setRemainingTime(std::string v)
bool hasCompletion() const

Whether the optional attribute Completion is defined for this IfcTaskTime.

double Completion() const

The extent of completion expressed as a ratio or percentage. It is a measured value.

void setCompletion(double v)
const IfcParse::entity &declaration() const
IfcTaskTime(IfcEntityInstanceData *e)
IfcTaskTime(boost::optional<std::string> v1_Name, boost::optional<::Ifc4x2::IfcDataOriginEnum::Value> v2_DataOrigin, boost::optional<std::string> v3_UserDefinedDataOrigin, boost::optional<::Ifc4x2::IfcTaskDurationEnum::Value> v4_DurationType, boost::optional<std::string> v5_ScheduleDuration, boost::optional<std::string> v6_ScheduleStart, boost::optional<std::string> v7_ScheduleFinish, boost::optional<std::string> v8_EarlyStart, boost::optional<std::string> v9_EarlyFinish, boost::optional<std::string> v10_LateStart, boost::optional<std::string> v11_LateFinish, boost::optional<std::string> v12_FreeFloat, boost::optional<std::string> v13_TotalFloat, boost::optional<bool> v14_IsCritical, boost::optional<std::string> v15_StatusTime, boost::optional<std::string> v16_ActualDuration, boost::optional<std::string> v17_ActualStart, boost::optional<std::string> v18_ActualFinish, boost::optional<std::string> v19_RemainingTime, boost::optional<double> v20_Completion)

Public Static Functions

const IfcParse::entity &Class()