#ifndef  ENTITY_SDAIBASIC_SPARSE_MATRIX_H
#define  ENTITY_SDAIBASIC_SPARSE_MATRIX_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 SdaiBasic_sparse_matrix : public SdaiExplicit_table_function {
     protected:
        EntityAggregate_ptr _multiple_arity_generic_expression_operands = NULL;          //  of  maths_function

        SdaiMaths_value _default_entry;
        SdaiOrdering_type_var _order;
    public: 
        SdaiBasic_sparse_matrix();
        SdaiBasic_sparse_matrix( SDAI_Application_instance *se, bool addAttrs = true );
        SdaiBasic_sparse_matrix( SdaiBasic_sparse_matrix & e );
        ~SdaiBasic_sparse_matrix();
        int opcode() {
            return 2007;
        }
        EntityAggregate_ptr_c multiple_arity_generic_expression_operands_() const;
        EntityAggregate_ptr   multiple_arity_generic_expression_operands_();
        void multiple_arity_generic_expression_operands_( const EntityAggregate_ptr x );

        SdaiMaths_value_ptr_c default_entry_() const;
        SdaiMaths_value_ptr   default_entry_();
        void default_entry_( const SdaiMaths_value_ptr x );

  const SdaiOrdering_type_var   order_() const;
        SdaiOrdering_type_var   order_();
        void order_( const SdaiOrdering_type_var x );

};

inline SdaiBasic_sparse_matrix * create_SdaiBasic_sparse_matrix() {
    return new SdaiBasic_sparse_matrix;
}

void init_SdaiBasic_sparse_matrix(Registry& reg);

namespace ap209_multidisciplinary_analysis_and_design_mim_lf {
    extern EntityDescriptor *e_basic_sparse_matrix;
    extern AttrDescriptor *a_2999Rmultiple_arity_generic_expression_operands;
    extern AttrDescriptor *a_3000default_entry;
    extern AttrDescriptor *a_3001order;
    extern Derived_attribute *a_3002Dindex;
    extern Derived_attribute *a_3003Dloc;
    extern Derived_attribute *a_3004Dval;
}

#endif
