#ifndef  ENTITY_SDAILOW_ORDER_KINEMATIC_PAIR_WITH_RANGE_H
#define  ENTITY_SDAILOW_ORDER_KINEMATIC_PAIR_WITH_RANGE_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 SdaiLow_order_kinematic_pair_with_range : public SdaiLow_order_kinematic_pair {
     protected:
        SDAI_Real _lower_limit_actual_rotation_x = 0.0;    //  OPTIONAL
        SDAI_Real _upper_limit_actual_rotation_x = 0.0;    //  OPTIONAL
        SDAI_Real _lower_limit_actual_rotation_y = 0.0;    //  OPTIONAL
        SDAI_Real _upper_limit_actual_rotation_y = 0.0;    //  OPTIONAL
        SDAI_Real _lower_limit_actual_rotation_z = 0.0;    //  OPTIONAL
        SDAI_Real _upper_limit_actual_rotation_z = 0.0;    //  OPTIONAL
        SDAI_Real _lower_limit_actual_translation_x = 0.0;    //  OPTIONAL
        SDAI_Real _upper_limit_actual_translation_x = 0.0;    //  OPTIONAL
        SDAI_Real _lower_limit_actual_translation_y = 0.0;    //  OPTIONAL
        SDAI_Real _upper_limit_actual_translation_y = 0.0;    //  OPTIONAL
        SDAI_Real _lower_limit_actual_translation_z = 0.0;    //  OPTIONAL
        SDAI_Real _upper_limit_actual_translation_z = 0.0;    //  OPTIONAL
    public: 
        SdaiLow_order_kinematic_pair_with_range();
        SdaiLow_order_kinematic_pair_with_range( SDAI_Application_instance *se, bool addAttrs = true );
        SdaiLow_order_kinematic_pair_with_range( SdaiLow_order_kinematic_pair_with_range & e );
        ~SdaiLow_order_kinematic_pair_with_range();
        int opcode() {
            return 1923;
        }
        SdaiPlane_angle_measure   lower_limit_actual_rotation_x_() const;
        void lower_limit_actual_rotation_x_( const SdaiPlane_angle_measure x );

        SdaiPlane_angle_measure   upper_limit_actual_rotation_x_() const;
        void upper_limit_actual_rotation_x_( const SdaiPlane_angle_measure x );

        SdaiPlane_angle_measure   lower_limit_actual_rotation_y_() const;
        void lower_limit_actual_rotation_y_( const SdaiPlane_angle_measure x );

        SdaiPlane_angle_measure   upper_limit_actual_rotation_y_() const;
        void upper_limit_actual_rotation_y_( const SdaiPlane_angle_measure x );

        SdaiPlane_angle_measure   lower_limit_actual_rotation_z_() const;
        void lower_limit_actual_rotation_z_( const SdaiPlane_angle_measure x );

        SdaiPlane_angle_measure   upper_limit_actual_rotation_z_() const;
        void upper_limit_actual_rotation_z_( const SdaiPlane_angle_measure x );

        SdaiLength_measure   lower_limit_actual_translation_x_() const;
        void lower_limit_actual_translation_x_( const SdaiLength_measure x );

        SdaiLength_measure   upper_limit_actual_translation_x_() const;
        void upper_limit_actual_translation_x_( const SdaiLength_measure x );

        SdaiLength_measure   lower_limit_actual_translation_y_() const;
        void lower_limit_actual_translation_y_( const SdaiLength_measure x );

        SdaiLength_measure   upper_limit_actual_translation_y_() const;
        void upper_limit_actual_translation_y_( const SdaiLength_measure x );

        SdaiLength_measure   lower_limit_actual_translation_z_() const;
        void lower_limit_actual_translation_z_( const SdaiLength_measure x );

        SdaiLength_measure   upper_limit_actual_translation_z_() const;
        void upper_limit_actual_translation_z_( const SdaiLength_measure x );

};

inline SdaiLow_order_kinematic_pair_with_range * create_SdaiLow_order_kinematic_pair_with_range() {
    return new SdaiLow_order_kinematic_pair_with_range;
}

void init_SdaiLow_order_kinematic_pair_with_range(Registry& reg);

namespace ap209_multidisciplinary_analysis_and_design_mim_lf {
    extern EntityDescriptor *e_low_order_kinematic_pair_with_range;
    extern AttrDescriptor *a_2863lower_limit_actual_rotation_x;
    extern AttrDescriptor *a_2864upper_limit_actual_rotation_x;
    extern AttrDescriptor *a_2865lower_limit_actual_rotation_y;
    extern AttrDescriptor *a_2866upper_limit_actual_rotation_y;
    extern AttrDescriptor *a_2867lower_limit_actual_rotation_z;
    extern AttrDescriptor *a_2868upper_limit_actual_rotation_z;
    extern AttrDescriptor *a_2869lower_limit_actual_translation_x;
    extern AttrDescriptor *a_2870upper_limit_actual_translation_x;
    extern AttrDescriptor *a_2871lower_limit_actual_translation_y;
    extern AttrDescriptor *a_2872upper_limit_actual_translation_y;
    extern AttrDescriptor *a_2873lower_limit_actual_translation_z;
    extern AttrDescriptor *a_2874upper_limit_actual_translation_z;
}

#endif
