Class Ifc4x1::IfcMetric¶
Defined in File Ifc4x1.h
Nested Relationships¶
This class is a nested type of Struct Ifc4x1.
Inheritance Relationships¶
Base Type¶
public Ifc4x1::IfcConstraint
(Class Ifc4x1::IfcConstraint)
Class Documentation¶
-
class
Ifc4x1
::
IfcMetric
: public Ifc4x1::IfcConstraint¶ An IfcMetric is used to capture quantitative resultant metrics that can be applied to objectives.
HISTORY: New Entity in IFC Release 2.0
Use Definition IfcMetric is a subtype of IfcConstraint and may be associated with any subtype of IfcRoot through the IfcRelAssociatesConstraint relationship in the IfcControlExtension schema, or may be associated with IfcProperty by IfcPropertyConstraintRelationship.
The aim of IfcMetric is to capture the quantitative aspects of a constraint.
For instance, when undertaking a move (instantiated through the IfcTask class), a constraint is instantiated as the class IfcMetric and may be named as a ‘Move Start Constraint’ or ‘Move End Constraint’ and described using one of a possible range of move constraints as shown in the table below.
Constraint Description Benchmark Grade
ASSOONASPOSSIBLE Action should commence at the earliest possible opportunity. GREATERTHANOREQUALTO SOFT
MUSTSTARTON Action must start at a prescribed date/time. EQUALTO HARD
MUSTSTARTBEFORE Action must start before a prescribed date/time. LESSTHANOREQUALTO HARD
MUSTSTARTAFTER Action must not start before a prescribed date/time. GREATERTHANOREQUALTO HARD
MAYSTARTAFTER Action may start at any time following a prescribed date/time. GREATERTHANOREQUALTO SOFT
MUSTFINISHON Action must be complete at or by a prescribed date/time. EQUALTO HARD
MUSTFINISHBEFORE Action must be complete before a prescribed date/time. LESSTHANOREQUALTO HARD
This constraint (instantiated as IfcMetric) uses a Date/Time value in IfcMetric.DataValue through IfcMetricValueSelect. An appropriate benchmark is applied according to the requirement of the constraint (as indicated) by IfcMetric.Benchmark. The grade of the constraint (hard, soft, advisory) must be specified through IfcConstraint.ConstraintGrade whilst the time at which the constraint is created may be optionally asserted through IfcConstraint.CreationTime.
Public Types
-
typedef IfcTemplatedEntityList<IfcMetric>
list
¶
Public Functions
-
::Ifc4x1::IfcBenchmarkEnum::Value
Benchmark
() const¶ Enumeration that identifies the type of benchmark data.
-
void
setBenchmark
(::Ifc4x1::IfcBenchmarkEnum::Value v)¶
-
bool
hasValueSource
() const¶ Whether the optional attribute ValueSource is defined for this IfcMetric.
-
std::string
ValueSource
() const¶ Reference source for data values.
-
void
setValueSource
(std::string v)¶
-
::Ifc4x1::IfcMetricValueSelect *
DataValue
() const¶ The value with data type defined by the underlying type accesses via IfcMetricValueSelect.
-
void
setDataValue
(::Ifc4x1::IfcMetricValueSelect *v)¶
-
bool
hasReferencePath
() const¶ Whether the optional attribute ReferencePath is defined for this IfcMetric.
-
::Ifc4x1::IfcReference *
ReferencePath
() const¶
-
void
setReferencePath
(::Ifc4x1::IfcReference *v)¶
-
IfcMetric
(IfcEntityInstanceData *e)¶
-
IfcMetric
(std::string v1_Name, boost::optional<std::string> v2_Description, ::Ifc4x1::IfcConstraintEnum::Value v3_ConstraintGrade, boost::optional<std::string> v4_ConstraintSource, ::Ifc4x1::IfcActorSelect *v5_CreatingActor, boost::optional<std::string> v6_CreationTime, boost::optional<std::string> v7_UserDefinedGrade, ::Ifc4x1::IfcBenchmarkEnum::Value v8_Benchmark, boost::optional<std::string> v9_ValueSource, ::Ifc4x1::IfcMetricValueSelect *v10_DataValue, ::Ifc4x1::IfcReference *v11_ReferencePath)¶
-
typedef IfcTemplatedEntityList<IfcMetric>