Class Ifc4::IfcProjectLibrary

Nested Relationships

This class is a nested type of Struct Ifc4.

Inheritance Relationships

Base Type

Class Documentation

class Ifc4::IfcProjectLibrary : public Ifc4::IfcContext

IfcProjectLibrary collects all library elements that are included within a referenced project data set.

Examples for project libraries include:

type libraries (also called style or family libraries): a collection of subtypes of IfcTypeObject property definition libraries: a collections of IfcPropertySetTemplate or IfcPropertyTemplates

HISTORY New entity in IFC2x4.

Attribute use definition

SELF\IfcContext.RepresentationContext Context of the representations used within the project library. When the project library includes shape representations for its library type objects, one or several geometric representation contexts need to be included that define the coordinate system, the coordinate space dimensions, and/or the precision factor.

SELF\IfcContext.UnitsInContext Units locally assigned to measure types used within the context of this project library.

NOTE It is generally discouraged to use a different length measure and plane angle measure in an included project library compared with the project itself. It may lead to unexpected results for the shape representation of items included in the project library.

Relationship use definition

Instances of IfcProjectLibrary are assigned to the project context using the IfcRelDeclares relationship and accessible through the inverse attribute HasContext. Individual object types and property (set) templates are assigned to the IfcProjectLibrary using the IfcRelDeclares relationship and are accessible through the inverse attribute Declares.

An IfcProjectLibrary may be decomposed into sub libraries using the relationship IfcRelNests. Sub libraries are accessed by the IfcProjectLibrary through the inverse attribute IsNestedBy.

Public Types

typedef IfcTemplatedEntityList<IfcProjectLibrary> list

Public Functions

const IfcParse::entity &declaration() const
IfcProjectLibrary(IfcEntityInstanceData *e)
IfcProjectLibrary(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, boost::optional<std::string> v6_LongName, boost::optional<std::string> v7_Phase, boost::optional<IfcTemplatedEntityList<::Ifc4::IfcRepresentationContext>::ptr> v8_RepresentationContexts, ::Ifc4::IfcUnitAssignment *v9_UnitsInContext)

Public Static Functions

const IfcParse::entity &Class()