#ifndef  ENTITY_SDAIATTRIBUTE_VALUE_ASSIGNMENT_H
#define  ENTITY_SDAIATTRIBUTE_VALUE_ASSIGNMENT_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 SdaiAttribute_value_assignment : public SDAI_Application_instance {
    protected:
        SDAI_String _attribute_name;
        SdaiAttribute_type _attribute_value;
        SDAI_Application_instance_ptr _role = NULL;
    public: 
        SdaiAttribute_value_assignment();
        SdaiAttribute_value_assignment( SDAI_Application_instance *se, bool addAttrs = true );
        SdaiAttribute_value_assignment( SdaiAttribute_value_assignment & e );
        ~SdaiAttribute_value_assignment();
        int opcode() {
            return 587;
        }
  const SdaiLabel   attribute_name_() const;
        SdaiLabel   attribute_name_();
        void attribute_name_( const SdaiLabel x );

        SdaiAttribute_type_ptr_c attribute_value_() const;
        SdaiAttribute_type_ptr   attribute_value_();
        void attribute_value_( const SdaiAttribute_type_ptr x );

        SdaiAttribute_value_role_ptr_c role_() const;
        SdaiAttribute_value_role_ptr   role_();
        void role_( const SdaiAttribute_value_role_ptr x );

};

inline SdaiAttribute_value_assignment * create_SdaiAttribute_value_assignment() {
    return new SdaiAttribute_value_assignment;
}

void init_SdaiAttribute_value_assignment(Registry& reg);

namespace ap203_configuration_controlled_3d_design_of_mechanical_parts_and_assemblies_mim_lf {
    extern EntityDescriptor *e_attribute_value_assignment;
    extern AttrDescriptor *a_762attribute_name;
    extern AttrDescriptor *a_763attribute_value;
    extern AttrDescriptor *a_764role;
}

#endif
