#ifndef  ENTITY_SDAIIFCDIMENSIONALEXPONENTS_H
#define  ENTITY_SDAIIFCDIMENSIONALEXPONENTS_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 SdaiIfcdimensionalexponents : public SDAI_Application_instance {
    protected:
        SDAI_Integer _lengthexponent = 0;
        SDAI_Integer _massexponent = 0;
        SDAI_Integer _timeexponent = 0;
        SDAI_Integer _electriccurrentexponent = 0;
        SDAI_Integer _thermodynamictemperatureexponent = 0;
        SDAI_Integer _amountofsubstanceexponent = 0;
        SDAI_Integer _luminousintensityexponent = 0;
    public: 
        SdaiIfcdimensionalexponents();
        SdaiIfcdimensionalexponents( SDAI_Application_instance *se, bool addAttrs = true );
        SdaiIfcdimensionalexponents( SdaiIfcdimensionalexponents & e );
        ~SdaiIfcdimensionalexponents();
        int opcode() {
            return 556;
        }
        SDAI_Integer   lengthexponent_() const;
        void lengthexponent_( const SDAI_Integer x );

        SDAI_Integer   massexponent_() const;
        void massexponent_( const SDAI_Integer x );

        SDAI_Integer   timeexponent_() const;
        void timeexponent_( const SDAI_Integer x );

        SDAI_Integer   electriccurrentexponent_() const;
        void electriccurrentexponent_( const SDAI_Integer x );

        SDAI_Integer   thermodynamictemperatureexponent_() const;
        void thermodynamictemperatureexponent_( const SDAI_Integer x );

        SDAI_Integer   amountofsubstanceexponent_() const;
        void amountofsubstanceexponent_( const SDAI_Integer x );

        SDAI_Integer   luminousintensityexponent_() const;
        void luminousintensityexponent_( const SDAI_Integer x );

};

inline SdaiIfcdimensionalexponents * create_SdaiIfcdimensionalexponents() {
    return new SdaiIfcdimensionalexponents;
}

void init_SdaiIfcdimensionalexponents(Registry& reg);

namespace ifc2x3 {
    extern EntityDescriptor *e_ifcdimensionalexponents;
    extern AttrDescriptor *a_1237lengthexponent;
    extern AttrDescriptor *a_1238massexponent;
    extern AttrDescriptor *a_1239timeexponent;
    extern AttrDescriptor *a_1240electriccurrentexponent;
    extern AttrDescriptor *a_1241thermodynamictemperatureexponent;
    extern AttrDescriptor *a_1242amountofsubstanceexponent;
    extern AttrDescriptor *a_1243luminousintensityexponent;
}

#endif
