#ifndef  ENTITY_SDAIIFCDERIVEDUNITELEMENT_H
#define  ENTITY_SDAIIFCDERIVEDUNITELEMENT_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 SdaiIfcderivedunitelement : public SDAI_Application_instance {
    protected:
        SDAI_Application_instance_ptr _unit = NULL;
        SDAI_Integer _exponent = 0;
    public: 
        SdaiIfcderivedunitelement();
        SdaiIfcderivedunitelement( SDAI_Application_instance *se, bool addAttrs = true );
        SdaiIfcderivedunitelement( SdaiIfcderivedunitelement & e );
        ~SdaiIfcderivedunitelement();
        int opcode() {
            return 187;
        }
        SdaiIfcnamedunit_ptr_c unit_() const;
        SdaiIfcnamedunit_ptr   unit_();
        void unit_( const SdaiIfcnamedunit_ptr x );

        SDAI_Integer   exponent_() const;
        void exponent_( const SDAI_Integer x );

};

inline SdaiIfcderivedunitelement * create_SdaiIfcderivedunitelement() {
    return new SdaiIfcderivedunitelement;
}

void init_SdaiIfcderivedunitelement(Registry& reg);

namespace ifc4 {
    extern EntityDescriptor *e_ifcderivedunitelement;
    extern AttrDescriptor *a_411unit;
    extern AttrDescriptor *a_412exponent;
}

#endif
