46 return validateWithEqualFunc(&pilz_industrial_motion_planner::JointLimitsValidator::positionEqual,
joint_limits);
52 return validateWithEqualFunc(&pilz_industrial_motion_planner::JointLimitsValidator::velocityEqual,
joint_limits);
58 return validateWithEqualFunc(&pilz_industrial_motion_planner::JointLimitsValidator::accelerationEqual,
joint_limits);
64 return validateWithEqualFunc(&pilz_industrial_motion_planner::JointLimitsValidator::decelerationEqual,
joint_limits);
67bool pilz_industrial_motion_planner::JointLimitsValidator::validateWithEqualFunc(
81 if (!eq_func(reference, it->second))
90bool pilz_industrial_motion_planner::JointLimitsValidator::positionEqual(
const JointLimit& lhs,
const JointLimit& rhs)
93 if (lhs.has_position_limits != rhs.has_position_limits)
99 if (lhs.has_position_limits && ((lhs.max_position != rhs.max_position) || (lhs.min_position != rhs.min_position)))
106bool pilz_industrial_motion_planner::JointLimitsValidator::velocityEqual(
const JointLimit& lhs,
const JointLimit& rhs)
109 if (lhs.has_velocity_limits != rhs.has_velocity_limits)
115 if (lhs.has_velocity_limits && (lhs.max_velocity != rhs.max_velocity))
123bool pilz_industrial_motion_planner::JointLimitsValidator::accelerationEqual(
const JointLimit& lhs,
127 if (lhs.has_acceleration_limits != rhs.has_acceleration_limits)
133 if (lhs.has_acceleration_limits && (lhs.max_acceleration != rhs.max_acceleration))
141bool pilz_industrial_motion_planner::JointLimitsValidator::decelerationEqual(
const JointLimit& lhs,
145 if (lhs.has_deceleration_limits != rhs.has_deceleration_limits)
151 if (lhs.has_deceleration_limits && (lhs.max_deceleration != rhs.max_deceleration))
Container for JointLimits, essentially a map with convenience functions. Adds the ability to as for l...
static bool validateAllPositionLimitsEqual(const pilz_industrial_motion_planner::JointLimitsContainer &joint_limits)
Validates that the position limits of all limits are equal.
static bool validateAllDecelerationLimitsEqual(const pilz_industrial_motion_planner::JointLimitsContainer &joint_limits)
Validates that the deceleration of all limits is equal.
static bool validateAllVelocityLimitsEqual(const pilz_industrial_motion_planner::JointLimitsContainer &joint_limits)
Validates that the velocity of all limits is equal.
static bool validateAllAccelerationLimitsEqual(const pilz_industrial_motion_planner::JointLimitsContainer &joint_limits)
Validates that the acceleration of all limits is equal.
joint_limits_interface::JointLimits JointLimit
Extends joint_limits_interface::JointLimits with a deceleration parameter.