Class Ifc4::IfcPropertySingleValue

Nested Relationships

This class is a nested type of Struct Ifc4.

Inheritance Relationships

Base Type

Class Documentation

class Ifc4::IfcPropertySingleValue : public Ifc4::IfcSimpleProperty

The property with a single value IfcPropertySingleValue defines a property object which has a single (numeric or descriptive) value assigned. It defines a property - single value combination for which the property Name, an optional Description,and an optional NominalValue with measure type is provided. In addition, the default unit as specified within the project unit context can be overriden by assigning an Unit. The unit is handled by the Unit attribute:

If the Unit attribute is not given, then the unit is already implied by the type of IfcMeasureValue or IfcDerivedMeasureValue. The associated unit can be found at the IfcUnitAssignment globally defined at the project level (IfcProject.UnitsInContext). If the Unit attribute is given, then the unit assigned by the Unit attribute overrides the globally assigned unit.

Examples of a property with single value are:

Name NominalValue Type (through IfcValue) Unit

Description Manufacturer “A” door IfcLabel

HISTORYNew entity in IFC Release 1.0. The entity has been renamed from IfcSimpleProperty in IFC Release 2x.

IFC2x3 CHANGEAttribute NominalValue has been made OPTIONAL with upward compatibility for file based exchange.

Public Functions

bool hasNominalValue() const

Whether the optional attribute NominalValue is defined for this IfcPropertySingleValue.

::Ifc4::IfcValue *NominalValue() const

Value and measure type of this property.

NOTE By virtue of the defined data type, that is selected from the SELECT IfcValue, the appropriate unit can be found within the IfcUnitAssignment, defined for the project if no value for the unit attribute is given.

IFC2x3 CHANGE The attribute has been made optional with upward compatibility for file based exchange.

void setNominalValue(::Ifc4::IfcValue *v)
bool hasUnit() const

Whether the optional attribute Unit is defined for this IfcPropertySingleValue.

::Ifc4::IfcUnit *Unit() const

Unit for the nominal value, if not given, the default value for the measure type (given by the TYPE of nominal value) is used as defined by the global unit assignment at IfcProject.

void setUnit(::Ifc4::IfcUnit *v)
const IfcParse::entity &declaration() const
IfcPropertySingleValue(IfcEntityInstanceData *e)
IfcPropertySingleValue(std::string v1_Name, boost::optional<std::string> v2_Description, ::Ifc4::IfcValue *v3_NominalValue, ::Ifc4::IfcUnit *v4_Unit)

Public Static Functions

const IfcParse::entity &Class()