#ifndef  ENTITY_SDAIMBNA_BC_H
#define  ENTITY_SDAIMBNA_BC_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 SdaiMbna_bc : public SdaiMbna_condition {
     protected:
        EntityAggregate_ptr _datasets = NULL;          //  of  mbna_bc_dataset

        SdaiMesh_location_var _gridloc;
        SdaiIjk_minmax_var _inward_normal_index;    //  OPTIONAL
        SDAI_Application_instance_ptr _inward_normal_list = NULL;    //  OPTIONAL
        EntityAggregate_ptr _rstate = NULL;          //  of  mbna_reference_state

        SdaiMbna_bc_type _the_type;
    public: 
        SdaiMbna_bc();
        SdaiMbna_bc( SDAI_Application_instance *se, bool addAttrs = true );
        SdaiMbna_bc( SdaiMbna_bc & e );
        ~SdaiMbna_bc();
        int opcode() {
            return 1059;
        }
        EntityAggregate_ptr_c datasets_() const;
        EntityAggregate_ptr   datasets_();
        void datasets_( const EntityAggregate_ptr x );

  const SdaiMesh_location_var   gridloc_() const;
        SdaiMesh_location_var   gridloc_();
        void gridloc_( const SdaiMesh_location_var x );

  const SdaiIjk_minmax_var   inward_normal_index_() const;
        SdaiIjk_minmax_var   inward_normal_index_();
        void inward_normal_index_( const SdaiIjk_minmax_var x );

        SdaiIndices_list_ptr_c inward_normal_list_() const;
        SdaiIndices_list_ptr   inward_normal_list_();
        void inward_normal_list_( const SdaiIndices_list_ptr x );

        EntityAggregate_ptr_c rstate_() const;
        EntityAggregate_ptr   rstate_();
        void rstate_( const EntityAggregate_ptr x );

        SdaiMbna_bc_type_ptr_c the_type_() const;
        SdaiMbna_bc_type_ptr   the_type_();
        void the_type_( const SdaiMbna_bc_type_ptr x );

};

inline SdaiMbna_bc * create_SdaiMbna_bc() {
    return new SdaiMbna_bc;
}

void init_SdaiMbna_bc(Registry& reg);

namespace ap209_multidisciplinary_analysis_and_design_mim_lf {
    extern EntityDescriptor *e_mbna_bc;
    extern AttrDescriptor *a_1549datasets;
    extern AttrDescriptor *a_1550gridloc;
    extern AttrDescriptor *a_1551inward_normal_index;
    extern AttrDescriptor *a_1552inward_normal_list;
    extern AttrDescriptor *a_1553rstate;
    extern AttrDescriptor *a_1554the_type;
}

#endif
