#ifndef  ENTITY_SDAIELLIPSOID_H
#define  ENTITY_SDAIELLIPSOID_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 SdaiEllipsoid : 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 _semi_axis_3 = 0.0;
    public: 
        SdaiEllipsoid();
        SdaiEllipsoid( SDAI_Application_instance *se, bool addAttrs = true );
        SdaiEllipsoid( SdaiEllipsoid & e );
        ~SdaiEllipsoid();
        int opcode() {
            return 1443;
        }
        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   semi_axis_3_() const;
        void semi_axis_3_( const SdaiPositive_length_measure x );

};

inline SdaiEllipsoid * create_SdaiEllipsoid() {
    return new SdaiEllipsoid;
}

void init_SdaiEllipsoid(Registry& reg);

namespace ap242_managed_model_based_3d_engineering_mim_lf {
    extern EntityDescriptor *e_ellipsoid;
    extern AttrDescriptor *a_1879position;
    extern AttrDescriptor *a_1880semi_axis_1;
    extern AttrDescriptor *a_1881semi_axis_2;
    extern AttrDescriptor *a_1882semi_axis_3;
}

#endif
