X-Git-Url: https://git.martlubbers.net/?a=blobdiff_plain;f=dsl%2Fruntime%2Fsrc%2Fnl%2Fru%2Fdes%2Fsensors%2FSensorCollector.java;h=db10870145250774d61c89401acc35476f978677;hb=8880a95aedaf51c028818910b64f85472d96c14e;hp=59fe6cdfc79b9cafefbde09ec1ed4cae0fc94880;hpb=1b13ccb59263b66abc763fb8f298b14bdebc9582;p=des2015.git diff --git a/dsl/runtime/src/nl/ru/des/sensors/SensorCollector.java b/dsl/runtime/src/nl/ru/des/sensors/SensorCollector.java index 59fe6cd..db10870 100644 --- a/dsl/runtime/src/nl/ru/des/sensors/SensorCollector.java +++ b/dsl/runtime/src/nl/ru/des/sensors/SensorCollector.java @@ -1,6 +1,5 @@ package nl.ru.des.sensors; -import java.util.Arrays; import java.util.HashSet; import java.util.Set; @@ -10,11 +9,11 @@ import lejos.robotics.SampleProvider; public class SensorCollector implements MessageHandler{ public static final int DELAY = 200; - private static final float DANGER_DISTANCE_FRONT = 0.15f; + private static final float DANGER_DISTANCE_FRONT = 0.175f; private static final float DANGER_DISTANCE_BACK = 0.035f; - private static final float DANGER_LIGHT = 0.45f; + private static final float DANGER_LIGHT = 0.40f; - private Set collectedColors; + private Set variables; //Local sensors private EV3GyroSensor gyroSensor; @@ -45,7 +44,11 @@ public class SensorCollector implements MessageHandler{ rightLightTime = System.currentTimeMillis(); gyroTime = System.currentTimeMillis(); - collectedColors = new HashSet(); + color = -1; + leftTouch = false; + rightTouch = false; + frontUltra = Float.MAX_VALUE; + variables = new HashSet(); } //Local sensors @@ -86,12 +89,16 @@ public class SensorCollector implements MessageHandler{ } //Remote sensors - public void resetColors(){ - collectedColors.clear(); + public void reset(){ + variables.clear(); } - public boolean collected(int[] colors){ - return collectedColors.containsAll(Arrays.asList(colors)); + public boolean collected(String var){ + return variables.contains(var); + } + + public void saveVar(String var) { + variables.add(var); } public int color(){ @@ -116,7 +123,6 @@ public class SensorCollector implements MessageHandler{ switch(RemoteSensors.RemoteSensorEnum.values()[Integer.valueOf(Character.toString(m.charAt(0)))]){ case COLOR: color = Integer.valueOf(s); - collectedColors.add(color); break; case LEFT: leftTouch = Integer.valueOf(s)==1;