Class Ifc4::IfcCostSchedule

Nested Relationships

This class is a nested type of Struct Ifc4.

Inheritance Relationships

Base Type

Class Documentation

class Ifc4::IfcCostSchedule : public Ifc4::IfcControl

An IfcCostSchedule brings together instances of IfcCostItem either for the purpose of identifying purely cost information as in an estimate for constructions costs or for including cost information within another presentation form such as a work order.

HISTORY New Entity in IFC Release 2.0. Modified in IFC 2x2 IFC2x4 CHANGE Attribute ‘ID’ changed to Identification and promoted to supertype IfcControl, PredefinedType made optional, attributes PreparedBy, SubmittedBy, TargetUsers removed.

Declaration Use Definition The IfcCostSchedule may be declared within the project using the IfcRelDeclares relationship where RelatingContext refers to the single IfcProject and RelatedDefinitions contains the IfcCostSchedule. Alternatively, if the IfcCostSchedule is aggregated within another IfcControl object, then it shall not have a direct declaration relationship (whereas the containing object may have a declaration relationship).

Assignment Use Definition The IfcCostSchedule may be assigned to the following entities using relationships as indicated:

IfcActor (IfcRelAssignsToActor): Persons and organizations involved in the preparation, submittal, and as target users.

The IfcCostSchedule may have assignments of its own using the IfcRelAssignsToControl relationship where RelatingControl refers to the IfcCostSchedule and RelatedObjects contains one or more objects of the following types: IfcCostItem: Indicates costs published within this cost schedule, typically a single root cost item forming a hierarchy of nested cost items.

Classification Use Definition Classifications may be applied using IfcRelAssociatesClassification where RelatedObjects contains the IfcCostSchedule and RelatingClassification refers to an IfcClassification or IfcClassificationReference.

IfcClassification: Classifications to be used for cost items within the cost schedule.

Approval Use Definition Approvals may be associated to indicate the status of acceptance or rejection using the IfcRelAssociatesApproval relationship where RelatingApproval refers to an IfcApproval and RelatedObjects contains the IfcCostSchedule. Approvals may be split into sub-approvals using IfcApprovalRelationship to track approval status separately for each party where RelatingApproval refers to the higher-level approval and RelatedApprovals contains one or more lower-level approvals. The hierarchy of approvals implies sequencing such that a higher-level approval is not executed until all of its lower-level approvals have been accepted.

Public Types

typedef IfcTemplatedEntityList<IfcCostSchedule> list

Public Functions

bool hasPredefinedType() const

Whether the optional attribute PredefinedType is defined for this IfcCostSchedule.

::Ifc4::IfcCostScheduleTypeEnum::Value PredefinedType() const

Predefined generic type for a cost schedule that is specified in an enumeration. There may be a property set given specifically for the predefined types.

IFC2x4 CHANGE The attribute has been made optional.

void setPredefinedType(::Ifc4::IfcCostScheduleTypeEnum::Value v)
bool hasStatus() const

Whether the optional attribute Status is defined for this IfcCostSchedule.

std::string Status() const

The current status of a cost schedule. Examples of status values that might be used for a cost schedule status include:

PLANNED APPROVED AGREED ISSUED STARTED

void setStatus(std::string v)
bool hasSubmittedOn() const

Whether the optional attribute SubmittedOn is defined for this IfcCostSchedule.

std::string SubmittedOn() const

The date and time on which the cost schedule was submitted.

IFC2x4 CHANGE Type changed from IfcDateTimeSelect.

void setSubmittedOn(std::string v)
bool hasUpdateDate() const

Whether the optional attribute UpdateDate is defined for this IfcCostSchedule.

std::string UpdateDate() const

The date and time that this cost schedule is updated; this allows tracking the schedule history.

IFC2x4 CHANGE Type changed from IfcDateTimeSelect.

void setUpdateDate(std::string v)
const IfcParse::entity &declaration() const
IfcCostSchedule(IfcEntityInstanceData *e)
IfcCostSchedule(std::string v1_GlobalId, ::Ifc4::IfcOwnerHistory *v2_OwnerHistory, boost::optional<std::string> v3_Name, boost::optional<std::string> v4_Description, boost::optional<std::string> v5_ObjectType, boost::optional<std::string> v6_Identification, boost::optional<::Ifc4::IfcCostScheduleTypeEnum::Value> v7_PredefinedType, boost::optional<std::string> v8_Status, boost::optional<std::string> v9_SubmittedOn, boost::optional<std::string> v10_UpdateDate)

Public Static Functions

const IfcParse::entity &Class()