@@ -0,0 +1,1185 @@
+package de.toman.milight;%0A%0Aimport javax.sound.sampled.TargetDataLine;%0A%0A/**%0A * With this class you can visualize your music using some group of lights. The%0A * lights will change their color and brightness as the music does.%0A * %0A * @author Stefan Toman (toman@tum.de)%0A */%0Apublic class MusicVisualizer %7B%0A%09/**%0A%09 * The group of lights controlled by this visualizer%0A%09 */%0A%09private Lights lights;%0A%0A%09/**%0A%09 * The line to read the music input from.%0A%09 */%0A%09private TargetDataLine line;%0A%0A%09/**%0A%09 * This constructor creates a new visualizer.%0A%09 * %0A%09 * @param lights%0A%09 *            the group of lights to be controlled%0A%09 * @param line%0A%09 *            the line to read the music input from%0A%09 */%0A%09public MusicVisualizer(Lights lights, TargetDataLine line) %7B%0A%09%09super();%0A%09%09this.lights = lights;%0A%09%09this.line = line;%0A%09%7D%0A%0A%09/**%0A%09 * This function returns the group of lights controlled by this visualizer.%0A%09 * %0A%09 * @return the group of lights controlled by this visualizer%0A%09 */%0A%09public Lights getLights() %7B%0A%09%09return lights;%0A%09%7D%0A%0A%09/**%0A%09 * This function returns the line to read the music input from.%0A%09 * %0A%09 * @return the line to read the music input from%0A%09 */%0A%09public TargetDataLine getLine() %7B%0A%09%09return line;%0A%09%7D%0A%7D%0A

add first MusicVisualizer skeleton