Class Ifc2x3::IfcAsset

Nested Relationships

This class is a nested type of Struct Ifc2x3.

Inheritance Relationships

Base Type

Class Documentation

class Ifc2x3::IfcAsset : public Ifc2x3::IfcGroup

An asset is a uniquely identifiable grouping of elements acting as a single entity that has a financial value or that can be operated on as a single unit.

An asset is generally the level of granularity at which maintenance operations are undertaken. An asset is a group that can contain one or more elements. Whilst the financial value of a component or element can be defined, financial value is also defined for accounting purposes at the level of the asset. There are a number of actors that can be associated with an asset, each actor having a role. Actors within the scope of the project are indicated using the IfcRelAssignsToActor relationship in which case roles should be defined through the IfcActorRole class; otherwise principal actors are identified as attributes of the class. In the existence of both, direct attributes take precedence. There are a number of costs that can be associated with an asset, each cost having a role. These are specified through the OriginalValue, CurrentValue, TotalReplacementCost and DepreciatedValue attributes.

HISTORY: New entity in IFC2x. In IFC2x4, all attributes made optional and date values changed to use IfcDate.

Property Set Use Definition The property sets relating to this entity are defined by IfcPropertySet and attached by the IfcRelDefinesByProperties relationship. They are accessible by the IsDefinedBy inverse attribute. Refer to the documentation at the supertype IfcGroup and ancestors for inherited property set definitions. The following property set definitions are applicable to this entity: Pset_Asset

Classification Use Definition Classifications may be applied using IfcRelAssociatesClassification where RelatedObjects contains the IfcAsset and RelatingClassification refers to an IfcClassification or IfcClassificationReference.

IfcClassificationReference: The operating function of an asset within an organization may be particularly valuable in situations where one organization provides and maintains core services and another organization adds and maintains terminal services. It can classify who owns and is responsible for the asset. Operating function can be designated through the use of one or more classification references.

Assignment Use Definition The IfcAsset may be assigned to the following entities using relationships as indicated:

IfcActor (IfcRelAssignsToActor): Indicates the actor who owns, uses, or is responsible for the asset (as indicated by role in relationship), if such actor is within the scope of the project. IfcCostItem (IfcRelAssignsToControl): Indicates a cost item encompassing the asset.

The IfcAsset may have assignments of its own using the IfcRelAssignsToGroup relationship where RelatingGroup refers to the IfcAsset and RelatedObjects contains one or more objects of the following types: IfcElement: Physical elements that comprise the asset.

Public Types

typedef IfcTemplatedEntityList<IfcAsset> list

Public Functions

std::string AssetID() const
void setAssetID(std::string v)
::Ifc2x3::IfcCostValue *OriginalValue() const

The cost value of the asset at the time of purchase.

void setOriginalValue(::Ifc2x3::IfcCostValue *v)
::Ifc2x3::IfcCostValue *CurrentValue() const

The current cost value of the asset.

void setCurrentValue(::Ifc2x3::IfcCostValue *v)
::Ifc2x3::IfcCostValue *TotalReplacementCost() const

The total cost of replacement of the asset.

void setTotalReplacementCost(::Ifc2x3::IfcCostValue *v)
::Ifc2x3::IfcActorSelect *Owner() const

The name of the person or organization that ‘owns’ the asset.

void setOwner(::Ifc2x3::IfcActorSelect *v)
::Ifc2x3::IfcActorSelect *User() const

The name of the person or organization that ‘uses’ the asset.

void setUser(::Ifc2x3::IfcActorSelect *v)
::Ifc2x3::IfcPerson *ResponsiblePerson() const

The person designated to be responsible for the asset. NOTE: In some regulations (for example, UK Health and Safety at Work Act, Electricity at Work Regulations), management of assets must have a person identified as being responsible and to whom regulatory, insurance and other organizations communicate. In places where there is not a legal requirement, the responsible person would be the asset manager but would not have a legal status.

void setResponsiblePerson(::Ifc2x3::IfcPerson *v)
::Ifc2x3::IfcCalendarDate *IncorporationDate() const

The date on which an asset was incorporated into the works, installed, constructed, erected or completed. NOTE: This is the date on which an asset is considered to start depreciating.

IFC2x4 CHANGE Type changed from IfcDateTimeSelect.

void setIncorporationDate(::Ifc2x3::IfcCalendarDate *v)
::Ifc2x3::IfcCostValue *DepreciatedValue() const

The current value of an asset within the accounting rules and procedures of an organization.

void setDepreciatedValue(::Ifc2x3::IfcCostValue *v)
const IfcParse::entity &declaration() const
IfcAsset(IfcEntityInstanceData *e)
IfcAsset(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_ObjectType, std::string v6_AssetID, ::Ifc2x3::IfcCostValue *v7_OriginalValue, ::Ifc2x3::IfcCostValue *v8_CurrentValue, ::Ifc2x3::IfcCostValue *v9_TotalReplacementCost, ::Ifc2x3::IfcActorSelect *v10_Owner, ::Ifc2x3::IfcActorSelect *v11_User, ::Ifc2x3::IfcPerson *v12_ResponsiblePerson, ::Ifc2x3::IfcCalendarDate *v13_IncorporationDate, ::Ifc2x3::IfcCostValue *v14_DepreciatedValue)

Public Static Functions

const IfcParse::entity &Class()