#ifndef  ENTITY_SDAIECCENTRIC_CONE_H
#define  ENTITY_SDAIECCENTRIC_CONE_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 SdaiEccentric_cone : public SdaiGeometric_representation_item {
     protected:
        SDAI_Application_instance_ptr _position = NULL;
        SDAI_Real _semi_axis_1 = 0.0;
        SDAI_Real _semi_axis_2 = 0.0;
        SDAI_Real _height = 0.0;
        SDAI_Real _x_offset = 0.0;
        SDAI_Real _y_offset = 0.0;
        SDAI_Real _ratio = 0.0;
    public: 
        SdaiEccentric_cone();
        SdaiEccentric_cone( SDAI_Application_instance *se, bool addAttrs = true );
        SdaiEccentric_cone( SdaiEccentric_cone & e );
        ~SdaiEccentric_cone();
        int opcode() {
            return 2078;
        }
        SdaiAxis2_placement_3d_ptr_c position_() const;
        SdaiAxis2_placement_3d_ptr   position_();
        void position_( const SdaiAxis2_placement_3d_ptr x );

        SdaiPositive_length_measure   semi_axis_1_() const;
        void semi_axis_1_( const SdaiPositive_length_measure x );

        SdaiPositive_length_measure   semi_axis_2_() const;
        void semi_axis_2_( const SdaiPositive_length_measure x );

        SdaiPositive_length_measure   height_() const;
        void height_( const SdaiPositive_length_measure x );

        SdaiLength_measure   x_offset_() const;
        void x_offset_( const SdaiLength_measure x );

        SdaiLength_measure   y_offset_() const;
        void y_offset_( const SdaiLength_measure x );

        SDAI_Real   ratio_() const;
        void ratio_( const SDAI_Real x );

};

inline SdaiEccentric_cone * create_SdaiEccentric_cone() {
    return new SdaiEccentric_cone;
}

void init_SdaiEccentric_cone(Registry& reg);

namespace ap209_multidisciplinary_analysis_and_design_mim_lf {
    extern EntityDescriptor *e_eccentric_cone;
    extern AttrDescriptor *a_3130position;
    extern AttrDescriptor *a_3131semi_axis_1;
    extern AttrDescriptor *a_3132semi_axis_2;
    extern AttrDescriptor *a_3133height;
    extern AttrDescriptor *a_3134x_offset;
    extern AttrDescriptor *a_3135y_offset;
    extern AttrDescriptor *a_3136ratio;
}

#endif
