#ifndef  ENTITY_SDAIIFCFIXEDREFERENCESWEPTAREASOLID_H
#define  ENTITY_SDAIIFCFIXEDREFERENCESWEPTAREASOLID_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 SdaiIfcfixedreferencesweptareasolid : public SdaiIfcsweptareasolid {
     protected:
        SDAI_Application_instance_ptr _directrix = NULL;
        SDAI_Real _startparam = 0.0;    //  OPTIONAL
        SDAI_Real _endparam = 0.0;    //  OPTIONAL
        SDAI_Application_instance_ptr _fixedreference = NULL;
    public: 
        SdaiIfcfixedreferencesweptareasolid();
        SdaiIfcfixedreferencesweptareasolid( SDAI_Application_instance *se, bool addAttrs = true );
        SdaiIfcfixedreferencesweptareasolid( SdaiIfcfixedreferencesweptareasolid & e );
        ~SdaiIfcfixedreferencesweptareasolid();
        int opcode() {
            return 615;
        }
        SdaiIfccurve_ptr_c directrix_() const;
        SdaiIfccurve_ptr   directrix_();
        void directrix_( const SdaiIfccurve_ptr x );

        SdaiIfcparametervalue   startparam_() const;
        void startparam_( const SdaiIfcparametervalue x );

        SdaiIfcparametervalue   endparam_() const;
        void endparam_( const SdaiIfcparametervalue x );

        SdaiIfcdirection_ptr_c fixedreference_() const;
        SdaiIfcdirection_ptr   fixedreference_();
        void fixedreference_( const SdaiIfcdirection_ptr x );

};

inline SdaiIfcfixedreferencesweptareasolid * create_SdaiIfcfixedreferencesweptareasolid() {
    return new SdaiIfcfixedreferencesweptareasolid;
}

void init_SdaiIfcfixedreferencesweptareasolid(Registry& reg);

namespace ifc4 {
    extern EntityDescriptor *e_ifcfixedreferencesweptareasolid;
    extern AttrDescriptor *a_1366directrix;
    extern AttrDescriptor *a_1367startparam;
    extern AttrDescriptor *a_1368endparam;
    extern AttrDescriptor *a_1369fixedreference;
}

#endif
