#ifndef  ENTITY_SDAIPLANE_VOLUME_2D_ELEMENT_DESCRIPTOR_H
#define  ENTITY_SDAIPLANE_VOLUME_2D_ELEMENT_DESCRIPTOR_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 SdaiPlane_volume_2d_element_descriptor : public SdaiElement_descriptor {
     protected:
        GenericAggregate_ptr _purpose = NULL;          //  of  volume_element_purpose

        SdaiElement_2d_shape_var _shape;
        SdaiPlane_2d_element_purpose _assumption;
    public: 
        SdaiPlane_volume_2d_element_descriptor();
        SdaiPlane_volume_2d_element_descriptor( SDAI_Application_instance *se, bool addAttrs = true );
        SdaiPlane_volume_2d_element_descriptor( SdaiPlane_volume_2d_element_descriptor & e );
        ~SdaiPlane_volume_2d_element_descriptor();
        int opcode() {
            return 1565;
        }
        GenericAggregate_ptr_c purpose_() const;
        GenericAggregate_ptr   purpose_();
        void purpose_( const GenericAggregate_ptr x );

  const SdaiElement_2d_shape_var   shape_() const;
        SdaiElement_2d_shape_var   shape_();
        void shape_( const SdaiElement_2d_shape_var x );

        SdaiPlane_2d_element_purpose_ptr_c assumption_() const;
        SdaiPlane_2d_element_purpose_ptr   assumption_();
        void assumption_( const SdaiPlane_2d_element_purpose_ptr x );

};

inline SdaiPlane_volume_2d_element_descriptor * create_SdaiPlane_volume_2d_element_descriptor() {
    return new SdaiPlane_volume_2d_element_descriptor;
}

void init_SdaiPlane_volume_2d_element_descriptor(Registry& reg);

namespace ap209_multidisciplinary_analysis_and_design_mim_lf {
    extern EntityDescriptor *e_plane_volume_2d_element_descriptor;
    extern AttrDescriptor *a_2350purpose;
    extern AttrDescriptor *a_2351shape;
    extern AttrDescriptor *a_2352assumption;
}

#endif
