#ifndef  ENTITY_SDAIDIRECTIONALLY_EXPLICIT_ELEMENT_REPRESENTATION_H
#define  ENTITY_SDAIDIRECTIONALLY_EXPLICIT_ELEMENT_REPRESENTATION_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 SdaiDirectionally_explicit_element_representation : public SdaiElement_representation {
     protected:
        SDAI_Application_instance_ptr _model_ref = NULL;
        EntityAggregate_ptr _systems_and_freedoms = NULL;          //  of  system_and_freedom

        SDAI_Application_instance_ptr _coefficient = NULL;
    public: 
        SdaiDirectionally_explicit_element_representation();
        SdaiDirectionally_explicit_element_representation( SDAI_Application_instance *se, bool addAttrs = true );
        SdaiDirectionally_explicit_element_representation( SdaiDirectionally_explicit_element_representation & e );
        ~SdaiDirectionally_explicit_element_representation();
        int opcode() {
            return 1912;
        }
        SdaiFea_model_ptr_c model_ref_() const;
        SdaiFea_model_ptr   model_ref_();
        void model_ref_( const SdaiFea_model_ptr x );

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

        SdaiDirectionally_explicit_element_coefficient_ptr_c coefficient_() const;
        SdaiDirectionally_explicit_element_coefficient_ptr   coefficient_();
        void coefficient_( const SdaiDirectionally_explicit_element_coefficient_ptr x );

};

inline SdaiDirectionally_explicit_element_representation * create_SdaiDirectionally_explicit_element_representation() {
    return new SdaiDirectionally_explicit_element_representation;
}

void init_SdaiDirectionally_explicit_element_representation(Registry& reg);

namespace ap209_multidisciplinary_analysis_and_design_mim_lf {
    extern EntityDescriptor *e_directionally_explicit_element_representation;
    extern AttrDescriptor *a_2844model_ref;
    extern AttrDescriptor *a_2845systems_and_freedoms;
    extern AttrDescriptor *a_2846coefficient;
}

#endif
