#ifndef  ENTITY_SDAILINK_MOTION_RELATIONSHIP_H
#define  ENTITY_SDAILINK_MOTION_RELATIONSHIP_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 SdaiLink_motion_relationship : public SdaiDefinitional_representation_relationship {
     protected:
        SdaiLink_or_shape_representation _representation_relationship_rep_1;
        SDAI_Application_instance_ptr _representation_relationship_rep_2 = NULL;
        SDAI_Application_instance_ptr _representation_relationship_with_transformation_transformation_operator = NULL;
    public: 
        SdaiLink_motion_relationship();
        SdaiLink_motion_relationship( SDAI_Application_instance *se, bool addAttrs = true );
        SdaiLink_motion_relationship( SdaiLink_motion_relationship & e );
        ~SdaiLink_motion_relationship();
        int opcode() {
            return 1301;
        }
        SdaiLink_or_shape_representation_ptr_c representation_relationship_rep_1_() const;
        SdaiLink_or_shape_representation_ptr   representation_relationship_rep_1_();
        void representation_relationship_rep_1_( const SdaiLink_or_shape_representation_ptr x );

        SdaiLink_motion_representation_along_path_ptr_c representation_relationship_rep_2_() const;
        SdaiLink_motion_representation_along_path_ptr   representation_relationship_rep_2_();
        void representation_relationship_rep_2_( const SdaiLink_motion_representation_along_path_ptr x );

        SdaiLink_motion_transformation_ptr_c representation_relationship_with_transformation_transformation_operator_() const;
        SdaiLink_motion_transformation_ptr   representation_relationship_with_transformation_transformation_operator_();
        void representation_relationship_with_transformation_transformation_operator_( const SdaiLink_motion_transformation_ptr x );

};

inline SdaiLink_motion_relationship * create_SdaiLink_motion_relationship() {
    return new SdaiLink_motion_relationship;
}

void init_SdaiLink_motion_relationship(Registry& reg);

namespace ap209_multidisciplinary_analysis_and_design_mim_lf {
    extern EntityDescriptor *e_link_motion_relationship;
    extern AttrDescriptor *a_1962Rrepresentation_relationship_rep_1;
    extern AttrDescriptor *a_1963Rrepresentation_relationship_rep_2;
    extern AttrDescriptor *a_1964Rrepresentation_relationship_with_transformation_transformation_operator;
}

#endif
