Class Ifc2x3::IfcControllerType

Nested Relationships

This class is a nested type of Struct Ifc2x3.

Inheritance Relationships

Base Type

Class Documentation

class Ifc2x3::IfcControllerType : public Ifc2x3::IfcDistributionControlElementType

The distribution control element type IfcControllerType defines commonly shared information for occurrences of controllers. The set of shared information may include:

common properties with shared property sets common representations of shape common materials common composition of elements common ports applicable assignment of process types

It is used to define a controller specification (i.e. the specific product information, that is common to all occurrences of that product type). Controller types may be exchanged without being already assigned to occurrences. Occurrences of IfcControllerType are represented by instances of IfcController.

HISTORY: New entity in IFC2x2

Property Set Use Definition The property sets relating to this entity are defined by IfcPropertySet and attached by the HasPropertySets attribute. Refer to the documentation at the supertype IfcDistributionControlElementType and ancestors for inherited property set definitions. The following property set definitions are applicable to this entity according to the PredefinedType attribute:

Pset_ControllerTypeCommon Pset_ControllerTypeFloating (FLOATING) Pset_ControllerTypeMultiPosition (MULTIPOSITION) Pset_ControllerTypeProgrammable (PROGRAMMABLE) Pset_ControllerTypeProportional (PROPORTIONAL) Pset_ControllerTypeTwoPosition (TWOPOSITION)

Material Use Definition The material of the IfcControllerType is defined by IfcMaterialConstituentSet or as a fallback by IfcMaterial, and attached by the RelatingMaterial attribute on the IfcRelAssociatesMaterial relationship. It is accessible by the HasAssociations inverse attribute. The following keywords for IfcMaterialConstituentSet.MaterialConstituents[n].Name shall be used:

‘Casing’: Material from which the casing is constructed.

Composition Use Definition The IfcControllerType may be aggregated into components using IfcRelAggregates where RelatingObject refers to the enclosing IfcControllerType and RelatedObjects contains one or more components. Components are reflected at occurrences of this type using the IfcRelDefinesByObject relationship. Aggregation use is defined for the following predefined types:

PROGRAMMABLE: May contain IfcController components. Programmable Logic Controllers may be decomposed into logical elements for values and operations.

Port Use Definition The distribution ports relating to the IfcControllerType type are defined by IfcDistributionPort and attached by the IfcRelConnectsPortToElement relationship. Ports are reflected at occurrences of this type using the IfcRelDefinesByObject relationship. Refer to the documentation at IfcController for standard port definitions.

Public Types

typedef IfcTemplatedEntityList<IfcControllerType> list

Public Functions

::Ifc2x3::IfcControllerTypeEnum::Value PredefinedType() const

Identifies the predefined types of controller from which the type required may be set.

void setPredefinedType(::Ifc2x3::IfcControllerTypeEnum::Value v)
const IfcParse::entity &declaration() const
IfcControllerType(IfcEntityInstanceData *e)
IfcControllerType(std::string v1_GlobalId, ::Ifc2x3::IfcOwnerHistory *v2_OwnerHistory, boost::optional<std::string> v3_Name, boost::optional<std::string> v4_Description, boost::optional<std::string> v5_ApplicableOccurrence, boost::optional<IfcTemplatedEntityList<::Ifc2x3::IfcPropertySetDefinition>::ptr> v6_HasPropertySets, boost::optional<IfcTemplatedEntityList<::Ifc2x3::IfcRepresentationMap>::ptr> v7_RepresentationMaps, boost::optional<std::string> v8_Tag, boost::optional<std::string> v9_ElementType, ::Ifc2x3::IfcControllerTypeEnum::Value v10_PredefinedType)

Public Static Functions

const IfcParse::entity &Class()