#ifndef  ENTITY_SDAIBINARY_ASSEMBLY_CONSTRAINT_H
#define  ENTITY_SDAIBINARY_ASSEMBLY_CONSTRAINT_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 SdaiBinary_assembly_constraint : public SdaiAssembly_geometric_constraint {
     protected:
        SDAI_Application_instance_ptr _representation_relationship_rep_1 = NULL;
        SDAI_Application_instance_ptr _representation_relationship_rep_2 = NULL;
        SdaiTransformation _transformation_operator;
    public: 
        SdaiBinary_assembly_constraint();
        SdaiBinary_assembly_constraint( SDAI_Application_instance *se, bool addAttrs = true );
        SdaiBinary_assembly_constraint( SdaiBinary_assembly_constraint & e );
        ~SdaiBinary_assembly_constraint();
        int opcode() {
            return 121;
        }
        SdaiRepresentative_shape_representation_ptr_c representation_relationship_rep_1_() const;
        SdaiRepresentative_shape_representation_ptr   representation_relationship_rep_1_();
        void representation_relationship_rep_1_( const SdaiRepresentative_shape_representation_ptr x );

        SdaiRepresentative_shape_representation_ptr_c representation_relationship_rep_2_() const;
        SdaiRepresentative_shape_representation_ptr   representation_relationship_rep_2_();
        void representation_relationship_rep_2_( const SdaiRepresentative_shape_representation_ptr x );

        SdaiTransformation_ptr_c transformation_operator_() const;
        SdaiTransformation_ptr   transformation_operator_();
        void transformation_operator_( const SdaiTransformation_ptr x );

};

inline SdaiBinary_assembly_constraint * create_SdaiBinary_assembly_constraint() {
    return new SdaiBinary_assembly_constraint;
}

void init_SdaiBinary_assembly_constraint(Registry& reg);

namespace ap209_multidisciplinary_analysis_and_design_mim_lf {
    extern EntityDescriptor *e_binary_assembly_constraint;
    extern AttrDescriptor *a_170Rrepresentation_relationship_rep_1;
    extern AttrDescriptor *a_171Rrepresentation_relationship_rep_2;
}

#endif
