#ifndef  ENTITY_SDAIELEMENT_SEQUENCE_H
#define  ENTITY_SDAIELEMENT_SEQUENCE_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 SdaiElement_sequence : public SDAI_Application_instance {
    protected:
        SDAI_String _order_id;
        SDAI_Application_instance_ptr _control_ref = NULL;
        SDAI_String _purpose;
        SdaiModel_or_control_element_agg_ptr _elements = NULL;          //  of  model_or_control_element

    public: 
        SdaiElement_sequence();
        SdaiElement_sequence( SDAI_Application_instance *se, bool addAttrs = true );
        SdaiElement_sequence( SdaiElement_sequence & e );
        ~SdaiElement_sequence();
        int opcode() {
            return 575;
        }
  const SdaiIdentifier   order_id_() const;
        SdaiIdentifier   order_id_();
        void order_id_( const SdaiIdentifier x );

        SdaiControl_ptr_c control_ref_() const;
        SdaiControl_ptr   control_ref_();
        void control_ref_( const SdaiControl_ptr x );

  const SdaiText   purpose_() const;
        SdaiText   purpose_();
        void purpose_( const SdaiText x );

        SdaiModel_or_control_element_agg_ptr_c elements_() const;
        SdaiModel_or_control_element_agg_ptr   elements_();
        void elements_( const SdaiModel_or_control_element_agg_ptr x );

};

inline SdaiElement_sequence * create_SdaiElement_sequence() {
    return new SdaiElement_sequence;
}

void init_SdaiElement_sequence(Registry& reg);

namespace ap209_multidisciplinary_analysis_and_design_mim_lf {
    extern EntityDescriptor *e_element_sequence;
    extern AttrDescriptor *a_873order_id;
    extern AttrDescriptor *a_874control_ref;
    extern AttrDescriptor *a_875purpose;
    extern AttrDescriptor *a_876elements;
}

#endif
