Class Ifc4::IfcResource

Nested Relationships

This class is a nested type of Struct Ifc4.

Inheritance Relationships

Base Type

Derived Type

Class Documentation

class Ifc4::IfcResource : public Ifc4::IfcObject

IfcResource contains the information needed to represent the costs, schedule, and other impacts from the use of a thing in a process. It is not intended to use IfcResource to model the general properties of the things themselves, while an optional linkage from IfcResource to the things to be used can be specified (specifically, the relationship from subtypes of IfcResource to IfcProduct through the IfcRelAssignsToResource relationship).

There are two basic intended uses of IfcResource. First, if the attributes of the thing are not needed for the purpose of the use of IfcResource, or the types of things are not explicitly modeled in IFC yet, then the linkage between the resource and the thing doesn’t have to be instantiated in the system. That is, the attributes of IfcResource (or its subtypes) alone are sufficient to represent the use of the thing as a resource for the purpose of the project.

EXAMPLE: construction equipment such as earth-moving vehicles or tools are not currently modeled within the IFC. For the purpose of estimating and scheduling, these can be represented using subtypes of IfcResource alone.

Second, if the attributes of the thing are needed for the use of IfcResource objects, and they are modeled explicitly as objects, then the IfcResource instances can be linked to the instances of the type of the things being referenced. Things that might be used as resources and that are already modeled in the IFC include physical products, people and organizations, and materials. The relationship object IfcRelAssignsToResource is provided for this approach.

The inherited attribute ObjectType is used as a textual code that identifies the resource type.

HISTORY New entity in IFC Release 1.0

IFC2x PLATFORM CHANGE: The attributes BaseUnit and ResourceConsumption have been removed from the abstract entity; they are reintroduced at a lower level in the hierarchy.

Subclassed by Ifc4::IfcConstructionResource

Public Types

typedef IfcTemplatedEntityList<IfcResource> list

Public Functions

bool hasIdentification() const

Whether the optional attribute Identification is defined for this IfcResource.

std::string Identification() const

An identifying designation given to a resource. It is the identifier at the occurrence level.

IFC2x4 CHANGE Attribute promoted from subtype IfcConstructionResource.

void setIdentification(std::string v)
bool hasLongDescription() const

Whether the optional attribute LongDescription is defined for this IfcResource.

std::string LongDescription() const

A detailed description of the resource (e.g. the skillset for a labor resource).

IFC2x4 NOTE: The attribute LongDescription is added replacing the ResourceGroup attribute at subtype IfcConstructionResource.

void setLongDescription(std::string v)
IfcTemplatedEntityList<IfcRelAssignsToResource>::ptr ResourceOf() const
const IfcParse::entity &declaration() const
IfcResource(IfcEntityInstanceData *e)
IfcResource(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_Identification, boost::optional<std::string> v7_LongDescription)

Public Static Functions

const IfcParse::entity &Class()