void IfcConstraint::getAttributesInverse( std::vector<std::pair<std::string, shared_ptr<IfcPPObject> > >& vec_attributes_inverse ) { if( m_HasExternalReferences_inverse.size() > 0 ) { shared_ptr<IfcPPAttributeObjectVector> HasExternalReferences_inverse_vec_obj( new IfcPPAttributeObjectVector() ); for( size_t i=0; i<m_HasExternalReferences_inverse.size(); ++i ) { if( !m_HasExternalReferences_inverse[i].expired() ) { HasExternalReferences_inverse_vec_obj->m_vec.push_back( shared_ptr<IfcExternalReferenceRelationship>( m_HasExternalReferences_inverse[i] ) ); } } vec_attributes_inverse.push_back( std::make_pair( "HasExternalReferences_inverse", HasExternalReferences_inverse_vec_obj ) ); } if( m_PropertiesForConstraint_inverse.size() > 0 ) { shared_ptr<IfcPPAttributeObjectVector> PropertiesForConstraint_inverse_vec_obj( new IfcPPAttributeObjectVector() ); for( size_t i=0; i<m_PropertiesForConstraint_inverse.size(); ++i ) { if( !m_PropertiesForConstraint_inverse[i].expired() ) { PropertiesForConstraint_inverse_vec_obj->m_vec.push_back( shared_ptr<IfcResourceConstraintRelationship>( m_PropertiesForConstraint_inverse[i] ) ); } } vec_attributes_inverse.push_back( std::make_pair( "PropertiesForConstraint_inverse", PropertiesForConstraint_inverse_vec_obj ) ); } }
void IfcMaterialDefinition::getAttributesInverse( std::vector<std::pair<std::string, shared_ptr<BuildingObject> > >& vec_attributes_inverse ) const { if( m_AssociatedTo_inverse.size() > 0 ) { shared_ptr<AttributeObjectVector> AssociatedTo_inverse_vec_obj( new AttributeObjectVector() ); for( size_t i=0; i<m_AssociatedTo_inverse.size(); ++i ) { if( !m_AssociatedTo_inverse[i].expired() ) { AssociatedTo_inverse_vec_obj->m_vec.push_back( shared_ptr<IfcRelAssociatesMaterial>( m_AssociatedTo_inverse[i] ) ); } } vec_attributes_inverse.push_back( std::make_pair( "AssociatedTo_inverse", AssociatedTo_inverse_vec_obj ) ); } if( m_HasExternalReferences_inverse.size() > 0 ) { shared_ptr<AttributeObjectVector> HasExternalReferences_inverse_vec_obj( new AttributeObjectVector() ); for( size_t i=0; i<m_HasExternalReferences_inverse.size(); ++i ) { if( !m_HasExternalReferences_inverse[i].expired() ) { HasExternalReferences_inverse_vec_obj->m_vec.push_back( shared_ptr<IfcExternalReferenceRelationship>( m_HasExternalReferences_inverse[i] ) ); } } vec_attributes_inverse.push_back( std::make_pair( "HasExternalReferences_inverse", HasExternalReferences_inverse_vec_obj ) ); } if( m_HasProperties_inverse.size() > 0 ) { shared_ptr<AttributeObjectVector> HasProperties_inverse_vec_obj( new AttributeObjectVector() ); for( size_t i=0; i<m_HasProperties_inverse.size(); ++i ) { if( !m_HasProperties_inverse[i].expired() ) { HasProperties_inverse_vec_obj->m_vec.push_back( shared_ptr<IfcMaterialProperties>( m_HasProperties_inverse[i] ) ); } } vec_attributes_inverse.push_back( std::make_pair( "HasProperties_inverse", HasProperties_inverse_vec_obj ) ); } }