/**
  * Checks that X axis is in the right direction.
  *
  * @param value The workspace to check
  * @return "" if is valid, otherwise a user level description of a problem
  */
std::string IncreasingAxisValidator::checkValidity(
    const MatrixWorkspace_sptr &value) const {
  // 0 for X axis
  Axis *xAxis = value->getAxis(0);

  // Left-most axis value should be less than the right-most, if ws has
  // more than one X axis value
  if (xAxis->length() > 1 &&
      xAxis->getValue(0) >= xAxis->getValue(xAxis->length() - 1))
    return "X axis of the workspace should be increasing from left to "
           "right";
  else
    return "";
}
示例#2
0
/** Check if two axis defined as spectra or numeric axis are equivalent
 *  @param axis2 :: Reference to the axis to compare to
 *  @return true is self and second axis are equal
 */
bool RefAxis::operator==(const Axis &axis2) const {
  if (length() != axis2.length()) {
    return false;
  }
  const RefAxis *ra2 = dynamic_cast<const RefAxis *>(&axis2);
  if (!ra2) {
    return false;
  }
  return true;
}