void VESPERSBeamline::flowSwitchError() { if (!flowSwitchSet_->isConnected()) return; QString error(""); AMReadOnlyPVControl *current = 0; for (int i = 0; i < flowSwitchSet_->count(); i++){ current = qobject_cast<AMReadOnlyPVControl *>(flowSwitchSet_->at(i)); if (!current->value()) error += tr("%1 (%2)\n").arg(current->name()).arg(current->readPVName()); } if (!error.isEmpty()){ error.prepend("The following flow switches have tripped:\n"); AMErrorMon::error(this, VESPERSBEAMLINE_WATER_FLOW_SWITCH_TRIP, error); } emit flowSwitchStatus(error.isEmpty()); }
void VESPERSBeamline::ionPumpError() { if (!ionPumpSet_->isConnected()) return; QString error(""); AMReadOnlyPVControl *current = 0; for (int i = 0; i < ionPumpSet_->count(); i++){ current = qobject_cast<AMReadOnlyPVControl *>(ionPumpSet_->at(i)); if (!current->value()) error += tr("%1 (%2)\n").arg(current->name()).arg(current->readPVName()); } if (!error.isEmpty()){ error.prepend("The following ion pumps are no longer operating correctly:\n"); AMErrorMon::error(this, VESPERSBEAMLINE_ION_PUMP_TRIP, error); } emit ionPumpStatus(error.isEmpty()); }