Class Ifc2x3::IfcRoot

Nested Relationships

This class is a nested type of Struct Ifc2x3.

Inheritance Relationships

Base Type

Derived Types

Class Documentation

class Ifc2x3::IfcRoot : public IfcUtil::IfcBaseEntity

IfcRoot is the most abstract and root class for all IFC entity definitions that roots in the kernel or in subsequent layers of the IFC object model. It is therefore the common supertype of all IFC entities, beside those defined in an IFC resource schema. All entities that are subtypes of IfcRoot can be used independently, whereas resource schema entities, that are not subtypes of IfcRoot, are not supposed to be independent entities.

IfcRoot assigns the globally unique ID, and the ownership and history information to the entity. In addition it may provide for a name and a description about the concept.

NOTE View definitions and implementation agreement may impose additional restrictions on the use of the OwnerHistory to handle object versioning.

HISTORY New entity in IFC Release 1.0

IFC2x4 CHANGE The attribute OwnerHistory has been made OPTIONAL.

Subclassed by Ifc2x3::IfcObjectDefinition, Ifc2x3::IfcPropertyDefinition, Ifc2x3::IfcRelationship

Public Types

typedef IfcTemplatedEntityList<IfcRoot> list

Public Functions

std::string GlobalId() const

Assignment of a globally unique identifier within the entire software world.

void setGlobalId(std::string v)
::Ifc2x3::IfcOwnerHistory *OwnerHistory() const

Assignment of the information about the current ownership of that object, including owning actor, application, local identification and information captured about the recent changes of the object,

NOTE only the last modification in stored - either as addition, deletion or modification.

IFC2x4 CHANGE The attribute has been changed to be OPTIONAL.

void setOwnerHistory(::Ifc2x3::IfcOwnerHistory *v)
bool hasName() const

Whether the optional attribute Name is defined for this IfcRoot.

std::string Name() const

Optional name for use by the participating software systems or users. For some subtypes of IfcRoot the insertion of the Name attribute may be required. This would be enforced by a where rule.

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

Whether the optional attribute Description is defined for this IfcRoot.

std::string Description() const

Optional description, provided for exchanging informative comments.

void setDescription(std::string v)
const IfcParse::entity &declaration() const
IfcRoot(IfcEntityInstanceData *e)
IfcRoot(std::string v1_GlobalId, ::Ifc2x3::IfcOwnerHistory *v2_OwnerHistory, boost::optional<std::string> v3_Name, boost::optional<std::string> v4_Description)

Public Static Functions

const IfcParse::entity &Class()