#ifndef  ENTITY_SDAIB_SPLINE_SURFACE_KNOT_LOCATOR_H
#define  ENTITY_SDAIB_SPLINE_SURFACE_KNOT_LOCATOR_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 SdaiB_spline_surface_knot_locator : public SdaiFounded_item {
     protected:
        SDAI_Application_instance_ptr _basis_surface = NULL;
        SDAI_Integer _knot_index = 0;
        SdaiU_or_v_parameter_var _surface_parameter;
    public: 
        SdaiB_spline_surface_knot_locator();
        SdaiB_spline_surface_knot_locator( SDAI_Application_instance *se, bool addAttrs = true );
        SdaiB_spline_surface_knot_locator( SdaiB_spline_surface_knot_locator & e );
        ~SdaiB_spline_surface_knot_locator();
        int opcode() {
            return 1446;
        }
        SdaiB_spline_surface_ptr_c basis_surface_() const;
        SdaiB_spline_surface_ptr   basis_surface_();
        void basis_surface_( const SdaiB_spline_surface_ptr x );

        SDAI_Integer   knot_index_() const;
        void knot_index_( const SDAI_Integer x );

  const SdaiU_or_v_parameter_var   surface_parameter_() const;
        SdaiU_or_v_parameter_var   surface_parameter_();
        void surface_parameter_( const SdaiU_or_v_parameter_var x );

};

inline SdaiB_spline_surface_knot_locator * create_SdaiB_spline_surface_knot_locator() {
    return new SdaiB_spline_surface_knot_locator;
}

void init_SdaiB_spline_surface_knot_locator(Registry& reg);

namespace ap209_multidisciplinary_analysis_and_design_mim_lf {
    extern EntityDescriptor *e_b_spline_surface_knot_locator;
    extern AttrDescriptor *a_2174basis_surface;
    extern AttrDescriptor *a_2175knot_index;
    extern AttrDescriptor *a_2176surface_parameter;
}

#endif
