X-Git-Url: http://dolda2000.com/gitweb/?a=blobdiff_plain;f=src%2Fkaka%2Fcakelight%2FConsole.java;h=422b7a38147e14ce26ffcdc1231dcf71fe95c4be;hb=fa013e4bfdfe17f97ddeab2596ae8daa03337e4a;hp=84ca61e7ee4e0cf2923672c86a18cd27a46a398a;hpb=b1899e910b41a11502ed2ac78876d943b85115ab;p=kaka%2Fcakelight.git diff --git a/src/kaka/cakelight/Console.java b/src/kaka/cakelight/Console.java index 84ca61e..422b7a3 100644 --- a/src/kaka/cakelight/Console.java +++ b/src/kaka/cakelight/Console.java @@ -1,5 +1,10 @@ package kaka.cakelight; +import kaka.cakelight.mode.AmbientMode; +import kaka.cakelight.mode.SingleColorMode; +import kaka.cakelight.mode.TwoColorNoiseMode; +import kaka.cakelight.mode.VideoMode; + import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; @@ -17,6 +22,14 @@ public class Console extends Thread { this.cakelight = cakelight; this.config = config; reader = new BufferedReader(new InputStreamReader(System.in)); + + public CakeLight getCakelight() { + return cakelight; + } + + public Configuration getConfig() { + return config; + } } @Override @@ -56,6 +69,9 @@ public class Console extends Thread { String[] split = input.split("\\s+"); config.video.saturation = Double.parseDouble(split[1]); System.out.println("setting saturation to " + config.video.saturation); + } else if (input.matches("(n|noise)(\\s+[a-z0-9]+){2}")) { + TwoColorNoiseMode.getCommand().activate(this, input.split("\\s+")); + System.out.println("setting two-color noise mode"); } } catch (IOException e) { System.out.println("Error reading from command line"); @@ -63,4 +79,9 @@ public class Console extends Thread { } } } + + public interface Command { + String[] getNames(); + void activate(Console console, String[] args); + } }