Class Ifc2x3::IfcConstraintAggregationRelationship

Nested Relationships

This class is a nested type of Struct Ifc2x3.

Inheritance Relationships

Base Type

Class Documentation

class Ifc2x3::IfcConstraintAggregationRelationship : public IfcUtil::IfcBaseEntity

An IfcConstraintAggregationRelationship is an objectified relationship that enables instances of IfcConstraint subtypes to be aggregated together logically.

HISTORY New Entity in IFC Release 2.0. Modified in IFC2x2.

IFC2x4 CHANGE Subtyped from IfcConstraintRelationship

Use definition IfcConstraintAggregationRelationship allows the aggregation link between subtypes of constraint to be logically defined (AND, OR, XOR, NOTAND, NOTOR). In this way, whereby an object or property can have multiple constraints assigned, and the logical linkage between them can be specified. Thus linked constraints might show as for example (> X AND < Y) which is useful for an allowed range, or bounded value, for example, (A OR B OR C) which is valuable for an enumerated property where a selection is constrained to be (at least) one of A, B or C. Figure 237 illustrates constraint aggregation.

Figure 237 — Constraint aggregation

Public Functions

bool hasName() const

Whether the optional attribute Name is defined for this IfcConstraintAggregationRelationship.

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

Whether the optional attribute Description is defined for this IfcConstraintAggregationRelationship.

std::string Description() const
void setDescription(std::string v)
::Ifc2x3::IfcConstraint *RelatingConstraint() const
void setRelatingConstraint(::Ifc2x3::IfcConstraint *v)
IfcTemplatedEntityList<::Ifc2x3::IfcConstraint>::ptr RelatedConstraints() const
void setRelatedConstraints(IfcTemplatedEntityList<::Ifc2x3::IfcConstraint>::ptr v)
::Ifc2x3::IfcLogicalOperatorEnum::Value LogicalAggregator() const

Enumeration that identifies the logical type of aggregation.

void setLogicalAggregator(::Ifc2x3::IfcLogicalOperatorEnum::Value v)
const IfcParse::entity &declaration() const
IfcConstraintAggregationRelationship(IfcEntityInstanceData *e)
IfcConstraintAggregationRelationship(boost::optional<std::string> v1_Name, boost::optional<std::string> v2_Description, ::Ifc2x3::IfcConstraint *v3_RelatingConstraint, IfcTemplatedEntityList<::Ifc2x3::IfcConstraint>::ptr v4_RelatedConstraints, ::Ifc2x3::IfcLogicalOperatorEnum::Value v5_LogicalAggregator)

Public Static Functions

const IfcParse::entity &Class()