#ifndef  ENTITY_SDAIIFCSECTIONPROPERTIES_H
#define  ENTITY_SDAIIFCSECTIONPROPERTIES_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 SdaiIfcsectionproperties : public SdaiIfcpredefinedproperties {
     protected:
        SdaiIfcsectiontypeenum_var _sectiontype;
        SDAI_Application_instance_ptr _startprofile = NULL;
        SDAI_Application_instance_ptr _endprofile = NULL;    //  OPTIONAL
    public: 
        SdaiIfcsectionproperties();
        SdaiIfcsectionproperties( SDAI_Application_instance *se, bool addAttrs = true );
        SdaiIfcsectionproperties( SdaiIfcsectionproperties & e );
        ~SdaiIfcsectionproperties();
        int opcode() {
            return 70;
        }
  const SdaiIfcsectiontypeenum_var   sectiontype_() const;
        SdaiIfcsectiontypeenum_var   sectiontype_();
        void sectiontype_( const SdaiIfcsectiontypeenum_var x );

        SdaiIfcprofiledef_ptr_c startprofile_() const;
        SdaiIfcprofiledef_ptr   startprofile_();
        void startprofile_( const SdaiIfcprofiledef_ptr x );

        SdaiIfcprofiledef_ptr_c endprofile_() const;
        SdaiIfcprofiledef_ptr   endprofile_();
        void endprofile_( const SdaiIfcprofiledef_ptr x );

};

inline SdaiIfcsectionproperties * create_SdaiIfcsectionproperties() {
    return new SdaiIfcsectionproperties;
}

void init_SdaiIfcsectionproperties(Registry& reg);

namespace ifc4 {
    extern EntityDescriptor *e_ifcsectionproperties;
    extern AttrDescriptor *a_154sectiontype;
    extern AttrDescriptor *a_155startprofile;
    extern AttrDescriptor *a_156endprofile;
}

#endif
