import net.sf.openrocket.document.Simulation;
import net.sf.openrocket.optimization.general.OptimizationException;
+import net.sf.openrocket.unit.UnitGroup;
/**
* A parameter of a rocket or simulation that can be optimized
* @return the parameter value (any double value)
* @throws OptimizationException if an error occurs preventing the optimization from continuing
*/
- public double computeValue(Simulation simulation) throws OptimizationException;
+ public double computeValue(Simulation simulation) throws OptimizationException, InterruptedException;
+
+
+ /**
+ * Return the unit group associated with the computed value.
+ * @return the unit group of the computed value.
+ */
+ public UnitGroup getUnitGroup();
}