#ifndef  ENTITY_SDAIIFCSTRUCTURALLOADSINGLEDISPLACEMENT_H
#define  ENTITY_SDAIIFCSTRUCTURALLOADSINGLEDISPLACEMENT_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 SdaiIfcstructuralloadsingledisplacement : public SdaiIfcstructuralloadstatic {
     protected:
        SDAI_Real _displacementx = 0.0;    //  OPTIONAL
        SDAI_Real _displacementy = 0.0;    //  OPTIONAL
        SDAI_Real _displacementz = 0.0;    //  OPTIONAL
        SDAI_Real _rotationaldisplacementrx = 0.0;    //  OPTIONAL
        SDAI_Real _rotationaldisplacementry = 0.0;    //  OPTIONAL
        SDAI_Real _rotationaldisplacementrz = 0.0;    //  OPTIONAL
    public: 
        SdaiIfcstructuralloadsingledisplacement();
        SdaiIfcstructuralloadsingledisplacement( SDAI_Application_instance *se, bool addAttrs = true );
        SdaiIfcstructuralloadsingledisplacement( SdaiIfcstructuralloadsingledisplacement & e );
        ~SdaiIfcstructuralloadsingledisplacement();
        int opcode() {
            return 443;
        }
        SdaiIfclengthmeasure   displacementx_() const;
        void displacementx_( const SdaiIfclengthmeasure x );

        SdaiIfclengthmeasure   displacementy_() const;
        void displacementy_( const SdaiIfclengthmeasure x );

        SdaiIfclengthmeasure   displacementz_() const;
        void displacementz_( const SdaiIfclengthmeasure x );

        SdaiIfcplaneanglemeasure   rotationaldisplacementrx_() const;
        void rotationaldisplacementrx_( const SdaiIfcplaneanglemeasure x );

        SdaiIfcplaneanglemeasure   rotationaldisplacementry_() const;
        void rotationaldisplacementry_( const SdaiIfcplaneanglemeasure x );

        SdaiIfcplaneanglemeasure   rotationaldisplacementrz_() const;
        void rotationaldisplacementrz_( const SdaiIfcplaneanglemeasure x );

};

inline SdaiIfcstructuralloadsingledisplacement * create_SdaiIfcstructuralloadsingledisplacement() {
    return new SdaiIfcstructuralloadsingledisplacement;
}

void init_SdaiIfcstructuralloadsingledisplacement(Registry& reg);

namespace ifc4 {
    extern EntityDescriptor *e_ifcstructuralloadsingledisplacement;
    extern AttrDescriptor *a_978displacementx;
    extern AttrDescriptor *a_979displacementy;
    extern AttrDescriptor *a_980displacementz;
    extern AttrDescriptor *a_981rotationaldisplacementrx;
    extern AttrDescriptor *a_982rotationaldisplacementry;
    extern AttrDescriptor *a_983rotationaldisplacementrz;
}

#endif
