package jalview.ws.params.simple; import jalview.ws.params.ParameterI; import jalview.ws.params.ValueConstrainI; /** * * @author TZVanaalten * */ public class LogarithmicParameter extends Option implements ParameterI { Double defval; Double min, max; Double base; @Override public ValueConstrainI getValidValue() { return new ValueConstrainI() { @Override public ValueType getType() { return ValueType.Double; } @Override public Number getMin() { if (min < max) { return min; } else { return null; } } @Override public Number getMax() { if (min < max) { return max; } else { return null; } } }; } public LogarithmicParameter(LogarithmicParameter parm) { super(parm); max = parm.max; min = parm.min; base = parm.base; } public LogarithmicParameter(String name, String description, boolean required, Double defValue, Double min, Double max, Double base) { super(name, description, required, String.valueOf(defValue), null, null, null); defval = defValue; this.min = min * 1000000; this.max = max * 1000000; this.base = base; } public LogarithmicParameter(String name, String description, boolean required, Double defValue, Double value, Double min, Double max, Double base) { super(name, description, required, String.valueOf(defValue), String.valueOf(value), null, null); defval = defValue; this.min = min * 1000000; this.max = max * 1000000; this.base = base; } @Override public LogarithmicParameter copy() { return new LogarithmicParameter(this); } public Double getBase() { return base; } }