Class Ifc4::IfcAppliedValue

Nested Relationships

This class is a nested type of Struct Ifc4.

Inheritance Relationships

Base Type

Derived Type

Class Documentation

class Ifc4::IfcAppliedValue : public IfcUtil::IfcBaseEntity

IfcAppliedValue is an abstract supertype that specifies the common attributes for cost values.

HISTORY: New Entity in IFC2x2. Modifed in IFC2x4 to use IfcDate for date values.

Use definitions The extent of the IfcAppliedValue is determined by the AppliedValue attribute which may be defined either as an IfcMeasureWithUnit or as an IfcMonetaryMeasure or as an IfcRatioMeasure via the IfcAppliedValueSelect type.

Optionally, an IfcAppliedValue may have an applicable date. This is intended to fix the date on which the value became relevant for use. It may be the date on which the value was set in the model or it may be a prior or future date when the value becomes operable.

Similarly, an IfcAppliedValue may have a ‘fixed until’ date. This is intended to fix the date on which the value ceases to be relevant for use.

An instance of IfcAppliedValue may have a unit basis asserted. This is defined as an IfcMeasureWithUnit that determines the extent of the unit value for application purposes. It is assumed that when this attribute is asserted, then the value given to IfcAppliedValue is that for unit quantity. This is not enforced within the IFC schema and thus needs to be controlled within an application.

Applied values may be referenced from a document (such as a price list). The relationship between one or more occurrences of IfcAppliedValue (or its subtypes) is achieved through the use of the IfcExternalReferenceRelationship in which the document provides the IfcExternalReferenceRelationship.RelatingExtReference and the value occurrences are the IfcExternalReferenceRelationship.RelatedResourceObjects.

Subclassed by Ifc4::IfcCostValue

Public Types

typedef IfcTemplatedEntityList<IfcAppliedValue> list

Public Functions

bool hasName() const

Whether the optional attribute Name is defined for this IfcAppliedValue.

std::string Name() const

A name or additional clarification given to a cost value.

void setName(std::string v)
bool hasDescription() const

Whether the optional attribute Description is defined for this IfcAppliedValue.

std::string Description() const

The description that may apply additional information about a cost value.

void setDescription(std::string v)
bool hasAppliedValue() const

Whether the optional attribute AppliedValue is defined for this IfcAppliedValue.

::Ifc4::IfcAppliedValueSelect *AppliedValue() const

The extent or quantity or amount of an applied value.

void setAppliedValue(::Ifc4::IfcAppliedValueSelect *v)
bool hasUnitBasis() const

Whether the optional attribute UnitBasis is defined for this IfcAppliedValue.

::Ifc4::IfcMeasureWithUnit *UnitBasis() const

The number and unit of measure on which the unit cost is based.

Note: As well as the normally expected units of measure such as length, area, volume etc., costs may be based on units of measure which need to be defined e.g. sack, drum, pallet, item etc. Unit costs may be based on quantities greater (or lesser) than a unitary value of the basis measure. For instance, timber may have a unit cost rate per X meters where X > 1; similarly for cable, piping and many other items. The basis number may be either an integer or a real value.

Note: This attribute should be asserted for all circumstances where the cost to be applied is per unit quantity. It may be asserted even for circumstances where an item price is used, in which case the unit cost basis should be by item (or equivalent definition).

void setUnitBasis(::Ifc4::IfcMeasureWithUnit *v)
bool hasApplicableDate() const

Whether the optional attribute ApplicableDate is defined for this IfcAppliedValue.

std::string ApplicableDate() const

The date on or from which an applied value is applicable.

IFC2x4 CHANGE Type changed from IfcDateTimeSelect.

void setApplicableDate(std::string v)
bool hasFixedUntilDate() const

Whether the optional attribute FixedUntilDate is defined for this IfcAppliedValue.

std::string FixedUntilDate() const

The date until which applied value is applicable.

IFC2x4 CHANGE Type changed from IfcDateTimeSelect.

void setFixedUntilDate(std::string v)
bool hasCategory() const

Whether the optional attribute Category is defined for this IfcAppliedValue.

std::string Category() const
void setCategory(std::string v)
bool hasCondition() const

Whether the optional attribute Condition is defined for this IfcAppliedValue.

std::string Condition() const
void setCondition(std::string v)
bool hasArithmeticOperator() const

Whether the optional attribute ArithmeticOperator is defined for this IfcAppliedValue.

::Ifc4::IfcArithmeticOperatorEnum::Value ArithmeticOperator() const
void setArithmeticOperator(::Ifc4::IfcArithmeticOperatorEnum::Value v)
bool hasComponents() const

Whether the optional attribute Components is defined for this IfcAppliedValue.

IfcTemplatedEntityList<::Ifc4::IfcAppliedValue>::ptr Components() const
void setComponents(IfcTemplatedEntityList<::Ifc4::IfcAppliedValue>::ptr v)
IfcTemplatedEntityList<IfcExternalReferenceRelationship>::ptr HasExternalReference() const
const IfcParse::entity &declaration() const
IfcAppliedValue(IfcEntityInstanceData *e)
IfcAppliedValue(boost::optional<std::string> v1_Name, boost::optional<std::string> v2_Description, ::Ifc4::IfcAppliedValueSelect *v3_AppliedValue, ::Ifc4::IfcMeasureWithUnit *v4_UnitBasis, boost::optional<std::string> v5_ApplicableDate, boost::optional<std::string> v6_FixedUntilDate, boost::optional<std::string> v7_Category, boost::optional<std::string> v8_Condition, boost::optional<::Ifc4::IfcArithmeticOperatorEnum::Value> v9_ArithmeticOperator, boost::optional<IfcTemplatedEntityList<::Ifc4::IfcAppliedValue>::ptr> v10_Components)

Public Static Functions

const IfcParse::entity &Class()