summaryrefslogtreecommitdiff
path: root/src/args/ArgsTypeA.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/args/ArgsTypeA.java')
-rw-r--r--src/args/ArgsTypeA.java60
1 files changed, 59 insertions, 1 deletions
diff --git a/src/args/ArgsTypeA.java b/src/args/ArgsTypeA.java
index eb172ef..0fd9a1e 100644
--- a/src/args/ArgsTypeA.java
+++ b/src/args/ArgsTypeA.java
@@ -1,6 +1,64 @@
package org.manzerbredes.open_klm.args;
+import java.util.HashMap;
-public class ArgsTypeA{
+import org.javatuples.Pair;
+import org.manzerbredes.open_klm.drivers.Driver;
+import org.manzerbredes.open_klm.drivers.DriverTypeA;
+import org.manzerbredes.open_klm.drivers.DriverTypeA.*;
+
+/**
+ * Parse args for DriverTypeA
+ *
+ * @author Manzerbredes
+ *
+ */
+public class ArgsTypeA implements Args{
+ /**
+ * Define Keyboard primary color state
+ */
+ private HashMap<Region, Pair<Color,Intensity>> primaryColorsState=new HashMap<>();
+
+ /**
+ * Define Keyboard secondary color state (for wave)
+ */
+ private HashMap<Region, Pair<Color,Intensity>> secondaryColorsState=new HashMap<>();
+
+ /**
+ * Define Keyboard mode state
+ */
+ private Mode mode=Mode.NORMAL;
+
+
+ /**
+ * Build a ArgsTypeA
+ *
+ * @param driver The driver to use
+ */
+ public ArgsTypeA(){
+ // Init primary color state
+ this.primaryColorsState.put(Region.LEFT, new Pair<DriverTypeA.Color, DriverTypeA.Intensity>(Color.OFF, Intensity.HIGH));
+ this.primaryColorsState.put(Region.MIDDLE, new Pair<DriverTypeA.Color, DriverTypeA.Intensity>(Color.OFF, Intensity.HIGH));
+ this.primaryColorsState.put(Region.RIGHT, new Pair<DriverTypeA.Color, DriverTypeA.Intensity>(Color.OFF, Intensity.HIGH));
+ // Init secondary color state
+ this.secondaryColorsState.put(Region.LEFT, new Pair<DriverTypeA.Color, DriverTypeA.Intensity>(Color.OFF, Intensity.LOW));
+ this.secondaryColorsState.put(Region.MIDDLE, new Pair<DriverTypeA.Color, DriverTypeA.Intensity>(Color.OFF, Intensity.LOW));
+ this.secondaryColorsState.put(Region.RIGHT, new Pair<DriverTypeA.Color, DriverTypeA.Intensity>(Color.OFF, Intensity.LOW));
+ // Init mode
+ this.mode=Mode.NORMAL;
+ }
+
+ @Override
+ public void applyAndExit(Driver aDriver, String[] args){
+ if(aDriver.getType().equals(DriverTypeA.class)){
+
+ //TODO Parse and apply args with args4j
+
+ System.exit(0);
+ }
+
+ // Error invalid driver
+ System.exit(1);
+ }
} \ No newline at end of file