#ifndef  ENTITY_SDAIUSAGE_ASSOCIATION_H
#define  ENTITY_SDAIUSAGE_ASSOCIATION_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 SdaiUsage_association : public SdaiAction_method_relationship {
     protected:
        SDAI_Application_instance_ptr _action_method_relationship_related_method = NULL;
        SDAI_Application_instance_ptr _action_method_relationship_relating_method = NULL;
    public: 
        SdaiUsage_association();
        SdaiUsage_association( SDAI_Application_instance *se, bool addAttrs = true );
        SdaiUsage_association( SdaiUsage_association & e );
        ~SdaiUsage_association();
        int opcode() {
            return 658;
        }
        SdaiInformation_usage_right_ptr_c action_method_relationship_related_method_() const;
        SdaiInformation_usage_right_ptr   action_method_relationship_related_method_();
        void action_method_relationship_related_method_( const SdaiInformation_usage_right_ptr x );

        SdaiInformation_usage_right_ptr_c action_method_relationship_relating_method_() const;
        SdaiInformation_usage_right_ptr   action_method_relationship_relating_method_();
        void action_method_relationship_relating_method_( const SdaiInformation_usage_right_ptr x );

};

inline SdaiUsage_association * create_SdaiUsage_association() {
    return new SdaiUsage_association;
}

void init_SdaiUsage_association(Registry& reg);

namespace ap203_configuration_controlled_3d_design_of_mechanical_parts_and_assemblies_mim_lf {
    extern EntityDescriptor *e_usage_association;
    extern AttrDescriptor *a_854Raction_method_relationship_related_method;
    extern AttrDescriptor *a_855Raction_method_relationship_relating_method;
    extern Derived_attribute *a_856Drelated;
    extern Derived_attribute *a_857Drelating;
}

#endif
