Version bump:
first functional version of new function mapping.
This commit is contained in:
@@ -49,6 +49,10 @@ public abstract class Function extends BaseClass{
|
||||
return null;
|
||||
}
|
||||
|
||||
public boolean enabled() {
|
||||
return enabled;
|
||||
}
|
||||
|
||||
public boolean enabled(Decoder decoder) {
|
||||
return enabled;
|
||||
}
|
||||
@@ -101,8 +105,9 @@ public abstract class Function extends BaseClass{
|
||||
return selector;
|
||||
}
|
||||
|
||||
public void setState(boolean enabled) {
|
||||
public Function setState(boolean enabled) {
|
||||
this.enabled = enabled;
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -44,4 +44,13 @@ public class FunctionList extends HashSet<Function> implements Constants{
|
||||
stream().filter(fun -> name.equals(fun.name())).forEach(fun -> fun.setState(enabled));
|
||||
return this;
|
||||
}
|
||||
|
||||
|
||||
public HashSet<Function> with(String name) {
|
||||
HashSet<Function> subset = new HashSet<>();
|
||||
for (Function f: this) {
|
||||
if (f.name().equals(name)) subset.add(f);
|
||||
}
|
||||
return subset;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,5 +1,14 @@
|
||||
package de.srsoftware.web4rail.functions;
|
||||
|
||||
public class HeadLight extends DirectedFunction {
|
||||
import de.srsoftware.web4rail.devices.Decoder;
|
||||
import de.srsoftware.web4rail.moving.Locomotive;
|
||||
|
||||
public class HeadLight extends DirectedFunction {
|
||||
@Override
|
||||
public boolean enabled(Decoder decoder) {
|
||||
Locomotive loco = decoder.parent();
|
||||
if (isNull(loco) || !loco.isFirst()) return false;
|
||||
boolean result = isSet(loco) && loco.isFirst() && super.enabled(decoder);
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,5 +1,13 @@
|
||||
package de.srsoftware.web4rail.functions;
|
||||
|
||||
public class TailLight extends DirectedFunction {
|
||||
import de.srsoftware.web4rail.devices.Decoder;
|
||||
import de.srsoftware.web4rail.moving.Locomotive;
|
||||
|
||||
public class TailLight extends DirectedFunction {
|
||||
@Override
|
||||
public boolean enabled(Decoder decoder) {
|
||||
Locomotive loco = decoder.parent();
|
||||
if (isNull(loco) || !loco.isLast()) return false;
|
||||
return super.enabled(decoder);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user