#ifndef  ENTITY_SDAIIFCRELPROJECTSELEMENT_H
#define  ENTITY_SDAIIFCRELPROJECTSELEMENT_H

// This file was generated by exp2cxx,
// 0.8.1.
// You probably don't want to edit it since your modifications
// will be lost if exp2cxx is used to regenerate it.

class SC_SCHEMA_EXPORT SdaiIfcrelprojectselement : public SdaiIfcrelconnects {
     protected:
        SDAI_Application_instance_ptr _relatingelement = NULL;
        SDAI_Application_instance_ptr _relatedfeatureelement = NULL;
    public: 
        SdaiIfcrelprojectselement();
        SdaiIfcrelprojectselement( SDAI_Application_instance *se, bool addAttrs = true );
        SdaiIfcrelprojectselement( SdaiIfcrelprojectselement & e );
        ~SdaiIfcrelprojectselement();
        int opcode() {
            return 480;
        }
        SdaiIfcelement_ptr_c relatingelement_() const;
        SdaiIfcelement_ptr   relatingelement_();
        void relatingelement_( const SdaiIfcelement_ptr x );

        SdaiIfcfeatureelementaddition_ptr_c relatedfeatureelement_() const;
        SdaiIfcfeatureelementaddition_ptr   relatedfeatureelement_();
        void relatedfeatureelement_( const SdaiIfcfeatureelementaddition_ptr x );

};

inline SdaiIfcrelprojectselement * create_SdaiIfcrelprojectselement() {
    return new SdaiIfcrelprojectselement;
}

void init_SdaiIfcrelprojectselement(Registry& reg);

namespace ifc2x3 {
    extern EntityDescriptor *e_ifcrelprojectselement;
    extern AttrDescriptor *a_1071relatingelement;
    extern AttrDescriptor *a_1072relatedfeatureelement;
}

#endif
