Class Ifc4::IfcProxy

Nested Relationships

This class is a nested type of Struct Ifc4.

Inheritance Relationships

Base Type

Class Documentation

class Ifc4::IfcProxy : public Ifc4::IfcProduct

IfcProxy is intended to be a kind of a container for wrapping objects which are defined by associated properties, which may or may not have a geometric representation and placement in space. A proxy may have a semantic meaning, defined by the Name attribute, and property definitions, attached through the property assignment relationship, which definition may be outside of the definitions given by the current release of IFC.

The ProxyType may give an indication to which high level semantic breakdown of object the semantic definition of the proxy relates to. the Tag attribute may be used to assign a human or system interpretable identifier (such as a serial number or bar code).

NOTE 1 Given that only a limited number of semantic constructs can be formally defined within IFC (and it will never be possible to define all), there has to be a mechanism for capturing those constructs that are not (yet) defined by IFC.

NOTE 2 Product proxies are a mechanism that allows to exchange data that is part of the project but not necessarily part of the IFC model. Those proxies may have geometric representations assigned.

HISTORY New entity in IFC Release 1.5.

Public Types

typedef IfcTemplatedEntityList<IfcProxy> list

Public Functions

::Ifc4::IfcObjectTypeEnum::Value ProxyType() const

High level (and only) semantic meaning attached to the IfcProxy, defining the basic construct type behind the Proxy, e.g. Product or Process.

void setProxyType(::Ifc4::IfcObjectTypeEnum::Value v)
bool hasTag() const

Whether the optional attribute Tag is defined for this IfcProxy.

std::string Tag() const

The tag (or label) identifier at the particular instance of a product, e.g. the serial number, or the position number. It is the identifier at the occurrence level.

void setTag(std::string v)
const IfcParse::entity &declaration() const
IfcProxy(IfcEntityInstanceData *e)
IfcProxy(std::string v1_GlobalId, ::Ifc4::IfcOwnerHistory *v2_OwnerHistory, boost::optional<std::string> v3_Name, boost::optional<std::string> v4_Description, boost::optional<std::string> v5_ObjectType, ::Ifc4::IfcObjectPlacement *v6_ObjectPlacement, ::Ifc4::IfcProductRepresentation *v7_Representation, ::Ifc4::IfcObjectTypeEnum::Value v8_ProxyType, boost::optional<std::string> v9_Tag)

Public Static Functions

const IfcParse::entity &Class()