Class Ifc4::IfcPropertyEnumeration

Nested Relationships

This class is a nested type of Struct Ifc4.

Inheritance Relationships

Base Type

Class Documentation

class Ifc4::IfcPropertyEnumeration : public Ifc4::IfcPropertyAbstraction

IfcPropertyEnumeration is a collection of simple or measure values that define a prescribed set of alternatives from which ‘enumeration values’ are selected. This enables inclusion of enumeration values in property sets. IfcPropertyEnumeration provides a name for the enumeration as well as a list of unique (numeric or descriptive) values (that may have a measure type assigned). The entity defines the list of potential enumerators to be exchanged together (or separately) with properties of type IfcPropertyEnumeratedValue that selects their actual property values from this enumeration. The unit is handled by the Unit attribute:

If the Unit attribute is not given, than 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, the unit assigned by the unit attribute overrides the globally assigned unit.

Name EnumerationValues Type (through IfcValue) Unit

PEnum_DamperBladeAction Parallel IfcString

  • Opposed IfcString

Other IfcString

Unset IfcString

HISTORY New Entity in IFC Release 2.0, capabilities enhanced in IFC Release 2x. Entity has been renamed from IfcEnumeration in IFC Release 2x.

Public Functions

std::string Name() const

Name of this enumeration.

void setName(std::string v)
IfcEntityList::ptr EnumerationValues() const

List of values that form the enumeration.

void setEnumerationValues(IfcEntityList::ptr v)
bool hasUnit() const

Whether the optional attribute Unit is defined for this IfcPropertyEnumeration.

::Ifc4::IfcUnit *Unit() const

Unit for the enumerator values, 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
IfcPropertyEnumeration(IfcEntityInstanceData *e)
IfcPropertyEnumeration(std::string v1_Name, IfcEntityList::ptr v2_EnumerationValues, ::Ifc4::IfcUnit *v3_Unit)

Public Static Functions

const IfcParse::entity &Class()