OpenLexocad  28.0
OpenLxApp::ObjectDefinition Class Reference

An ObjectDefinition is the generalization of any semantically treated thing or process, either being a type or an occurrences. Objects are independent pieces of information that might contain or reference other pieces of information. There are four essential kinds of relationships in which object definitions (by their instantiable subtypes) can be involved: More...

#include <ObjectDefinition.h>

Inheritance diagram for OpenLxApp::ObjectDefinition:
OpenLxApp::Root OpenLxApp::DocObject OpenLxApp::Object OpenLxApp::Process OpenLxApp::Product OpenLxApp::Task OpenLxApp::Element OpenLxApp::SpatialElement OpenLxApp::Beam OpenLxApp::BuildingElementProxy OpenLxApp::Chimney OpenLxApp::CivilElement OpenLxApp::Column OpenLxApp::Covering OpenLxApp::CurtainWall OpenLxApp::DiscreteAccessory OpenLxApp::Door OpenLxApp::ElementAssembly OpenLxApp::Footing OpenLxApp::Formwork OpenLxApp::Member OpenLxApp::OpeningElement OpenLxApp::Pile OpenLxApp::PipeSegment OpenLxApp::Plate OpenLxApp::Railing OpenLxApp::Ramp OpenLxApp::RampFlight OpenLxApp::ReinforcingBar OpenLxApp::Roof OpenLxApp::Slab OpenLxApp::Stair OpenLxApp::StairFlight OpenLxApp::TerrainElement OpenLxApp::Wall OpenLxApp::Window OpenLxApp::ExternalSpatialStructureElement OpenLxApp::SpatialStructureElement OpenLxApp::SpatialZone

Public Member Functions

Decomposition
std::vector< std::shared_ptr< ObjectDefinition > > getDecompositionObjects () const
 
std::vector< std::shared_ptr< ObjectDefinition > > getAllDecompositionObjects () const
 
std::shared_ptr< ObjectDefinitiongetDecomposedObject () const
 
std::vector< std::shared_ptr< ObjectDefinition > > getAllDecomposedObjects () const
 
Aggregation (Specialization of a Decomposition)
void addAggregationObject (std::shared_ptr< ObjectDefinition > aObject)
 
void addAggregationObjects (const std::vector< std::shared_ptr< ObjectDefinition >> &aObjects)
 
void removeAggregationObject (std::shared_ptr< ObjectDefinition > aObject)
 
void removeAggregationObjects ()
 
std::vector< std::shared_ptr< ObjectDefinition > > getAggregationObjects () const
 
std::vector< std::shared_ptr< ObjectDefinition > > getAllAggregationObjects () const
 
std::shared_ptr< ObjectDefinitiongetAggregatedObject () const
 
std::vector< std::shared_ptr< ObjectDefinition > > getAllAggregatedObjects () const
 
Association
void addAssociationObject (std::shared_ptr< Root > aObject)
 
std::vector< std::shared_ptr< Root > > getAssociationObjects () const
 
- Public Member Functions inherited from OpenLxApp::Root
Base::GlobalId getGlobalId () const
 
bool setGlobalId (const Base::GlobalId &aGlobalId)
 
void setUserName (const Base::String &aName)
 
Base::String getUserName () const
 
virtual ~Root (void)
 
- Public Member Functions inherited from OpenLxApp::DocObject
std::shared_ptr< DocumentgetDocument () const
 
bool isNew () const
 
bool isUpdated () const
 
bool isValid () const
 
bool hasErrors () const
 
void touch ()
 
LxIfc4::LxIfc4EntityEnum getEntityType () const
 
std::string getEntityTypeAsString () const
 
std::shared_ptr< Core::DbgInfogetDbgInfo () const
 
 DocObject (Core::DocObject *aObject)
 
virtual ~DocObject (void)
 
Core::DocObject__getObj__ () const
 

IFC Properties

std::shared_ptr< LxIfcBase::LxIfcProperty > getIfcPropertySets () const
 
virtual ~ObjectDefinition (void)
 
 ObjectDefinition ()
 

Additional Inherited Members

- Protected Member Functions inherited from OpenLxApp::Root
 Root ()
 
- Protected Member Functions inherited from OpenLxApp::DocObject
 DocObject ()
 
- Protected Attributes inherited from OpenLxApp::DocObject
Core::DocObject_coreObj = nullptr
 

Detailed Description

An ObjectDefinition is the generalization of any semantically treated thing or process, either being a type or an occurrences. Objects are independent pieces of information that might contain or reference other pieces of information. There are four essential kinds of relationships in which object definitions (by their instantiable subtypes) can be involved:

  • Assignment of other objects
  • Association to external resources
  • Aggregation of other objects
  • Nesting of other objects
  • Declaration within a context

Constructor & Destructor Documentation

◆ ~ObjectDefinition()

virtual OpenLxApp::ObjectDefinition::~ObjectDefinition ( void  )
virtual

◆ ObjectDefinition()

OpenLxApp::ObjectDefinition::ObjectDefinition ( )
protected

Member Function Documentation

◆ addAggregationObject()

void OpenLxApp::ObjectDefinition::addAggregationObject ( std::shared_ptr< ObjectDefinition aObject)

◆ addAggregationObjects()

void OpenLxApp::ObjectDefinition::addAggregationObjects ( const std::vector< std::shared_ptr< ObjectDefinition >> &  aObjects)

◆ addAssociationObject()

void OpenLxApp::ObjectDefinition::addAssociationObject ( std::shared_ptr< Root aObject)

◆ getAggregatedObject()

std::shared_ptr<ObjectDefinition> OpenLxApp::ObjectDefinition::getAggregatedObject ( ) const

◆ getAggregationObjects()

std::vector<std::shared_ptr<ObjectDefinition> > OpenLxApp::ObjectDefinition::getAggregationObjects ( ) const

◆ getAllAggregatedObjects()

std::vector<std::shared_ptr<ObjectDefinition> > OpenLxApp::ObjectDefinition::getAllAggregatedObjects ( ) const

◆ getAllAggregationObjects()

std::vector<std::shared_ptr<ObjectDefinition> > OpenLxApp::ObjectDefinition::getAllAggregationObjects ( ) const

◆ getAllDecomposedObjects()

std::vector<std::shared_ptr<ObjectDefinition> > OpenLxApp::ObjectDefinition::getAllDecomposedObjects ( ) const

◆ getAllDecompositionObjects()

std::vector<std::shared_ptr<ObjectDefinition> > OpenLxApp::ObjectDefinition::getAllDecompositionObjects ( ) const

◆ getAssociationObjects()

std::vector<std::shared_ptr<Root> > OpenLxApp::ObjectDefinition::getAssociationObjects ( ) const

◆ getDecomposedObject()

std::shared_ptr<ObjectDefinition> OpenLxApp::ObjectDefinition::getDecomposedObject ( ) const

◆ getDecompositionObjects()

std::vector<std::shared_ptr<ObjectDefinition> > OpenLxApp::ObjectDefinition::getDecompositionObjects ( ) const

◆ getIfcPropertySets()

std::shared_ptr<LxIfcBase::LxIfcProperty> OpenLxApp::ObjectDefinition::getIfcPropertySets ( ) const

◆ removeAggregationObject()

void OpenLxApp::ObjectDefinition::removeAggregationObject ( std::shared_ptr< ObjectDefinition aObject)

◆ removeAggregationObjects()

void OpenLxApp::ObjectDefinition::removeAggregationObjects ( )

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