CFx SDK Documentation 2026 SP0
Loading...
Searching...
No Matches
OdIfc4x4::IfcConstructionResource Class Reference

#include <IfcConstructionResourceAutoImpl.h>

Inheritance diagram for OdIfc4x4::IfcConstructionResource:
OdIfc4x4::IfcResource OdIfc4x4::IfcObject OdIfc4x4::IfcObjectDefinition OdIfc4x4::IfcRoot OdIfc4x4::OdIFC4X4Instance OdIfc::OdIfcInstance OdIfc4x4::IfcConstructionEquipmentResource OdIfc4x4::IfcConstructionMaterialResource OdIfc4x4::IfcConstructionProductResource OdIfc4x4::IfcCrewResource OdIfc4x4::IfcLaborResource OdIfc4x4::IfcSubContractResource

Public Member Functions

const OdDAIObjectId & getUsage () const
 
void setUsage (const OdDAIObjectId &Usage)
 
void getBaseCosts (OdDAIObjectIds &BaseCosts) const
 
OdDAI::ListOfOdDAIObjectId & baseCosts ()
 
const OdDAIObjectId & getBaseQuantity () const
 
void setBaseQuantity (const OdDAIObjectId &BaseQuantity)
 
virtual OdResult inFields (OdDAI::OdSpfFilerBase *rdFiler) override
 
virtual OdResult outFields (OdDAI::OdSpfFilerBase *wrFiler) override
 
virtual OdDAI::Entity * getInstanceType () const override
 
virtual OdRxValue getAttr (const char *attrName) const override
 
virtual bool comparedToEarlyImpl (const OdDAI::ApplicationInstance *pOther, OdRx::Ordering &ordering) const override
 
virtual void unsetAttr (const char *explicitAttrName) override
 
virtual bool testAttr (const char *explicitAttrName) const override
 
virtual bool putAttr (const char *explicitAttrName, const OdRxValue &val) override
 
virtual bool isKindOf (OdIfc::OdIfcEntityType entityType) const override
 
virtual OdIfc::OdIfcEntityType type () const override
 
virtual OdRxValue getAttr (const OdIfc::OdIfcAttribute attrDef) const override
 
virtual void unsetAttr (const OdIfc::OdIfcAttribute explicitAttrDef) override
 
virtual bool testAttr (const OdIfc::OdIfcAttribute explicitAttrDef) const override
 
virtual bool putAttr (const OdIfc::OdIfcAttribute explicitAttrDef, const OdRxValue &val) override
 
- Public Member Functions inherited from OdIfc4x4::IfcResource
const OdAnsiString & getIdentification () const
 
void setIdentification (const OdAnsiString &Identification)
 
const OdAnsiString & getLongDescription () const
 
void setLongDescription (const OdAnsiString &LongDescription)
 
void getInvResourceOf (OdDAIObjectIds &ResourceOf) const
 
 IfcResource ()
 
- Public Member Functions inherited from OdIfc4x4::IfcObject
const OdAnsiString & getObjectType () const
 
void setObjectType (const OdAnsiString &ObjectType)
 
void getInvIsDeclaredBy (OdDAIObjectIds &IsDeclaredBy) const
 
void getInvDeclares (OdDAIObjectIds &Declares) const
 
void getInvIsTypedBy (OdDAIObjectIds &IsTypedBy) const
 
void getInvIsDefinedBy (OdDAIObjectIds &IsDefinedBy) const
 
 IfcObject ()
 
- Public Member Functions inherited from OdIfc4x4::IfcObjectDefinition
void getInvHasAssignments (OdDAIObjectIds &HasAssignments) const
 
void getInvNests (OdDAIObjectIds &Nests) const
 
void getInvIsNestedBy (OdDAIObjectIds &IsNestedBy) const
 
void getInvHasContext (OdDAIObjectIds &HasContext) const
 
void getInvIsDecomposedBy (OdDAIObjectIds &IsDecomposedBy) const
 
void getInvDecomposes (OdDAIObjectIds &Decomposes) const
 
void getInvHasAssociations (OdDAIObjectIds &HasAssociations) const
 
- Public Member Functions inherited from OdIfc4x4::IfcRoot
OdDAI::CompressedGUID getGlobalId () const
 
void setGlobalId (OdDAI::CompressedGUID GlobalId)
 
const OdDAIObjectId & getOwnerHistory () const
 
void setOwnerHistory (const OdDAIObjectId &OwnerHistory)
 
const OdAnsiString & getName () const
 
void setName (const OdAnsiString &Name)
 
const OdAnsiString & getDescription () const
 
void setDescription (const OdAnsiString &Description)
 
 IfcRoot ()
 
- Public Member Functions inherited from OdIfc4x4::OdIFC4X4Instance
void setInverseCounterParts () override
 
- Public Member Functions inherited from OdIfc::OdIfcInstance
 ODRX_DECLARE_MEMBERS (OdIfcInstance)
 
 OdIfcInstance ()
 
 ~OdIfcInstance ()
 
bool isInstanceOf (OdIfcEntityType entityType) const
 
IfcOpResult resolved ()
 
void resolve (IfcOpResult resolved, void *resPtr)
 
void unresolve ()
 
virtual void setGsNode (OdGsCache *pGsNode)
 
virtual OdGsCachegsNode () const
 
virtual OdUInt32 subSetAttributes (OdGiDrawableTraits *traits) const
 
virtual bool subWorldDraw (OdGiWorldDraw *wd) const
 
virtual OdDbStub * ownerId () const
 

Protected Attributes

OdDAIObjectId m_Usage
 
OdDAI::ListOfOdDAIObjectId m_BaseCosts
 
OdDAIObjectId m_BaseQuantity
 
- Protected Attributes inherited from OdIfc4x4::IfcResource
OdAnsiString m_Identification
 
OdAnsiString m_LongDescription
 
- Protected Attributes inherited from OdIfc4x4::IfcObject
OdAnsiString m_ObjectType
 
- Protected Attributes inherited from OdIfc4x4::IfcRoot
OdDAI::CompressedGUID m_GlobalId
 
OdDAIObjectId m_OwnerHistory
 
OdAnsiString m_Name
 
OdAnsiString m_Description
 
- Protected Attributes inherited from OdIfc::OdIfcInstance
voidm_resPtr
 
IfcOpResult m_resolved
 

Additional Inherited Members

- Static Public Member Functions inherited from OdIfc::OdIfcInstance
static const OdGePoint3dasPoint3d (const OdIfcInstance *inst)
 
static const OdGePoint2dasPoint2d (const OdIfcInstance *inst)
 
static const OdGeVector3dasVector3d (const OdIfcInstance *inst)
 
static const OdGeVector2dasVector2d (const OdIfcInstance *inst)
 
static const OdGeMatrix2dasMatrix2d (const OdIfcInstance *inst)
 
static const OdGeMatrix3dasMatrix3d (const OdIfcInstance *inst)
 
static OdIfcCompoundPtr asCompound (OdSmartPtr< OdIfcInstance > inst)
 
static const OdCmEntityColorasRgbColor (const OdIfcInstance *inst)
 

Detailed Description

IfcConstructionResource is an abstract generalization of the different resources used in construction projects, mainly labor, material, equipment and product resources, plus subcontracted resources and aggregations such as a crew resource.

A resource represents "use of something" and does not necessarily correspond to a single item such as a person or vehicle, but represents a pool of items having limited availability such as general labor or an equipment fleet. A resource can represent either a generic resource pool (not having any task assignment) or a task-specific resource allocation (having an IfcTask assignment).

  • Declaration use Definition - A root-level resource (specifically IfcCrewResource or IfcSubContractResource) is declared within the project by IfcRelDeclares where RelatingContext refers to the single IfcProject and RelatedObjects refers to one or more IfcConstructionResource, and other root-level objects within the project.
  • Assignment use Definition - A resource can be assigned to an actor by IfcRelAssignsToActor where RelatingActor refers to an IfcActor and RelatedObjects refers to one or more IfcConstructionResource or other objects. Such relationship indicates the actor responsible for allocating the resource such as partitioning into task-specific allocations, delegating to other actors, and/or scheduling over time. Note that this assignment does not indicate the person or organization performing the work; that is indicated by IfcRelAssignsToResource. The actor responsible for the resource may or may not be the same as any actor(s) performing work. A resource can be assigned to a control by IfcRelAssignsToControl where RelatingControl refers to an IfcControl and RelatedObjects refers to one or more IfcConstructionResource or other objects. Most commonly an IfcWorkCalendar is assigned indicating availability of the resource, where such calendar is nested within a base calendar or an IfcWorkPlan which in turn is assigned to the IfcProject. A resource can be assigned to a group by IfcRelAssignsToGroup where RelatingGroup refers to an IfcGroup and RelatedObjects refers to one or more IfcConstructionResource or other objects. Most commonly an IfcAsset is assigned indicating the asset to be tracked, where such asset is nested within an IfcInventory which in turn is assigned to the IfcProject. A resource can be assigned to a product by IfcRelAssignsToProduct where RelatingProduct refers to an IfcProduct and RelatedObjects refers to one or more IfcConstructionResource or other objects. Most commonly an IfcElement subtype is assigned indicating the product to be constructed, where such product is connected to a spatial structure which in turn is aggregated within the IfcProject. A resource can be assigned to a process by IfcRelAssignsToProcess where RelatingProcess refers to an IfcProcess and RelatedObjects refers to one or more IfcConstructionResource or other objects. Most commonly an IfcTask is assigned indicating the task to be performed by the resource, where such task is nested within a summary task which in turn is assigned to the IfcProject. A resource can have assignments of other objects using IfcRelAssignsToResource where RelatingResource refers to the IfcConstructionResource and RelatedObjects refers to one or more objects such as IfcActor or IfcProduct subtypes. This relationship indicates specific objects assigned to fulfill resource usage.

The image below illustrates resource assignment.

<IMAGE ifcconstructionresource-assignment>

  • Baseline use Definition - A resource can have any number of baselines defined using the relationship IfcRelDefinesByObject where RelatingObject is the "current" resource and RelatedObjects consists of multiple "baseline" resources, each representing a copy of the resource as it existed at an earlier point in time as shown on the image below. Each baseline IfcConstructionResource is identified by its nested IfcRelAssignsToControl relationship to an IfcWorkSchedule having PredefinedType=BASELINE, IfcWorkSchedule.CreationDate indicating the date of the baseline, and IfcWorkSchedule.Name indicating the name of the baseline.

<IMAGE ifcconstructionresource-baseline>

Remarks
This definition cannot be instantiated

\changes

IFC4 changes: Name of the ResourceConsumption attribute changed from "ResourceConsumption" to "BaseQuantity" Type of the ResourceConsumption attribute changed from "IfcResourceConsumptionEnum" to "IfcPhysicalQuantity" Name of the ResourceGroup attribute changed from "ResourceGroup" to "BaseCosts" Type of the ResourceGroup attribute changed from "IfcLabel" to "list[1:?] of IfcAppliedValue" Name of the ResourceIdentifier attribute changed from "ResourceIdentifier" to "Usage" Type of the ResourceIdentifier attribute changed from "IfcIdentifier" to "IfcResourceTime"

Definition at line 106 of file IFC4X4/IfcConstructionResourceAutoImpl.h.

Member Function Documentation

◆ baseCosts()

OdDAI::ListOfOdDAIObjectId & OdIfc4x4::IfcConstructionResource::baseCosts ( )

Gets the value of BaseCosts attribute. This attribute represents indicates the unit costs for which accrued amounts should be calculated. Such unit costs can be split into Name designations (for example, 'Standard', 'Overtime'), and can contain a hierarchy of cost values that apply at different dates (using IfcCostValue.ApplicableDate and IfcCostValue.FixedUntilDate).

Parameters
BaseCosts[out] Receives the base costs.

◆ comparedToEarlyImpl()

virtual bool OdIfc4x4::IfcConstructionResource::comparedToEarlyImpl ( const OdDAI::ApplicationInstance * pOther,
OdRx::Ordering & ordering ) const
overridevirtual

Early-bound version of instances comparison.

Parameters
pOther[in] Other application instance.
ordering[out] Receives the ordering (comparison) status.
Returns
true if comparison was performed, false if method has no implementation, so late-bound version could be applied.
Remarks
If the method returns true, the ordering parameter can receive one of the following statuses:
Value Description kLessThan -1 This object < Other Object. kEqual 0 This object = Other Object. kGreaterThan 1 This object > Other Object. kNotOrderable 2 This class is not orderable.

Reimplemented from OdIfc4x4::IfcResource.

Reimplemented in OdIfc4x4::IfcConstructionEquipmentResource, OdIfc4x4::IfcConstructionMaterialResource, OdIfc4x4::IfcConstructionProductResource, OdIfc4x4::IfcCrewResource, OdIfc4x4::IfcLaborResource, and OdIfc4x4::IfcSubContractResource.

◆ getAttr() [1/2]

virtual OdRxValue OdIfc4x4::IfcConstructionResource::getAttr ( const char * attrName) const
overridevirtual

Returns an attribute value for the specified attribute name.

Parameters
attrName[in] Name of an attribute to query.
Returns
OdRxValue object that represents a generic variant type value.

Reimplemented from OdIfc4x4::IfcResource.

Reimplemented in OdIfc4x4::IfcConstructionEquipmentResource, OdIfc4x4::IfcConstructionMaterialResource, OdIfc4x4::IfcConstructionProductResource, OdIfc4x4::IfcCrewResource, OdIfc4x4::IfcLaborResource, and OdIfc4x4::IfcSubContractResource.

◆ getAttr() [2/2]

virtual OdRxValue OdIfc4x4::IfcConstructionResource::getAttr ( const OdIfc::OdIfcAttribute attrDef) const
overridevirtual

Returns an attribute value for the specified attribute definition.

Parameters
attrDef[in] Attribute definition to query.
Returns
OdRxValue object that represents a generic variant type value.

Reimplemented from OdIfc4x4::IfcResource.

Reimplemented in OdIfc4x4::IfcConstructionEquipmentResource, OdIfc4x4::IfcConstructionMaterialResource, OdIfc4x4::IfcConstructionProductResource, OdIfc4x4::IfcCrewResource, OdIfc4x4::IfcLaborResource, and OdIfc4x4::IfcSubContractResource.

◆ getBaseCosts()

void OdIfc4x4::IfcConstructionResource::getBaseCosts ( OdDAIObjectIds & BaseCosts) const

Returns the value of BaseCosts attribute. This attribute represents indicates the unit costs for which accrued amounts should be calculated. Such unit costs can be split into Name designations (for example, 'Standard', 'Overtime'), and can contain a hierarchy of cost values that apply at different dates (using IfcCostValue.ApplicableDate and IfcCostValue.FixedUntilDate).

Returns
Returns the value of BaseCosts attribute.

◆ getBaseQuantity()

const OdDAIObjectId & OdIfc4x4::IfcConstructionResource::getBaseQuantity ( ) const

◆ getInstanceType()

virtual OdDAI::Entity * OdIfc4x4::IfcConstructionResource::getInstanceType ( ) const
overridevirtual

Returns a type of a class instance.

Returns
Pointer to the <exref target=https://docs.opendesign.com/tkernel_api_cpp/OdDAI__Entity.html>>OdDAI::Entity</exref> type that determines an entity definition within a schema.

Reimplemented from OdIfc4x4::IfcResource.

Reimplemented in OdIfc4x4::IfcConstructionEquipmentResource, OdIfc4x4::IfcConstructionMaterialResource, OdIfc4x4::IfcConstructionProductResource, OdIfc4x4::IfcCrewResource, OdIfc4x4::IfcLaborResource, and OdIfc4x4::IfcSubContractResource.

◆ getUsage()

const OdDAIObjectId & OdIfc4x4::IfcConstructionResource::getUsage ( ) const

Returns the value of Usage attribute. This attribute represents indicates the work, usage, and times scheduled and completed. Some attributes on this object can have associated constraints or time series (see IfcResourceTime). If the resource is nested, then certain values can be calculated based on the component resources as indicated at IfcResourceTime.

Returns
Returns the value of Usage attribute.

◆ inFields()

virtual OdResult OdIfc4x4::IfcConstructionResource::inFields ( OdDAI::OdSpfFilerBase * rdFiler)
overridevirtual

Reads object's data from the specified filer.

Parameters
rdFiler[in] Pointer to a filer from which to read the data.
Returns
A value of OdResult type that contains the result of the method execution.

Reimplemented from OdIfc4x4::IfcResource.

Reimplemented in OdIfc4x4::IfcConstructionEquipmentResource, OdIfc4x4::IfcConstructionMaterialResource, OdIfc4x4::IfcConstructionProductResource, OdIfc4x4::IfcCrewResource, OdIfc4x4::IfcLaborResource, and OdIfc4x4::IfcSubContractResource.

◆ isKindOf()

virtual bool OdIfc4x4::IfcConstructionResource::isKindOf ( OdIfc::OdIfcEntityType entityType) const
overridevirtual

Checks whether the specified instance is the object derived from or belongs to this class.

Parameters
entityType[in] Entity to check.
Returns
true if the specified instance is the object derived from or belongs to this class, false otherwise.

Reimplemented from OdIfc4x4::IfcResource.

Reimplemented in OdIfc4x4::IfcConstructionEquipmentResource, OdIfc4x4::IfcConstructionMaterialResource, OdIfc4x4::IfcConstructionProductResource, OdIfc4x4::IfcCrewResource, OdIfc4x4::IfcLaborResource, and OdIfc4x4::IfcSubContractResource.

◆ outFields()

virtual OdResult OdIfc4x4::IfcConstructionResource::outFields ( OdDAI::OdSpfFilerBase * wrFiler)
overridevirtual

Writes object's data the the specified filer.

Parameters
wrFiler[in] Pointer to a filer to which to write the data.
Returns
A value of OdResult type that contains the result of the method execution.

Reimplemented from OdIfc4x4::IfcResource.

Reimplemented in OdIfc4x4::IfcConstructionEquipmentResource, OdIfc4x4::IfcConstructionMaterialResource, OdIfc4x4::IfcConstructionProductResource, OdIfc4x4::IfcCrewResource, OdIfc4x4::IfcLaborResource, and OdIfc4x4::IfcSubContractResource.

◆ putAttr() [1/2]

virtual bool OdIfc4x4::IfcConstructionResource::putAttr ( const char * explicitAttrName,
const OdRxValue & val )
overridevirtual

Sets the specified attribute with a given value.

Parameters
explicitAttrName[in] Explicit name of the attribute to set.
val[in] Value to set.
Returns
true if the value is successfully set for the specified attribute, false otherwise.

Reimplemented from OdIfc4x4::IfcResource.

Reimplemented in OdIfc4x4::IfcConstructionEquipmentResource, OdIfc4x4::IfcConstructionMaterialResource, OdIfc4x4::IfcConstructionProductResource, OdIfc4x4::IfcCrewResource, OdIfc4x4::IfcLaborResource, and OdIfc4x4::IfcSubContractResource.

◆ putAttr() [2/2]

virtual bool OdIfc4x4::IfcConstructionResource::putAttr ( const OdIfc::OdIfcAttribute explicitAttrDef,
const OdRxValue & val )
overridevirtual

Sets the specified attribute with a given value.

Parameters
explicitAttrDef[in] Explicit attribute definition to set.
val[in] Value to set.
Returns
true if the value is successfully set for the specified attribute, false otherwise.

Reimplemented from OdIfc4x4::IfcResource.

Reimplemented in OdIfc4x4::IfcConstructionEquipmentResource, OdIfc4x4::IfcConstructionMaterialResource, OdIfc4x4::IfcConstructionProductResource, OdIfc4x4::IfcCrewResource, OdIfc4x4::IfcLaborResource, and OdIfc4x4::IfcSubContractResource.

◆ setBaseQuantity()

void OdIfc4x4::IfcConstructionResource::setBaseQuantity ( const OdDAIObjectId & BaseQuantity)

◆ setUsage()

void OdIfc4x4::IfcConstructionResource::setUsage ( const OdDAIObjectId & Usage)

Sets the value of Usage attribute. This attribute represents indicates the work, usage, and times scheduled and completed. Some attributes on this object can have associated constraints or time series (see IfcResourceTime). If the resource is nested, then certain values can be calculated based on the component resources as indicated at IfcResourceTime.

Parameters
Usage[in] Usage to set.

◆ testAttr() [1/2]

virtual bool OdIfc4x4::IfcConstructionResource::testAttr ( const char * explicitAttrName) const
overridevirtual

Checks whether the specified attribute is set.

Parameters
explicitAttrName[in] Explicit name of the attribute to test.
Returns
true if the specified attribute is set, false otherwise.

Reimplemented from OdIfc4x4::IfcResource.

Reimplemented in OdIfc4x4::IfcConstructionEquipmentResource, OdIfc4x4::IfcConstructionMaterialResource, OdIfc4x4::IfcConstructionProductResource, OdIfc4x4::IfcCrewResource, OdIfc4x4::IfcLaborResource, and OdIfc4x4::IfcSubContractResource.

◆ testAttr() [2/2]

virtual bool OdIfc4x4::IfcConstructionResource::testAttr ( const OdIfc::OdIfcAttribute explicitAttrDef) const
overridevirtual

Checks whether the specified attribute is set.

Parameters
explicitAttrDef[in] Attribute definition to test.
Returns
true if the specified attribute is set, false otherwise.

Reimplemented from OdIfc4x4::IfcResource.

Reimplemented in OdIfc4x4::IfcConstructionEquipmentResource, OdIfc4x4::IfcConstructionMaterialResource, OdIfc4x4::IfcConstructionProductResource, OdIfc4x4::IfcCrewResource, OdIfc4x4::IfcLaborResource, and OdIfc4x4::IfcSubContractResource.

◆ type()

virtual OdIfc::OdIfcEntityType OdIfc4x4::IfcConstructionResource::type ( ) const
overridevirtual

Returns the type of this entity.

Returns
A value of the <exref target=https://docs.opendesign.com/tkernel_api_cpp/OdIfc__OdIfcEntityType.html>>OdIfc::OdIfcEntityType</exref> type that represents type of this entity.

Reimplemented from OdIfc4x4::IfcResource.

Reimplemented in OdIfc4x4::IfcConstructionEquipmentResource, OdIfc4x4::IfcConstructionMaterialResource, OdIfc4x4::IfcConstructionProductResource, OdIfc4x4::IfcCrewResource, OdIfc4x4::IfcLaborResource, and OdIfc4x4::IfcSubContractResource.

◆ unsetAttr() [1/2]

virtual void OdIfc4x4::IfcConstructionResource::unsetAttr ( const char * explicitAttrName)
overridevirtual

Resets a value for the specified attribute.

Parameters
explicitAttrName[in] Explicit name of the attribute to reset.

Reimplemented from OdIfc4x4::IfcResource.

Reimplemented in OdIfc4x4::IfcConstructionEquipmentResource, OdIfc4x4::IfcConstructionMaterialResource, OdIfc4x4::IfcConstructionProductResource, OdIfc4x4::IfcCrewResource, OdIfc4x4::IfcLaborResource, and OdIfc4x4::IfcSubContractResource.

◆ unsetAttr() [2/2]

virtual void OdIfc4x4::IfcConstructionResource::unsetAttr ( const OdIfc::OdIfcAttribute explicitAttrDef)
overridevirtual

Resets a value for the specified attribute.

Parameters
explicitAttrDef[in] Explicit definition that represents an attribute to reset.

Reimplemented from OdIfc4x4::IfcResource.

Reimplemented in OdIfc4x4::IfcConstructionEquipmentResource, OdIfc4x4::IfcConstructionMaterialResource, OdIfc4x4::IfcConstructionProductResource, OdIfc4x4::IfcCrewResource, OdIfc4x4::IfcLaborResource, and OdIfc4x4::IfcSubContractResource.

Member Data Documentation

◆ m_BaseCosts

OdDAI::ListOfOdDAIObjectId OdIfc4x4::IfcConstructionResource::m_BaseCosts
protected

Definition at line 287 of file IFC4X4/IfcConstructionResourceAutoImpl.h.

◆ m_BaseQuantity

OdDAIObjectId OdIfc4x4::IfcConstructionResource::m_BaseQuantity
protected

Definition at line 289 of file IFC4X4/IfcConstructionResourceAutoImpl.h.

◆ m_Usage

OdDAIObjectId OdIfc4x4::IfcConstructionResource::m_Usage
protected

Definition at line 286 of file IFC4X4/IfcConstructionResourceAutoImpl.h.


The documentation for this class was generated from the following file: