# HG changeset patch # User samer # Date 1554477960 -3600 # Node ID 5df24c91468d683074cb48789bc3c5989ffda206 # Parent bf79fb79ee1389cd0879a2d5893e9915f7b18049 Oh my what a mess. diff -r bf79fb79ee13 -r 5df24c91468d .hgignore --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/.hgignore Fri Apr 05 16:26:00 2019 +0100 @@ -0,0 +1,5 @@ +doc +.*\.class +dist/lib/.*\.jar +.jscheme_history +args.old diff -r bf79fb79ee13 -r 5df24c91468d build/samer/applet/ButtonsApplet.class Binary file build/samer/applet/ButtonsApplet.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/applet/ConsoleApplet.class Binary file build/samer/applet/ConsoleApplet.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/applet/JApplet$1$1.class Binary file build/samer/applet/JApplet$1$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/applet/JApplet$1.class Binary file build/samer/applet/JApplet$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/applet/JApplet.class Binary file build/samer/applet/JApplet.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/applet/JAppletShell$VContainer.class Binary file build/samer/applet/JAppletShell$VContainer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/applet/JAppletShell.class Binary file build/samer/applet/JAppletShell.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/applet/Sierpinski$1.class Binary file build/samer/applet/Sierpinski$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/applet/Sierpinski.class Binary file build/samer/applet/Sierpinski.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/applet/WindowApplet.class Binary file build/samer/applet/WindowApplet.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/audio/AudioSink$Util.class Binary file build/samer/audio/AudioSink$Util.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/audio/AudioSink.class Binary file build/samer/audio/AudioSink.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/audio/AudioSource$Util.class Binary file build/samer/audio/AudioSource$Util.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/audio/AudioSource.class Binary file build/samer/audio/AudioSource.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/audio/FileSink$1.class Binary file build/samer/audio/FileSink$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/audio/FileSink$2.class Binary file build/samer/audio/FileSink$2.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/audio/FileSink.class Binary file build/samer/audio/FileSink.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/audio/FileSource$1.class Binary file build/samer/audio/FileSource$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/audio/FileSource$2.class Binary file build/samer/audio/FileSource$2.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/audio/FileSource$3.class Binary file build/samer/audio/FileSource$3.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/audio/FileSource$FileSourceViewer.class Binary file build/samer/audio/FileSource$FileSourceViewer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/audio/FileSource.class Binary file build/samer/audio/FileSource.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/audio/LineSink$1.class Binary file build/samer/audio/LineSink$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/audio/LineSink$2.class Binary file build/samer/audio/LineSink$2.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/audio/LineSink$Writer.class Binary file build/samer/audio/LineSink$Writer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/audio/LineSink.class Binary file build/samer/audio/LineSink.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/audio/LineSource$1.class Binary file build/samer/audio/LineSource$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/audio/LineSource$2.class Binary file build/samer/audio/LineSource$2.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/audio/LineSource$Reader.class Binary file build/samer/audio/LineSource$Reader.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/audio/LineSource.class Binary file build/samer/audio/LineSource.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/audio/VLine$LineViewer.class Binary file build/samer/audio/VLine$LineViewer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/audio/VLine.class Binary file build/samer/audio/VLine.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/Agent$Registry.class Binary file build/samer/core/Agent$Registry.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/Agent.class Binary file build/samer/core/Agent.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/CompoundAgent.class Binary file build/samer/core/CompoundAgent.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/DefaultShell.class Binary file build/samer/core/DefaultShell.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/DoubleFormat.class Binary file build/samer/core/DoubleFormat.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/Environment$1.class Binary file build/samer/core/Environment$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/Environment$2$1.class Binary file build/samer/core/Environment$2$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/Environment$2.class Binary file build/samer/core/Environment$2.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/Environment$Autocoder.class Binary file build/samer/core/Environment$Autocoder.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/Environment$Binding.class Binary file build/samer/core/Environment$Binding.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/Environment$Codec.class Binary file build/samer/core/Environment$Codec.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/Environment$CompoundIterator.class Binary file build/samer/core/Environment$CompoundIterator.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/Environment$Datum.class Binary file build/samer/core/Environment$Datum.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/Environment$Iterator.class Binary file build/samer/core/Environment$Iterator.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/Environment.class Binary file build/samer/core/Environment.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/Node.class Binary file build/samer/core/Node.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/NumberSink.class Binary file build/samer/core/NumberSink.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/NumberViewer.class Binary file build/samer/core/NumberViewer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/Registry.class Binary file build/samer/core/Registry.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/Saveable.class Binary file build/samer/core/Saveable.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/Saver.class Binary file build/samer/core/Saver.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/Shell$1.class Binary file build/samer/core/Shell$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/Shell$2.class Binary file build/samer/core/Shell$2.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/Shell$3.class Binary file build/samer/core/Shell$3.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/Shell$Dialog.class Binary file build/samer/core/Shell$Dialog.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/Shell$Interface.class Binary file build/samer/core/Shell$Interface.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/Shell$Interpreter.class Binary file build/samer/core/Shell$Interpreter.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/Shell$ViewerWindowListener$1.class Binary file build/samer/core/Shell$ViewerWindowListener$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/Shell$ViewerWindowListener.class Binary file build/samer/core/Shell$ViewerWindowListener.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/Shell$Window.class Binary file build/samer/core/Shell$Window.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/Shell.class Binary file build/samer/core/Shell.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/Variable.class Binary file build/samer/core/Variable.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/Viewable$1.class Binary file build/samer/core/Viewable$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/Viewable$Vector.class Binary file build/samer/core/Viewable$Vector.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/Viewable.class Binary file build/samer/core/Viewable.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/Viewer.class Binary file build/samer/core/Viewer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/X$1.class Binary file build/samer/core/X$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/X$2.class Binary file build/samer/core/X$2.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/X$3.class Binary file build/samer/core/X$3.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/X$4.class Binary file build/samer/core/X$4.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/X$5.class Binary file build/samer/core/X$5.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/X$6.class Binary file build/samer/core/X$6.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/X$7.class Binary file build/samer/core/X$7.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/X$BaseCodec.class Binary file build/samer/core/X$BaseCodec.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/X.class Binary file build/samer/core/X.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/shells/AWTShell$VContainer.class Binary file build/samer/core/shells/AWTShell$VContainer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/shells/AWTShell.class Binary file build/samer/core/shells/AWTShell.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/shells/BevelWindow.class Binary file build/samer/core/shells/BevelWindow.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/shells/DesktopShell$1.class Binary file build/samer/core/shells/DesktopShell$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/shells/DesktopShell$VContainer.class Binary file build/samer/core/shells/DesktopShell$VContainer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/shells/DesktopShell.class Binary file build/samer/core/shells/DesktopShell.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/shells/SwingShell$1.class Binary file build/samer/core/shells/SwingShell$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/shells/SwingShell$VContainer.class Binary file build/samer/core/shells/SwingShell$VContainer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/shells/SwingShell.class Binary file build/samer/core/shells/SwingShell.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/types/DoubleModel.class Binary file build/samer/core/types/DoubleModel.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/types/VBoolean.class Binary file build/samer/core/types/VBoolean.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/types/VColor.class Binary file build/samer/core/types/VColor.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/types/VDouble.class Binary file build/samer/core/types/VDouble.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/types/VFile.class Binary file build/samer/core/types/VFile.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/types/VInteger.class Binary file build/samer/core/types/VInteger.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/types/VParameter.class Binary file build/samer/core/types/VParameter.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/types/VRectangle.class Binary file build/samer/core/types/VRectangle.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/types/VString.class Binary file build/samer/core/types/VString.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/AgentAdapter.class Binary file build/samer/core/util/AgentAdapter.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/BaseViewer.class Binary file build/samer/core/util/BaseViewer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/ConsoleEnvironment$Texton.class Binary file build/samer/core/util/ConsoleEnvironment$Texton.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/ConsoleEnvironment.class Binary file build/samer/core/util/ConsoleEnvironment.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/DefaultViewer.class Binary file build/samer/core/util/DefaultViewer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/FileFilter.class Binary file build/samer/core/util/FileFilter.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/FilteredEnvironment.class Binary file build/samer/core/util/FilteredEnvironment.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/HashMap$1.class Binary file build/samer/core/util/HashMap$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/HashMap$Entry.class Binary file build/samer/core/util/HashMap$Entry.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/HashMap.class Binary file build/samer/core/util/HashMap.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/IMap.class Binary file build/samer/core/util/IMap.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/LinearMap.class Binary file build/samer/core/util/LinearMap.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/LogMap.class Binary file build/samer/core/util/LogMap.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/MouseRetarget.class Binary file build/samer/core/util/MouseRetarget.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/Properties$1.class Binary file build/samer/core/util/Properties$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/Properties$Property.class Binary file build/samer/core/util/Properties$Property.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/Properties.class Binary file build/samer/core/util/Properties.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/StackLayout.class Binary file build/samer/core/util/StackLayout.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/Tools.class Binary file build/samer/core/util/Tools.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/UserEnvironment$1.class Binary file build/samer/core/util/UserEnvironment$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/UserEnvironment$2.class Binary file build/samer/core/util/UserEnvironment$2.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/UserEnvironment$3.class Binary file build/samer/core/util/UserEnvironment$3.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/UserEnvironment$4.class Binary file build/samer/core/util/UserEnvironment$4.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/UserEnvironment$5.class Binary file build/samer/core/util/UserEnvironment$5.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/UserEnvironment$Gluon.class Binary file build/samer/core/util/UserEnvironment$Gluon.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/UserEnvironment$Thingy.class Binary file build/samer/core/util/UserEnvironment$Thingy.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/UserEnvironment.class Binary file build/samer/core/util/UserEnvironment.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/VLayout.class Binary file build/samer/core/util/VLayout.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/VMap$Adjuster.class Binary file build/samer/core/util/VMap$Adjuster.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/VMap.class Binary file build/samer/core/util/VMap.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/VariableViewer.class Binary file build/samer/core/util/VariableViewer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/heavy/Border$1.class Binary file build/samer/core/util/heavy/Border$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/heavy/Border$Base.class Binary file build/samer/core/util/heavy/Border$Base.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/heavy/Border$BevelInfo.class Binary file build/samer/core/util/heavy/Border$BevelInfo.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/heavy/Border$Empty.class Binary file build/samer/core/util/heavy/Border$Empty.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/heavy/Border$In.class Binary file build/samer/core/util/heavy/Border$In.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/heavy/Border$Interface.class Binary file build/samer/core/util/heavy/Border$Interface.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/heavy/Border$Null.class Binary file build/samer/core/util/heavy/Border$Null.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/heavy/Border$Out.class Binary file build/samer/core/util/heavy/Border$Out.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/heavy/Border.class Binary file build/samer/core/util/heavy/Border.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/heavy/Borders$AbstractBorder.class Binary file build/samer/core/util/heavy/Borders$AbstractBorder.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/heavy/Borders$CompoundBorder.class Binary file build/samer/core/util/heavy/Borders$CompoundBorder.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/heavy/Borders$EllipticalBorder.class Binary file build/samer/core/util/heavy/Borders$EllipticalBorder.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/heavy/Borders$EmptyBorder.class Binary file build/samer/core/util/heavy/Borders$EmptyBorder.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/heavy/Borders$LoweredBevelBorder.class Binary file build/samer/core/util/heavy/Borders$LoweredBevelBorder.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/heavy/Borders$ParentBgBorder.class Binary file build/samer/core/util/heavy/Borders$ParentBgBorder.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/heavy/Borders$RaisedBevelBorder.class Binary file build/samer/core/util/heavy/Borders$RaisedBevelBorder.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/heavy/Borders$RoundedBorder.class Binary file build/samer/core/util/heavy/Borders$RoundedBorder.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/heavy/Borders$SimpleBorder.class Binary file build/samer/core/util/heavy/Borders$SimpleBorder.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/heavy/Borders.class Binary file build/samer/core/util/heavy/Borders.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/heavy/ButtonBar.class Binary file build/samer/core/util/heavy/ButtonBar.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/heavy/CommandField$Handler.class Binary file build/samer/core/util/heavy/CommandField$Handler.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/heavy/CommandField.class Binary file build/samer/core/util/heavy/CommandField.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/heavy/Console$OutputStream.class Binary file build/samer/core/util/heavy/Console$OutputStream.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/heavy/Console$Writer.class Binary file build/samer/core/util/heavy/Console$Writer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/heavy/Console.class Binary file build/samer/core/util/heavy/Console.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/heavy/Dialog$1.class Binary file build/samer/core/util/heavy/Dialog$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/heavy/Dialog.class Binary file build/samer/core/util/heavy/Dialog.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/heavy/Frame.class Binary file build/samer/core/util/heavy/Frame.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/heavy/JPanel.class Binary file build/samer/core/util/heavy/JPanel.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/heavy/MenuBuilder.class Binary file build/samer/core/util/heavy/MenuBuilder.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/heavy/Meter$1.class Binary file build/samer/core/util/heavy/Meter$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/heavy/Meter.class Binary file build/samer/core/util/heavy/Meter.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/heavy/PopupHandler.class Binary file build/samer/core/util/heavy/PopupHandler.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/heavy/TextualNumberViewer.class Binary file build/samer/core/util/heavy/TextualNumberViewer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/heavy/VCanvas$1.class Binary file build/samer/core/util/heavy/VCanvas$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/heavy/VCanvas.class Binary file build/samer/core/util/heavy/VCanvas.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/heavy/VPanel.class Binary file build/samer/core/util/heavy/VPanel.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/shell/AgentManager$1.class Binary file build/samer/core/util/shell/AgentManager$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/shell/AgentManager.class Binary file build/samer/core/util/shell/AgentManager.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/shell/AppShellBase.class Binary file build/samer/core/util/shell/AppShellBase.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/shell/ViewableManager$1.class Binary file build/samer/core/util/shell/ViewableManager$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/shell/ViewableManager$2.class Binary file build/samer/core/util/shell/ViewableManager$2.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/shell/ViewableManager$3.class Binary file build/samer/core/util/shell/ViewableManager$3.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/shell/ViewableManager$VblEntry.class Binary file build/samer/core/util/shell/ViewableManager$VblEntry.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/shell/ViewableManager$ViewerContainer.class Binary file build/samer/core/util/shell/ViewableManager$ViewerContainer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/shell/ViewableManager$VwrEntry.class Binary file build/samer/core/util/shell/ViewableManager$VwrEntry.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/shell/ViewableManager.class Binary file build/samer/core/util/shell/ViewableManager.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/swing/ButtonBar.class Binary file build/samer/core/util/swing/ButtonBar.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/swing/CommandField$Handler.class Binary file build/samer/core/util/swing/CommandField$Handler.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/swing/CommandField.class Binary file build/samer/core/util/swing/CommandField.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/swing/Console$OutputStream.class Binary file build/samer/core/util/swing/Console$OutputStream.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/swing/Console$Writer.class Binary file build/samer/core/util/swing/Console$Writer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/swing/Console.class Binary file build/samer/core/util/swing/Console.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/swing/DarkMetalTheme.class Binary file build/samer/core/util/swing/DarkMetalTheme.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/swing/Dialog.class Binary file build/samer/core/util/swing/Dialog.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/swing/DynamicPopupHandler.class Binary file build/samer/core/util/swing/DynamicPopupHandler.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/swing/Frame.class Binary file build/samer/core/util/swing/Frame.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/swing/InternalFrame$1.class Binary file build/samer/core/util/swing/InternalFrame$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/swing/InternalFrame.class Binary file build/samer/core/util/swing/InternalFrame.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/swing/LED.class Binary file build/samer/core/util/swing/LED.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/swing/MenuBuilder.class Binary file build/samer/core/util/swing/MenuBuilder.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/swing/Meter$1.class Binary file build/samer/core/util/swing/Meter$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/swing/Meter.class Binary file build/samer/core/util/swing/Meter.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/swing/PopupHandler.class Binary file build/samer/core/util/swing/PopupHandler.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/swing/SilkyMetalTheme.class Binary file build/samer/core/util/swing/SilkyMetalTheme.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/swing/TextualNumberViewer.class Binary file build/samer/core/util/swing/TextualNumberViewer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/swing/VCanvas$1.class Binary file build/samer/core/util/swing/VCanvas$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/swing/VCanvas.class Binary file build/samer/core/util/swing/VCanvas.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/swing/VContainerBase.class Binary file build/samer/core/util/swing/VContainerBase.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/util/swing/VPanel.class Binary file build/samer/core/util/swing/VPanel.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/viewers/BooleanViewer.class Binary file build/samer/core/viewers/BooleanViewer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/viewers/ColorButton.class Binary file build/samer/core/viewers/ColorButton.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/viewers/ColorSwatch.class Binary file build/samer/core/viewers/ColorSwatch.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/viewers/ColorViewer.class Binary file build/samer/core/viewers/ColorViewer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/viewers/DoubleViewer.class Binary file build/samer/core/viewers/DoubleViewer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/viewers/FileViewer.class Binary file build/samer/core/viewers/FileViewer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/viewers/IntegerViewer.class Binary file build/samer/core/viewers/IntegerViewer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/viewers/NumberViewer.class Binary file build/samer/core/viewers/NumberViewer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/viewers/ParameterViewer.class Binary file build/samer/core/viewers/ParameterViewer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/viewers/StringViewer.class Binary file build/samer/core/viewers/StringViewer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/viewers/swing/BooleanViewer.class Binary file build/samer/core/viewers/swing/BooleanViewer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/viewers/swing/ColorButton.class Binary file build/samer/core/viewers/swing/ColorButton.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/viewers/swing/ColorChooserViewer$ColorModelAdapter.class Binary file build/samer/core/viewers/swing/ColorChooserViewer$ColorModelAdapter.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/viewers/swing/ColorChooserViewer.class Binary file build/samer/core/viewers/swing/ColorChooserViewer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/viewers/swing/ColorSwatch.class Binary file build/samer/core/viewers/swing/ColorSwatch.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/viewers/swing/ColorViewer.class Binary file build/samer/core/viewers/swing/ColorViewer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/viewers/swing/DoubleViewer$1.class Binary file build/samer/core/viewers/swing/DoubleViewer$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/viewers/swing/DoubleViewer.class Binary file build/samer/core/viewers/swing/DoubleViewer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/viewers/swing/FileChooserViewer.class Binary file build/samer/core/viewers/swing/FileChooserViewer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/viewers/swing/FileViewer.class Binary file build/samer/core/viewers/swing/FileViewer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/viewers/swing/IntegerViewer.class Binary file build/samer/core/viewers/swing/IntegerViewer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/viewers/swing/NumberViewer.class Binary file build/samer/core/viewers/swing/NumberViewer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/viewers/swing/ParameterViewer.class Binary file build/samer/core/viewers/swing/ParameterViewer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/viewers/swing/StringViewer.class Binary file build/samer/core/viewers/swing/StringViewer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/core/viewers/swing/Swatch.class Binary file build/samer/core/viewers/swing/Swatch.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/Abs.class Binary file build/samer/functions/Abs.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/Add.class Binary file build/samer/functions/Add.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/Atanh.class Binary file build/samer/functions/Atanh.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/BiLaplacian$1.class Binary file build/samer/functions/BiLaplacian$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/BiLaplacian.class Binary file build/samer/functions/BiLaplacian.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/BiLaplacianBlend$1.class Binary file build/samer/functions/BiLaplacianBlend$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/BiLaplacianBlend.class Binary file build/samer/functions/BiLaplacianBlend.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/CauchyInfomax.class Binary file build/samer/functions/CauchyInfomax.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/CompoundFunction$1.class Binary file build/samer/functions/CompoundFunction$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/CompoundFunction$2.class Binary file build/samer/functions/CompoundFunction$2.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/CompoundFunction.class Binary file build/samer/functions/CompoundFunction.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/Exp.class Binary file build/samer/functions/Exp.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/ExponentialSquashing.class Binary file build/samer/functions/ExponentialSquashing.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/Gamma.class Binary file build/samer/functions/Gamma.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/HalfSquare.class Binary file build/samer/functions/HalfSquare.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/Hamming.class Binary file build/samer/functions/Hamming.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/Hanning.class Binary file build/samer/functions/Hanning.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/HybridFunction.class Binary file build/samer/functions/HybridFunction.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/Log.class Binary file build/samer/functions/Log.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/LogAbs.class Binary file build/samer/functions/LogAbs.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/LogCauchy.class Binary file build/samer/functions/LogCauchy.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/LogCosh$1.class Binary file build/samer/functions/LogCosh$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/LogCosh.class Binary file build/samer/functions/LogCosh.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/LogGenCosh$1.class Binary file build/samer/functions/LogGenCosh$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/LogGenCosh.class Binary file build/samer/functions/LogGenCosh.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/LogGenExp$1.class Binary file build/samer/functions/LogGenExp$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/LogGenExp$2.class Binary file build/samer/functions/LogGenExp$2.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/LogGenExp.class Binary file build/samer/functions/LogGenExp.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/LogGenExp2$1.class Binary file build/samer/functions/LogGenExp2$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/LogGenExp2$2.class Binary file build/samer/functions/LogGenExp2$2.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/LogGenExp2$3.class Binary file build/samer/functions/LogGenExp2$3.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/LogGenExp2.class Binary file build/samer/functions/LogGenExp2.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/LogisiticInfomax.class Binary file build/samer/functions/LogisiticInfomax.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/LogisticHyperplane.class Binary file build/samer/functions/LogisticHyperplane.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/Negate.class Binary file build/samer/functions/Negate.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/Power.class Binary file build/samer/functions/Power.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/Quadratic.class Binary file build/samer/functions/Quadratic.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/RaleighLogPrior$1.class Binary file build/samer/functions/RaleighLogPrior$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/RaleighLogPrior.class Binary file build/samer/functions/RaleighLogPrior.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/Reciprocal.class Binary file build/samer/functions/Reciprocal.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/Scale.class Binary file build/samer/functions/Scale.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/ScaledFunction.class Binary file build/samer/functions/ScaledFunction.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/Sgn.class Binary file build/samer/functions/Sgn.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/SparseExponential$1.class Binary file build/samer/functions/SparseExponential$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/SparseExponential.class Binary file build/samer/functions/SparseExponential.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/Sqrt.class Binary file build/samer/functions/Sqrt.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/Square.class Binary file build/samer/functions/Square.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/Step.class Binary file build/samer/functions/Step.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/Tanh$1.class Binary file build/samer/functions/Tanh$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/Tanh.class Binary file build/samer/functions/Tanh.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/ThresholdLog.class Binary file build/samer/functions/ThresholdLog.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/functions/WinnerTakeAll.class Binary file build/samer/functions/WinnerTakeAll.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/j3d/Axes.class Binary file build/samer/j3d/Axes.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/j3d/FPS.class Binary file build/samer/j3d/FPS.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/j3d/ImmediateRenderer.class Binary file build/samer/j3d/ImmediateRenderer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/j3d/MatrixPointArray$1.class Binary file build/samer/j3d/MatrixPointArray$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/j3d/MatrixPointArray.class Binary file build/samer/j3d/MatrixPointArray.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/j3d/MatrixPointArrayAlpha$1.class Binary file build/samer/j3d/MatrixPointArrayAlpha$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/j3d/MatrixPointArrayAlpha.class Binary file build/samer/j3d/MatrixPointArrayAlpha.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/j3d/MatrixPointArrayRef$1.class Binary file build/samer/j3d/MatrixPointArrayRef$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/j3d/MatrixPointArrayRef.class Binary file build/samer/j3d/MatrixPointArrayRef.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/j3d/MatrixPoints4D$1.class Binary file build/samer/j3d/MatrixPoints4D$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/j3d/MatrixPoints4D.class Binary file build/samer/j3d/MatrixPoints4D.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/j3d/MonoView.class Binary file build/samer/j3d/MonoView.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/j3d/MorphPoints$MorphBehavior.class Binary file build/samer/j3d/MorphPoints$MorphBehavior.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/j3d/MorphPoints.class Binary file build/samer/j3d/MorphPoints.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/j3d/PatchArray$1.class Binary file build/samer/j3d/PatchArray$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/j3d/PatchArray.class Binary file build/samer/j3d/PatchArray.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/j3d/PatchArrayAlpha$1.class Binary file build/samer/j3d/PatchArrayAlpha$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/j3d/PatchArrayAlpha.class Binary file build/samer/j3d/PatchArrayAlpha.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/j3d/Patches$1.class Binary file build/samer/j3d/Patches$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/j3d/Patches.class Binary file build/samer/j3d/Patches.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/j3d/PatchesAlpha$1.class Binary file build/samer/j3d/PatchesAlpha$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/j3d/PatchesAlpha.class Binary file build/samer/j3d/PatchesAlpha.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/j3d/Points3D$1.class Binary file build/samer/j3d/Points3D$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/j3d/Points3D.class Binary file build/samer/j3d/Points3D.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/j3d/Points3DAlpha$1.class Binary file build/samer/j3d/Points3DAlpha$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/j3d/Points3DAlpha.class Binary file build/samer/j3d/Points3DAlpha.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/j3d/Points3DRef$1.class Binary file build/samer/j3d/Points3DRef$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/j3d/Points3DRef.class Binary file build/samer/j3d/Points3DRef.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/j3d/Points4D$1.class Binary file build/samer/j3d/Points4D$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/j3d/Points4D.class Binary file build/samer/j3d/Points4D.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/j3d/Root.class Binary file build/samer/j3d/Root.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/j3d/StereoView.class Binary file build/samer/j3d/StereoView.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/j3d/Util.class Binary file build/samer/j3d/Util.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/j3d/ViewBase.class Binary file build/samer/j3d/ViewBase.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/j3d/ViewGroup.class Binary file build/samer/j3d/ViewGroup.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/ClippedDivide.class Binary file build/samer/maths/ClippedDivide.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/ComplexVector.class Binary file build/samer/maths/ComplexVector.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/Constant.class Binary file build/samer/maths/Constant.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/Difference.class Binary file build/samer/maths/Difference.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/Function.class Binary file build/samer/maths/Function.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/FunctionMap.class Binary file build/samer/maths/FunctionMap.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/FunctionOfGenerator.class Binary file build/samer/maths/FunctionOfGenerator.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/FunctionOfVector.class Binary file build/samer/maths/FunctionOfVector.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/FunctionPlotter$1.class Binary file build/samer/maths/FunctionPlotter$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/FunctionPlotter$FunctionIterator.class Binary file build/samer/maths/FunctionPlotter$FunctionIterator.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/FunctionPlotter.class Binary file build/samer/maths/FunctionPlotter.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/Generator.class Binary file build/samer/maths/Generator.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/Identity.class Binary file build/samer/maths/Identity.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/IntArrayEditor.class Binary file build/samer/maths/IntArrayEditor.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/IteratorImageSource.class Binary file build/samer/maths/IteratorImageSource.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/LineTrace.class Binary file build/samer/maths/LineTrace.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/Linear.class Binary file build/samer/maths/Linear.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/Mat.class Binary file build/samer/maths/Mat.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/MatEditor.class Binary file build/samer/maths/MatEditor.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/Mathx.class Binary file build/samer/maths/Mathx.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/Matrix$1$1.class Binary file build/samer/maths/Matrix$1$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/Matrix$1$2.class Binary file build/samer/maths/Matrix$1$2.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/Matrix$1.class Binary file build/samer/maths/Matrix$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/Matrix$Column$1.class Binary file build/samer/maths/Matrix$Column$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/Matrix$Column.class Binary file build/samer/maths/Matrix$Column.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/Matrix$Row$1.class Binary file build/samer/maths/Matrix$Row$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/Matrix$Row.class Binary file build/samer/maths/Matrix$Row.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/Matrix$Slice.class Binary file build/samer/maths/Matrix$Slice.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/Matrix$Vbl.class Binary file build/samer/maths/Matrix$Vbl.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/Matrix.class Binary file build/samer/maths/Matrix.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/MatrixAgent.class Binary file build/samer/maths/MatrixAgent.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/MatrixImage.class Binary file build/samer/maths/MatrixImage.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/MatrixImageSource.class Binary file build/samer/maths/MatrixImageSource.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/MatrixImageSourceF.class Binary file build/samer/maths/MatrixImageSourceF.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/MatrixPanel$Field.class Binary file build/samer/maths/MatrixPanel$Field.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/MatrixPanel.class Binary file build/samer/maths/MatrixPanel.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/MatrixPlotter$1.class Binary file build/samer/maths/MatrixPlotter$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/MatrixPlotter.class Binary file build/samer/maths/MatrixPlotter.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/MatrixTImageSource.class Binary file build/samer/maths/MatrixTImageSource.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/MatrixTImageSourceF.class Binary file build/samer/maths/MatrixTImageSourceF.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/MatrixTimesVector.class Binary file build/samer/maths/MatrixTimesVector.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/MatrixTransposeTimesVector.class Binary file build/samer/maths/MatrixTransposeTimesVector.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/Neg.class Binary file build/samer/maths/Neg.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/Ops$1.class Binary file build/samer/maths/Ops$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/Ops$2.class Binary file build/samer/maths/Ops$2.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/Ops$3.class Binary file build/samer/maths/Ops$3.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/Ops$4.class Binary file build/samer/maths/Ops$4.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/Ops$5.class Binary file build/samer/maths/Ops$5.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/Ops$6.class Binary file build/samer/maths/Ops$6.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/Ops$7.class Binary file build/samer/maths/Ops$7.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/Ops$8.class Binary file build/samer/maths/Ops$8.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/Ops$9.class Binary file build/samer/maths/Ops$9.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/Ops$ArrayCopy.class Binary file build/samer/maths/Ops$ArrayCopy.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/Ops$IteratorCopy.class Binary file build/samer/maths/Ops$IteratorCopy.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/Ops.class Binary file build/samer/maths/Ops.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/Parameter.class Binary file build/samer/maths/Parameter.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/Probe.class Binary file build/samer/maths/Probe.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/Product.class Binary file build/samer/maths/Product.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/RowColumn.class Binary file build/samer/maths/RowColumn.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/SparseMatrix.class Binary file build/samer/maths/SparseMatrix.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/Sum.class Binary file build/samer/maths/Sum.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/VFunction$1.class Binary file build/samer/maths/VFunction$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/VFunction$2.class Binary file build/samer/maths/VFunction$2.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/VFunction.class Binary file build/samer/maths/VFunction.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/VGenerator$UI.class Binary file build/samer/maths/VGenerator$UI.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/VGenerator.class Binary file build/samer/maths/VGenerator.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/VVector$1.class Binary file build/samer/maths/VVector$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/VVector$2.class Binary file build/samer/maths/VVector$2.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/VVector.class Binary file build/samer/maths/VVector.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/Vec$ForArray$InputIterator.class Binary file build/samer/maths/Vec$ForArray$InputIterator.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/Vec$ForArray$Iterator.class Binary file build/samer/maths/Vec$ForArray$Iterator.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/Vec$ForArray.class Binary file build/samer/maths/Vec$ForArray.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/Vec$InputIterator.class Binary file build/samer/maths/Vec$InputIterator.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/Vec$Iterator.class Binary file build/samer/maths/Vec$Iterator.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/Vec.class Binary file build/samer/maths/Vec.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/VectorEditor.class Binary file build/samer/maths/VectorEditor.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/VectorFunctionOfVector.class Binary file build/samer/maths/VectorFunctionOfVector.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/VectorPlotter.class Binary file build/samer/maths/VectorPlotter.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/VectorPlusEqualsVector.class Binary file build/samer/maths/VectorPlusEqualsVector.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/VectorTimesEqualsScalar.class Binary file build/samer/maths/VectorTimesEqualsScalar.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/VectorTrace.class Binary file build/samer/maths/VectorTrace.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/VectorTraceObs.class Binary file build/samer/maths/VectorTraceObs.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/Zero.class Binary file build/samer/maths/Zero.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/opt/AbsXFConvergence.class Binary file build/samer/maths/opt/AbsXFConvergence.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/opt/Condition.class Binary file build/samer/maths/opt/Condition.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/opt/ConjGrad.class Binary file build/samer/maths/opt/ConjGrad.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/opt/ConstrainedConjGrad.class Binary file build/samer/maths/opt/ConstrainedConjGrad.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/opt/ConstrainedGillMurray.class Binary file build/samer/maths/opt/ConstrainedGillMurray.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/opt/ConstrainedMinimiser.class Binary file build/samer/maths/opt/ConstrainedMinimiser.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/opt/Constraints$Factory.class Binary file build/samer/maths/opt/Constraints$Factory.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/opt/Constraints.class Binary file build/samer/maths/opt/Constraints.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/opt/CubicLineSearch.class Binary file build/samer/maths/opt/CubicLineSearch.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/opt/Datum.class Binary file build/samer/maths/opt/Datum.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/opt/Functionx.class Binary file build/samer/maths/opt/Functionx.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/opt/GConvergence.class Binary file build/samer/maths/opt/GConvergence.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/opt/GillMurray.class Binary file build/samer/maths/opt/GillMurray.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/opt/MinimiserBase$1.class Binary file build/samer/maths/opt/MinimiserBase$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/opt/MinimiserBase$2.class Binary file build/samer/maths/opt/MinimiserBase$2.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/opt/MinimiserBase$3.class Binary file build/samer/maths/opt/MinimiserBase$3.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/opt/MinimiserBase$4.class Binary file build/samer/maths/opt/MinimiserBase$4.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/opt/MinimiserBase$5.class Binary file build/samer/maths/opt/MinimiserBase$5.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/opt/MinimiserBase$LSCondition$1.class Binary file build/samer/maths/opt/MinimiserBase$LSCondition$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/opt/MinimiserBase$LSCondition.class Binary file build/samer/maths/opt/MinimiserBase$LSCondition.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/opt/MinimiserBase.class Binary file build/samer/maths/opt/MinimiserBase.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/opt/PolynomialLineSearch.class Binary file build/samer/maths/opt/PolynomialLineSearch.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/opt/Positivity$1.class Binary file build/samer/maths/opt/Positivity$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/opt/Positivity$2.class Binary file build/samer/maths/opt/Positivity$2.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/opt/Positivity.class Binary file build/samer/maths/opt/Positivity.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/opt/State.class Binary file build/samer/maths/opt/State.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/opt/SubspaceFunctionx.class Binary file build/samer/maths/opt/SubspaceFunctionx.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/opt/UnconstrainedConjGrad$1.class Binary file build/samer/maths/opt/UnconstrainedConjGrad$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/opt/UnconstrainedConjGrad.class Binary file build/samer/maths/opt/UnconstrainedConjGrad.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/opt/UnconstrainedMinimiser.class Binary file build/samer/maths/opt/UnconstrainedMinimiser.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/opt/Util.class Binary file build/samer/maths/opt/Util.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/opt/XFConvergence.class Binary file build/samer/maths/opt/XFConvergence.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/opt/ZeroCrossingSparsity$1.class Binary file build/samer/maths/opt/ZeroCrossingSparsity$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/opt/ZeroCrossingSparsity$2.class Binary file build/samer/maths/opt/ZeroCrossingSparsity$2.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/opt/ZeroCrossingSparsity$3.class Binary file build/samer/maths/opt/ZeroCrossingSparsity$3.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/opt/ZeroCrossingSparsity$4.class Binary file build/samer/maths/opt/ZeroCrossingSparsity$4.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/opt/ZeroCrossingSparsity.class Binary file build/samer/maths/opt/ZeroCrossingSparsity.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/random/BaseRandom.class Binary file build/samer/maths/random/BaseRandom.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/random/Binary.class Binary file build/samer/maths/random/Binary.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/random/BinaryVec.class Binary file build/samer/maths/random/BinaryVec.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/random/BipolarUniform.class Binary file build/samer/maths/random/BipolarUniform.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/random/BoundedHyperbolic.class Binary file build/samer/maths/random/BoundedHyperbolic.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/random/BoundedUniform.class Binary file build/samer/maths/random/BoundedUniform.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/random/Brownian.class Binary file build/samer/maths/random/Brownian.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/random/Cauchy.class Binary file build/samer/maths/random/Cauchy.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/random/Exponential.class Binary file build/samer/maths/random/Exponential.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/random/Gaussian.class Binary file build/samer/maths/random/Gaussian.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/random/GeneralisedExponential.class Binary file build/samer/maths/random/GeneralisedExponential.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/random/GeneralisedLaplacian.class Binary file build/samer/maths/random/GeneralisedLaplacian.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/random/Laplacian.class Binary file build/samer/maths/random/Laplacian.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/random/Logistic.class Binary file build/samer/maths/random/Logistic.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/random/Mixture.class Binary file build/samer/maths/random/Mixture.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/random/MixtureVec.class Binary file build/samer/maths/random/MixtureVec.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/random/NormalisedGaussian.class Binary file build/samer/maths/random/NormalisedGaussian.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/random/PosteriorSampler.class Binary file build/samer/maths/random/PosteriorSampler.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/random/PowerLaw.class Binary file build/samer/maths/random/PowerLaw.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/random/Raleigh.class Binary file build/samer/maths/random/Raleigh.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/random/RectifiedCauchy.class Binary file build/samer/maths/random/RectifiedCauchy.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/random/RectifiedGaussian.class Binary file build/samer/maths/random/RectifiedGaussian.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/random/RectifiedLogistic.class Binary file build/samer/maths/random/RectifiedLogistic.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/random/SparseMixture.class Binary file build/samer/maths/random/SparseMixture.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/random/Ternary.class Binary file build/samer/maths/random/Ternary.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/maths/random/Uniform.class Binary file build/samer/maths/random/Uniform.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/mds/CorrelationTask.class Binary file build/samer/mds/CorrelationTask.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/mds/CovarianceTask.class Binary file build/samer/mds/CovarianceTask.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/mds/DistanceTask.class Binary file build/samer/mds/DistanceTask.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/mds/Euclidean.class Binary file build/samer/mds/Euclidean.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/mds/GeometricFilter.class Binary file build/samer/mds/GeometricFilter.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/mds/MDS$Metric.class Binary file build/samer/mds/MDS$Metric.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/mds/MDS$SamerStress.class Binary file build/samer/mds/MDS$SamerStress.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/mds/MDS$Stress.class Binary file build/samer/mds/MDS$Stress.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/mds/MDS.class Binary file build/samer/mds/MDS.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/mds/MDSBase.class Binary file build/samer/mds/MDSBase.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/mds/Manhatten.class Binary file build/samer/mds/Manhatten.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/mds/MatrixPointViewer2.class Binary file build/samer/mds/MatrixPointViewer2.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/mds/Minkowski.class Binary file build/samer/mds/Minkowski.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/mds/NewMDS$Laplacian.class Binary file build/samer/mds/NewMDS$Laplacian.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/mds/NewMDS$Stress.class Binary file build/samer/mds/NewMDS$Stress.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/mds/NewMDS.class Binary file build/samer/mds/NewMDS.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/mds/ProximityFilter.class Binary file build/samer/mds/ProximityFilter.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/midi/MidiRecorder.class Binary file build/samer/midi/MidiRecorder.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/midi/MidiRecorderBase.class Binary file build/samer/midi/MidiRecorderBase.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/midi/MidiSynth$1.class Binary file build/samer/midi/MidiSynth$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/midi/MidiSynth$Editor.class Binary file build/samer/midi/MidiSynth$Editor.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/midi/MidiSynth.class Binary file build/samer/midi/MidiSynth.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/midi/MidiWithAftertouch.class Binary file build/samer/midi/MidiWithAftertouch.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/AlignedGaussian$1.class Binary file build/samer/models/AlignedGaussian$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/AlignedGaussian.class Binary file build/samer/models/AlignedGaussian.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/BatchedTrainer.class Binary file build/samer/models/BatchedTrainer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/Covariance.class Binary file build/samer/models/Covariance.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/DiffScaler$1.class Binary file build/samer/models/DiffScaler$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/DiffScaler$OffsetTrainer.class Binary file build/samer/models/DiffScaler$OffsetTrainer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/DiffScaler$ScaleTrainer.class Binary file build/samer/models/DiffScaler$ScaleTrainer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/DiffScaler$TensionedTrainer.class Binary file build/samer/models/DiffScaler$TensionedTrainer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/DiffScaler$Trainer.class Binary file build/samer/models/DiffScaler$Trainer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/DiffScaler.class Binary file build/samer/models/DiffScaler.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/Edge.class Binary file build/samer/models/Edge.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/GaussianStats.class Binary file build/samer/models/GaussianStats.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/GaussianStatsOnline.class Binary file build/samer/models/GaussianStatsOnline.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/GeneralisedExponential$1.class Binary file build/samer/models/GeneralisedExponential$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/GeneralisedExponential$Trainer.class Binary file build/samer/models/GeneralisedExponential$Trainer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/GeneralisedExponential.class Binary file build/samer/models/GeneralisedExponential.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/ICA$1.class Binary file build/samer/models/ICA$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/ICA$NewtonTrainer.class Binary file build/samer/models/ICA$NewtonTrainer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/ICA$ON2DecayWhenActive.class Binary file build/samer/models/ICA$ON2DecayWhenActive.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/ICA$ON2Trainer.class Binary file build/samer/models/ICA$ON2Trainer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/ICA$ON3Trainer.class Binary file build/samer/models/ICA$ON3Trainer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/ICA.class Binary file build/samer/models/ICA.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/ICAScalerSync.class Binary file build/samer/models/ICAScalerSync.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/ICAWithScaler$DifferentialTrainer.class Binary file build/samer/models/ICAWithScaler$DifferentialTrainer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/ICAWithScaler$ScalerTrainer.class Binary file build/samer/models/ICAWithScaler$ScalerTrainer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/ICAWithScaler.class Binary file build/samer/models/ICAWithScaler.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/IIDPrior$1.class Binary file build/samer/models/IIDPrior$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/IIDPrior.class Binary file build/samer/models/IIDPrior.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/JointHistogramBase.class Binary file build/samer/models/JointHistogramBase.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/MOGModel$1.class Binary file build/samer/models/MOGModel$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/MOGModel$2.class Binary file build/samer/models/MOGModel$2.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/MOGModel.class Binary file build/samer/models/MOGModel.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/MOGVector$1.class Binary file build/samer/models/MOGVector$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/MOGVector$2.class Binary file build/samer/models/MOGVector$2.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/MOGVector$PDF.class Binary file build/samer/models/MOGVector$PDF.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/MOGVector.class Binary file build/samer/models/MOGVector.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/MatrixTrainer.class Binary file build/samer/models/MatrixTrainer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/Mixture$Trainer.class Binary file build/samer/models/Mixture$Trainer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/Mixture.class Binary file build/samer/models/Mixture.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/Model$Trainer.class Binary file build/samer/models/Model$Trainer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/Model.class Binary file build/samer/models/Model.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/NoisyICA$1.class Binary file build/samer/models/NoisyICA$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/NoisyICA$2.class Binary file build/samer/models/NoisyICA$2.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/NoisyICA$3.class Binary file build/samer/models/NoisyICA$3.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/NoisyICA.class Binary file build/samer/models/NoisyICA.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/Scaler$1.class Binary file build/samer/models/Scaler$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/Scaler$OffsetTrainer.class Binary file build/samer/models/Scaler$OffsetTrainer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/Scaler$ScaleTrainer.class Binary file build/samer/models/Scaler$ScaleTrainer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/Scaler$Trainer.class Binary file build/samer/models/Scaler$Trainer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/Scaler.class Binary file build/samer/models/Scaler.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/SignalHistogram.class Binary file build/samer/models/SignalHistogram.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/SmoothGeneralisedExponential$1.class Binary file build/samer/models/SmoothGeneralisedExponential$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/SmoothGeneralisedExponential.class Binary file build/samer/models/SmoothGeneralisedExponential.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/SparseICA$ON2Trainer.class Binary file build/samer/models/SparseICA$ON2Trainer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/SparseICA$ON3Trainer.class Binary file build/samer/models/SparseICA$ON3Trainer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/SparseICA.class Binary file build/samer/models/SparseICA.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/VarianceICA$1.class Binary file build/samer/models/VarianceICA$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/VarianceICA$2.class Binary file build/samer/models/VarianceICA$2.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/VarianceICA$3.class Binary file build/samer/models/VarianceICA$3.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/models/VarianceICA.class Binary file build/samer/models/VarianceICA.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/silk/JavaProcedure.class Binary file build/samer/silk/JavaProcedure.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/silk/SchemeList$Iterator.class Binary file build/samer/silk/SchemeList$Iterator.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/silk/SchemeList.class Binary file build/samer/silk/SchemeList.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/silk/SilkCompleter.class Binary file build/samer/silk/SilkCompleter.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/silk/SilkFunction.class Binary file build/samer/silk/SilkFunction.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/silk/SilkObserver.class Binary file build/samer/silk/SilkObserver.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/silk/SilkTask.class Binary file build/samer/silk/SilkTask.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/silk/Terminal$Transfer.class Binary file build/samer/silk/Terminal$Transfer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/silk/Terminal.class Binary file build/samer/silk/Terminal.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/tools/AnonymousTask.class Binary file build/samer/tools/AnonymousTask.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/tools/ArrayImageSource.class Binary file build/samer/tools/ArrayImageSource.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/tools/ArrayVImageSource.class Binary file build/samer/tools/ArrayVImageSource.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/tools/ColorRamp.class Binary file build/samer/tools/ColorRamp.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/tools/CompoundTask$Iterator.class Binary file build/samer/tools/CompoundTask$Iterator.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/tools/CompoundTask$TaskLink.class Binary file build/samer/tools/CompoundTask$TaskLink.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/tools/CompoundTask.class Binary file build/samer/tools/CompoundTask.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/tools/ImageSourceBase.class Binary file build/samer/tools/ImageSourceBase.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/tools/ImageTrace.class Binary file build/samer/tools/ImageTrace.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/tools/ImageTraceBase.class Binary file build/samer/tools/ImageTraceBase.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/tools/ImageVTrace.class Binary file build/samer/tools/ImageVTrace.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/tools/ImageViewer$1.class Binary file build/samer/tools/ImageViewer$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/tools/ImageViewer.class Binary file build/samer/tools/ImageViewer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/tools/NamedTask.class Binary file build/samer/tools/NamedTask.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/tools/NullTask.class Binary file build/samer/tools/NullTask.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/tools/Plotter$Pen.class Binary file build/samer/tools/Plotter$Pen.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/tools/Plotter.class Binary file build/samer/tools/Plotter.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/tools/RThread$Kill.class Binary file build/samer/tools/RThread$Kill.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/tools/RThread$UI.class Binary file build/samer/tools/RThread$UI.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/tools/RThread.class Binary file build/samer/tools/RThread.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/tools/RateSchedule.class Binary file build/samer/tools/RateSchedule.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/tools/Renderer$Fill.class Binary file build/samer/tools/Renderer$Fill.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/tools/Renderer$Fill3D.class Binary file build/samer/tools/Renderer$Fill3D.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/tools/Renderer$Line.class Binary file build/samer/tools/Renderer$Line.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/tools/Renderer$Steps.class Binary file build/samer/tools/Renderer$Steps.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/tools/Renderer.class Binary file build/samer/tools/Renderer.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/tools/SafeTask.class Binary file build/samer/tools/SafeTask.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/tools/ScatterPlot.class Binary file build/samer/tools/ScatterPlot.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/tools/SignalTrace.class Binary file build/samer/tools/SignalTrace.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/tools/SubrateTask.class Binary file build/samer/tools/SubrateTask.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/tools/SwitchTask.class Binary file build/samer/tools/SwitchTask.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/tools/Task.class Binary file build/samer/tools/Task.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/tools/Trace.class Binary file build/samer/tools/Trace.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/tools/vec2.class Binary file build/samer/tools/vec2.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/units/Clicker.class Binary file build/samer/units/Clicker.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/units/DoubleToStream.class Binary file build/samer/units/DoubleToStream.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/units/DoubleWriter.class Binary file build/samer/units/DoubleWriter.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/units/EnergyOperator.class Binary file build/samer/units/EnergyOperator.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/units/FFT.class Binary file build/samer/units/FFT.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/units/FFTVector$1.class Binary file build/samer/units/FFTVector$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/units/FFTVector$2.class Binary file build/samer/units/FFTVector$2.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/units/FFTVector$3.class Binary file build/samer/units/FFTVector$3.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/units/FFTVector$4.class Binary file build/samer/units/FFTVector$4.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/units/FFTVector.class Binary file build/samer/units/FFTVector.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/units/FIRFilter.class Binary file build/samer/units/FIRFilter.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/units/Filter.class Binary file build/samer/units/Filter.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/units/FilterVector.class Binary file build/samer/units/FilterVector.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/units/FilteredGenerator.class Binary file build/samer/units/FilteredGenerator.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/units/GenerateDouble.class Binary file build/samer/units/GenerateDouble.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/units/GenerateVector.class Binary file build/samer/units/GenerateVector.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/units/Histogram$Equaliser.class Binary file build/samer/units/Histogram$Equaliser.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/units/Histogram.class Binary file build/samer/units/Histogram.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/units/IIRFilter.class Binary file build/samer/units/IIRFilter.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/units/JointHistogram.class Binary file build/samer/units/JointHistogram.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/units/Latch.class Binary file build/samer/units/Latch.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/units/LineIn.class Binary file build/samer/units/LineIn.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/units/LineOut.class Binary file build/samer/units/LineOut.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/units/Matrices.class Binary file build/samer/units/Matrices.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/units/MousePosition.class Binary file build/samer/units/MousePosition.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/units/NoisyLinearSource.class Binary file build/samer/units/NoisyLinearSource.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/units/OnsetMap.class Binary file build/samer/units/OnsetMap.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/units/Oscillator$1.class Binary file build/samer/units/Oscillator$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/units/Oscillator.class Binary file build/samer/units/Oscillator.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/units/OverlapAndAdd.class Binary file build/samer/units/OverlapAndAdd.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/units/RescaledIFT.class Binary file build/samer/units/RescaledIFT.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/units/SignalWindow$1.class Binary file build/samer/units/SignalWindow$1.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/units/SignalWindow.class Binary file build/samer/units/SignalWindow.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/units/SpectralFIR.class Binary file build/samer/units/SpectralFIR.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/units/Stacker.class Binary file build/samer/units/Stacker.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/units/Stacker2.class Binary file build/samer/units/Stacker2.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/units/StreamToDouble.class Binary file build/samer/units/StreamToDouble.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/units/StreamToVec.class Binary file build/samer/units/StreamToVec.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/units/SumFnVec.class Binary file build/samer/units/SumFnVec.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/units/Trigger.class Binary file build/samer/units/Trigger.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/units/VecToDouble.class Binary file build/samer/units/VecToDouble.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/units/VecToStream$ArrayObjectWriter.class Binary file build/samer/units/VecToStream$ArrayObjectWriter.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/units/VecToStream$IteratorFloatWriter.class Binary file build/samer/units/VecToStream$IteratorFloatWriter.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/units/VecToStream.class Binary file build/samer/units/VecToStream.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/units/VecWriter.class Binary file build/samer/units/VecWriter.class has changed diff -r bf79fb79ee13 -r 5df24c91468d build/samer/units/Wavetable.class Binary file build/samer/units/Wavetable.class has changed diff -r bf79fb79ee13 -r 5df24c91468d examples/gui/awt/Light.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/examples/gui/awt/Light.java Fri Apr 05 16:26:00 2019 +0100 @@ -0,0 +1,42 @@ +// program to test lightweight components +package test.awt; + +import java.awt.*; +import java.awt.event.*; +import java.applet.*; + + +public class Light extends Applet +{ + public static void run(Container c) + { + c.setLayout(new FlowLayout()); + c.add( new Button("Hello!")); + c.add( new Lightweight(Color.green,"harpo")); + c.add( new Lightweight(Color.blue,"groucho")); + c.add( new Lightweight(Color.red,"zeppo")); + c.validate(); + } + + public static void main(String[] args) + { + Frame fr=new Frame("Lightweight test"); + fr.addWindowListener(new WindowAdapter() { + public void windowClosing(WindowEvent e) { + System.exit(0); + } + } ); + fr.setSize(400,100); + fr.show(); + run(fr); + } + + public void init() + { + setBackground( Color.black); + setForeground( Color.yellow); + getParent().setBackground( Color.red); + run(this); + } + +} \ No newline at end of file diff -r bf79fb79ee13 -r 5df24c91468d examples/gui/awt/LightS.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/examples/gui/awt/LightS.java Fri Apr 05 16:26:00 2019 +0100 @@ -0,0 +1,43 @@ +// program to test lightweight components (Swing version) +package test.awt; + +import java.awt.*; +import java.awt.event.*; +import javax.swing.*; + +// this is a lightweight component + + +public class LightS extends JApplet +{ + public static void run(Container c) + { + JButton b = new JButton("Hello!"); + + c.setLayout(new FlowLayout()); + c.add( b); + c.add( new Lightweight(Color.green,"harpo")); + c.add( new Lightweight(Color.blue,"groucho")); + c.add( new Lightweight(Color.red,"zeppo")); + c.validate(); + } + + public static void main(String[] args) + { + JFrame fr=new JFrame("Lightweight test"); + fr.addWindowListener(new WindowAdapter() { + public void windowClosing(WindowEvent e) { + System.exit(0); + } + } ); + fr.setSize(400,100); + fr.show(); + run(fr.getContentPane()); + } + + public void init() + { + getParent().setBackground( Color.red); + run(getContentPane()); + } +} \ No newline at end of file diff -r bf79fb79ee13 -r 5df24c91468d examples/gui/awt/Lightweight.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/examples/gui/awt/Lightweight.java Fri Apr 05 16:26:00 2019 +0100 @@ -0,0 +1,32 @@ +// program to test lightweight components +package test.awt; +import java.awt.*; + +// this is a lightweight component + +public class Lightweight extends Component +{ + Color col; + String text; + + Lightweight(Color color, String label) { + text=label; col=color; + setBackground(Color.getHSBColor(0.3F,0.4F,0.7F)); + } + + public void paint(Graphics g) + { + Dimension d=getSize(); + g.setColor(getBackground()); + g.fillRect(0,0,getWidth(),getHeight()); + g.setColor(getForeground()); + g.drawString(text,10,16); + } + + public boolean isOpaque() { return true; } + public Dimension getPreferredSize() + { + return new Dimension(80,20); + } +} + diff -r bf79fb79ee13 -r 5df24c91468d examples/gui/awt/light.html --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/examples/gui/awt/light.html Fri Apr 05 16:26:00 2019 +0100 @@ -0,0 +1,33 @@ + +Test Applet + + + + + +

+Lightweight Components +

a test applet

+

+This is blah blah +
+

+ + + + + + + + + + + +
+ diff -r bf79fb79ee13 -r 5df24c91468d examples/gui/awt/light2.html --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/examples/gui/awt/light2.html Fri Apr 05 16:26:00 2019 +0100 @@ -0,0 +1,33 @@ + +Test Applet + + + + + +

+Lightweight Components +

a test applet

+

+This is blah blah +
+

+ + + + + + + + + + + +
+ diff -r bf79fb79ee13 -r 5df24c91468d examples/gui/awt/tester.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/examples/gui/awt/tester.java Fri Apr 05 16:26:00 2019 +0100 @@ -0,0 +1,70 @@ +/* + * AppletBorders.java + * + * Copyright (c) 2000, Samer Abdallah, King's College London. + * All rights reserved. + * + * This software is provided AS iS and WITHOUT ANY WARRANTY; + * without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. + */ +package test; +import samer.core.*; +import samer.core.util.*; +import samer.core.util.heavy.*; +import samer.core.util.heavy.Borders.*; +import samer.core.util.Tools; +import java.awt.*; + +public class tester +{ + public static void main(String args[]) + { + new samer.core.shells.AppShell(); + + final Shell.Window win=Shell.getWindow("tester"); + + win.container().setBackground(Color.white); + // win.container().setForeground(Color.white); + + win.container().setLayout(new StackLayout(0)); + win.container().add(Shell.createLabel("hmmm...")); + win.container().add(createBlock(new Color(200,160,180), "the world")); + win.container().add(createBlock(new Color(200,180,160), "welcome to")); + win.container().add(createBlock(new Color(180,200,160), "i like")); + win.container().add(createBlock(new Color(160,200,180), "of borders")); + win.container().add(createBlock(new Color(160,180,200), "these colours")); + win.container().add(createBlock(new Color(180,160,200), "hello there!")); + win.expose(); + + Agent agent=new Agent() { + public void getCommands(Agent.Registry r) { r.add("repaint"); } + public void execute(String cmd, Environment env) { + if (cmd.equals("repaint")) { + win.container().repaint(); + } + } + }; + Shell.exposeCommands(agent); + Shell.registerAgent(agent); + } + + static Border.Interface border = new CompoundBorder( + new ParentBgBorder(12), + new RoundedBorder(3,26,3) { + protected Color getDefaultColor(Component c) { + return c.getBackground().darker(); // brighter(); + } + } + ); + + static Component createBlock(Color bg, String msg) + { + JPanel p1=new JPanel(border); + p1.setLayout(new FlowLayout()); + p1.setBackground(bg); + p1.setForeground(bg.darker().darker().darker()); + p1.add(Shell.createLabel(msg)); + return p1; + } +} \ No newline at end of file diff -r bf79fb79ee13 -r 5df24c91468d examples/gui/swing/BLDComponent.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/examples/gui/swing/BLDComponent.java Fri Apr 05 16:26:00 2019 +0100 @@ -0,0 +1,101 @@ +import java.awt.*; +import java.awt.event.*; +import javax.swing.*; + +/** A rectangle that has a fixed size. */ +class BLDComponent extends JComponent { + private Color normalHue; + private final Dimension preferredSize; + private String name; + private boolean restrictMaximumSize; + private boolean printSize; + + public BLDComponent(float alignmentX, float hue, + int shortSideSize, + boolean restrictSize, + boolean printSize, + String name) { + this.name = name; + this.restrictMaximumSize = restrictSize; + this.printSize = printSize; + setAlignmentX(alignmentX); + normalHue = Color.getHSBColor(hue, 0.4f, 0.85f); + preferredSize = new Dimension(shortSideSize*2, shortSideSize); + + MouseListener l = new MouseAdapter() { + public void mousePressed(MouseEvent e) { + int width = getWidth(); + float alignment = (float)(e.getX()) + / (float)width; + + // Round to the nearest 1/10th. + int tmp = Math.round(alignment * 10.0f); + alignment = (float)tmp / 10.0f; + + setAlignmentX(alignment); + revalidate(); // this GUI needs relayout + repaint(); + } + }; + addMouseListener(l); + } + + /** + * Our BLDComponents are completely opaque, so we override + * this method to return true. This lets the painting + * system know that it doesn't need to paint any covered + * part of the components underneath this component. The + * end result is possibly improved painting performance. + */ + public boolean isOpaque() { + return true; + } + + public void paint(Graphics g) { + int width = getWidth(); + int height = getHeight(); + float alignmentX = getAlignmentX(); + + g.setColor(normalHue); + g.fill3DRect(0, 0, width, height, true); + + /* Draw a vertical white line at the alignment point.*/ + // XXX: This code is probably not the best. + g.setColor(Color.white); + int x = (int)(alignmentX * (float)width) - 1; + g.drawLine(x, 0, x, height - 1); + + /* Say what the alignment point is. */ + g.setColor(Color.black); + g.drawString(Float.toString(alignmentX), 3, height - 3); + + if (printSize) { + System.out.println("BLDComponent " + name + ": size is " + + width + "x" + height + + "; preferred size is " + + getPreferredSize().width + "x" + + getPreferredSize().height); + } + } + + public Dimension getPreferredSize() { + return preferredSize; + } + + public Dimension getMinimumSize() { + return preferredSize; + } + + public Dimension getMaximumSize() { + if (restrictMaximumSize) { + return preferredSize; + } else { + return super.getMaximumSize(); + } + } + + public void setSizeRestriction(boolean restrictSize) { + restrictMaximumSize = restrictSize; + } + +} diff -r bf79fb79ee13 -r 5df24c91468d examples/gui/swing/BoxLayoutDemo.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/examples/gui/swing/BoxLayoutDemo.java Fri Apr 05 16:26:00 2019 +0100 @@ -0,0 +1,77 @@ +import java.awt.*; +import java.awt.event.*; +import javax.swing.*; + +public class BoxLayoutDemo { + protected static int NUM_COMPONENTS = 3; + protected static float[] xAlignment = {Component.LEFT_ALIGNMENT, + Component.CENTER_ALIGNMENT, + Component.RIGHT_ALIGNMENT}; + protected static float[] hue = {0.0f, 0.33f, 0.67f}; + protected static boolean restrictSize = true; + protected static boolean sizeIsRandom = false; + protected static BLDComponent[] bldComponent = + new BLDComponent[NUM_COMPONENTS]; + + public static void main(String[] args) { + final JPanel panel = new JPanel(); + panel.setLayout(new BoxLayout(panel, BoxLayout.Y_AXIS)); + + //Create the rectangles. + int shortSideSize = 15; + for (int i = 0; i < NUM_COMPONENTS; i++) { + if (sizeIsRandom) { + shortSideSize = (int)(30.0 * Math.random()) + 30; + } else { + shortSideSize += 10; + } + bldComponent[i] = new BLDComponent(xAlignment[i], hue[i], + shortSideSize, + restrictSize, + sizeIsRandom, + String.valueOf(i)); + panel.add(bldComponent[i]); + } + + //Create the instructions. + JLabel label = new JLabel("Click a rectangle to " + + "change its X alignment."); + JCheckBox cb = new JCheckBox("Restrict maximum rectangle size."); + cb.setSelected(restrictSize); + cb.addItemListener(new ItemListener() { + public void itemStateChanged(ItemEvent e) { + if (e.getStateChange() == ItemEvent.SELECTED) { + restrictSize = true; + } else { + restrictSize = false; + } + notifyBLDComponents(); + } + }); + + JFrame f = new JFrame("BoxLayoutDemo"); + Container contentPane = f.getContentPane(); + contentPane.add(panel, BorderLayout.CENTER); + panel.setBorder(BorderFactory.createLineBorder(Color.red)); + + Box box = Box.createVerticalBox(); + box.add(label); + box.add(cb); + + contentPane.add(box, BorderLayout.SOUTH); + f.addWindowListener(new WindowAdapter() { + public void windowClosing(WindowEvent e) { + System.exit(0); + } + }); + f.pack(); + f.setVisible(true); + } + + static public void notifyBLDComponents() { + for (int i = 0; i < NUM_COMPONENTS; i++) { + bldComponent[i].setSizeRestriction(restrictSize); + } + bldComponent[0].revalidate(); + } +} diff -r bf79fb79ee13 -r 5df24c91468d examples/gui/swing/ConversionPanel.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/examples/gui/swing/ConversionPanel.java Fri Apr 05 16:26:00 2019 +0100 @@ -0,0 +1,117 @@ +/* + * 1.1+Swing version. + */ + +import javax.swing.*; +import javax.swing.event.*; +import java.awt.*; +import java.awt.event.*; +import java.util.*; +import java.text.NumberFormat; + +public class ConversionPanel extends JPanel { + DecimalField textField; + JComboBox unitChooser; + JSlider slider; + ConverterRangeModel sliderModel; + Converter controller; + Unit[] units; + String title; + final static boolean DEBUG = false; + final static boolean COLORS = false; + final static int MAX = 10000; + + ConversionPanel(Converter myController, String myTitle, + Unit[] myUnits, + ConverterRangeModel myModel) { + if (COLORS) { + setBackground(Color.cyan); + } + setBorder(BorderFactory.createCompoundBorder( + BorderFactory.createTitledBorder(myTitle), + BorderFactory.createEmptyBorder(5,5,5,5))); + + //Save arguments in instance variables. + controller = myController; + units = myUnits; + title = myTitle; + sliderModel = myModel; + + //Add the text field. It initially displays "0" and needs + //to be at least 10 columns wide. + NumberFormat numberFormat = NumberFormat.getNumberInstance(); + numberFormat.setMaximumFractionDigits(2); + textField = new DecimalField(0, 10, numberFormat); + textField.setValue(sliderModel.getDoubleValue()); + textField.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + sliderModel.setDoubleValue(textField.getValue()); + } + }); + + //Add the combo box. + unitChooser = new JComboBox(); + for (int i = 0; i < units.length; i++) { //Populate it. + unitChooser.addItem(units[i].description); + } + unitChooser.setSelectedIndex(0); + sliderModel.setMultiplier(units[0].multiplier); + unitChooser.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + //Set new maximums for the sliders. + int i = unitChooser.getSelectedIndex(); + sliderModel.setMultiplier(units[i].multiplier); + controller.resetMaxValues(false); + } + }); + + //Add the slider. + slider = new JSlider(sliderModel); + sliderModel.addChangeListener(new ChangeListener() { + public void stateChanged(ChangeEvent e) { + textField.setValue(sliderModel.getDoubleValue()); + } + }); + + //Make the textfield/slider group a fixed size. + JPanel unitGroup = new JPanel() { + public Dimension getMinimumSize() { + return getPreferredSize(); + } + public Dimension getPreferredSize() { + return new Dimension(150, + super.getPreferredSize().height); + } + public Dimension getMaximumSize() { + return getPreferredSize(); + } + }; + if (COLORS) { + unitGroup.setBackground(Color.blue); + } + unitGroup.setBorder(BorderFactory.createEmptyBorder( + 0,0,0,5)); + unitGroup.setLayout(new BoxLayout(unitGroup, + BoxLayout.Y_AXIS)); + unitGroup.add(textField); + unitGroup.add(slider); + + setLayout(new BoxLayout(this, BoxLayout.X_AXIS)); + add(unitGroup); + add(unitChooser); + unitGroup.setAlignmentY(TOP_ALIGNMENT); + unitChooser.setAlignmentY(TOP_ALIGNMENT); + } + + /** + * Returns the multiplier (units/meter) for the currently + * selected unit of measurement. + */ + public double getMultiplier() { + return sliderModel.getMultiplier(); + } + + public double getValue() { + return sliderModel.getDoubleValue(); + } +} diff -r bf79fb79ee13 -r 5df24c91468d examples/gui/swing/Converter.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/examples/gui/swing/Converter.java Fri Apr 05 16:26:00 2019 +0100 @@ -0,0 +1,157 @@ +/* + * 1.1+Swing version. + */ + +import javax.swing.*; +import javax.swing.event.*; +import java.awt.*; +import java.awt.event.*; +import java.util.*; + +public class Converter { + ConversionPanel metricPanel, usaPanel; + Unit[] metricDistances = new Unit[3]; + Unit[] usaDistances = new Unit[4]; + final static boolean COLORS = false; + final static boolean DEBUG = false; + final static String LOOKANDFEEL = null; + ConverterRangeModel dataModel = new ConverterRangeModel(); + JPanel mainPane; + + /** + * Create the ConversionPanels (one for metric, another for U.S.). + * I used "U.S." because although Imperial and U.S. distance + * measurements are the same, this program could be extended to + * include volume measurements, which aren't the same. + * + * Put the ConversionPanels into a frame, and bring up the frame. + */ + public Converter() { + //Create Unit objects for metric distances, and then + //instantiate a ConversionPanel with these Units. + metricDistances[0] = new Unit("Centimeters", 0.01); + metricDistances[1] = new Unit("Meters", 1.0); + metricDistances[2] = new Unit("Kilometers", 1000.0); + metricPanel = new ConversionPanel(this, "Metric System", + metricDistances, + dataModel); + + //Create Unit objects for U.S. distances, and then + //instantiate a ConversionPanel with these Units. + usaDistances[0] = new Unit("Inches", 0.0254); + usaDistances[1] = new Unit("Feet", 0.305); + usaDistances[2] = new Unit("Yards", 0.914); + usaDistances[3] = new Unit("Miles", 1613.0); + usaPanel = new ConversionPanel(this, "U.S. System", + usaDistances, + new FollowerRangeModel(dataModel)); + + //Create a JPanel, and add the ConversionPanels to it. + mainPane = new JPanel(); + if (COLORS) { + mainPane.setBackground(Color.red); + } + mainPane.setLayout(new GridLayout(2,1,5,5)); + mainPane.setBorder(BorderFactory.createEmptyBorder(5,5,5,5)); + mainPane.add(metricPanel); + mainPane.add(usaPanel); + resetMaxValues(true); + } + + public void resetMaxValues(boolean resetCurrentValues) { + double metricMultiplier = metricPanel.getMultiplier(); + double usaMultiplier = usaPanel.getMultiplier(); + int maximum = ConversionPanel.MAX; + + if (metricMultiplier > usaMultiplier) { + maximum = (int)(ConversionPanel.MAX * + (usaMultiplier/metricMultiplier)); + } + + if (DEBUG) { + System.out.println("in Converter resetMaxValues"); + System.out.println(" metricMultiplier = " + + metricMultiplier + + "; usaMultiplier = " + + usaMultiplier + + "; maximum = " + + maximum); + } + + dataModel.setMaximum(maximum); + + if (resetCurrentValues) { + dataModel.setDoubleValue(maximum); + } + } + + private static void initLookAndFeel() { + String lookAndFeel = null; + + if (LOOKANDFEEL != null) { + if (LOOKANDFEEL.equals("Metal")) { + lookAndFeel = UIManager.getCrossPlatformLookAndFeelClassName(); + } else if (LOOKANDFEEL.equals("System")) { + lookAndFeel = UIManager.getSystemLookAndFeelClassName(); + } else if (LOOKANDFEEL.equals("Mac")) { + lookAndFeel = "com.sun.java.swing.plaf.mac.MacLookAndFeel"; + //PENDING: check! + } else if (LOOKANDFEEL.equals("Windows")) { + lookAndFeel = "com.sun.java.swing.plaf.windows.WindowsLookAndFeel"; + } else if (LOOKANDFEEL.equals("Motif")) { + lookAndFeel = "com.sun.java.swing.plaf.motif.MotifLookAndFeel"; + } + + if (DEBUG) { + System.out.println("About to request look and feel: " + + lookAndFeel); + } + + try { + UIManager.setLookAndFeel(lookAndFeel); + } catch (ClassNotFoundException e) { + System.err.println("Couldn't find class for specified look and feel:" + + lookAndFeel); + System.err.println("Did you include the L&F library in the class path?"); + System.err.println("Using the default look and feel."); + } catch (UnsupportedLookAndFeelException e) { + System.err.println("Can't use the specified look and feel (" + + lookAndFeel + + ") on this platform."); + System.err.println("Using the default look and feel."); + } catch (Exception e) { + System.err.println("Couldn't get specified look and feel (" + + lookAndFeel + + "), for some reason."); + System.err.println("Using the default look and feel."); + e.printStackTrace(); + } + } + } + + public static void main(String[] args) { + initLookAndFeel(); + Converter converter = new Converter(); + + //Create a new window. + JFrame f = new JFrame("Converter"); + f.addWindowListener(new WindowAdapter() { + public void windowClosing(WindowEvent e) { + System.exit(0); + } + }); + + //Add the JPanel to the window and display the window. + //We can use a JPanel for the content pane because + //JPanel is opaque. + f.setContentPane(converter.mainPane); + if (COLORS) { + //This has no effect, since the JPanel completely + //covers the content pane. + f.getContentPane().setBackground(Color.green); + } + + f.pack(); //Resizes the window to its natural size. + f.setVisible(true); + } +} diff -r bf79fb79ee13 -r 5df24c91468d examples/gui/swing/MenuDemo.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/examples/gui/swing/MenuDemo.java Fri Apr 05 16:26:00 2019 +0100 @@ -0,0 +1,164 @@ +import java.awt.*; +import java.awt.event.*; +import javax.swing.JMenu; +import javax.swing.JMenuItem; +import javax.swing.JCheckBoxMenuItem; +import javax.swing.JRadioButtonMenuItem; +import javax.swing.ButtonGroup; +import javax.swing.JMenuBar; +import javax.swing.KeyStroke; +import javax.swing.ImageIcon; + +import javax.swing.JTextArea; +import javax.swing.JScrollPane; +import javax.swing.JFrame; + +/* + * This class adds event handling to MenuLookDemo. + */ +public class MenuDemo extends JFrame + implements ActionListener, ItemListener { + JTextArea output; + JScrollPane scrollPane; + String newline = "\n"; + + public MenuDemo() { + JMenuBar menuBar; + JMenu menu, submenu; + JMenuItem menuItem; + JRadioButtonMenuItem rbMenuItem; + JCheckBoxMenuItem cbMenuItem; + + addWindowListener(new WindowAdapter() { + public void windowClosing(WindowEvent e) { + System.exit(0); + } + }); + + //Add regular components to the window, using the default BorderLayout. + Container contentPane = getContentPane(); + output = new JTextArea(5, 30); + output.setEditable(false); + scrollPane = new JScrollPane(output); + contentPane.add(scrollPane, BorderLayout.CENTER); + + //Create the menu bar. + menuBar = new JMenuBar(); + setJMenuBar(menuBar); + + //Build the first menu. + menu = new JMenu("A Menu"); + menu.setMnemonic(KeyEvent.VK_A); + menu.getAccessibleContext().setAccessibleDescription( + "The only menu in this program that has menu items"); + menuBar.add(menu); + + //a group of JMenuItems + menuItem = new JMenuItem("A text-only menu item", + KeyEvent.VK_T); + //menuItem.setMnemonic(KeyEvent.VK_T); //used constructor instead + menuItem.setAccelerator(KeyStroke.getKeyStroke( + KeyEvent.VK_1, ActionEvent.ALT_MASK)); + menuItem.getAccessibleContext().setAccessibleDescription( + "This doesn't really do anything"); + menuItem.addActionListener(this); + menu.add(menuItem); + + menuItem = new JMenuItem("Both text and icon", + new ImageIcon("images/middle.gif")); + menuItem.setMnemonic(KeyEvent.VK_B); + menuItem.addActionListener(this); + menu.add(menuItem); + + menuItem = new JMenuItem(new ImageIcon("images/middle.gif")); + menuItem.setMnemonic(KeyEvent.VK_D); + menuItem.addActionListener(this); + menu.add(menuItem); + + //a group of radio button menu items + menu.addSeparator(); + ButtonGroup group = new ButtonGroup(); + rbMenuItem = new JRadioButtonMenuItem("A radio button menu item"); + rbMenuItem.setSelected(true); + rbMenuItem.setMnemonic(KeyEvent.VK_R); + group.add(rbMenuItem); + rbMenuItem.addActionListener(this); + menu.add(rbMenuItem); + rbMenuItem = new JRadioButtonMenuItem("Another one"); + rbMenuItem.setMnemonic(KeyEvent.VK_O); + group.add(rbMenuItem); + rbMenuItem.addActionListener(this); + menu.add(rbMenuItem); + + //a group of check box menu items + menu.addSeparator(); + cbMenuItem = new JCheckBoxMenuItem("A check box menu item"); + cbMenuItem.setMnemonic(KeyEvent.VK_C); + cbMenuItem.addItemListener(this); + menu.add(cbMenuItem); + cbMenuItem = new JCheckBoxMenuItem("Another one"); + cbMenuItem.setMnemonic(KeyEvent.VK_H); + cbMenuItem.addItemListener(this); + menu.add(cbMenuItem); + + //a submenu + menu.addSeparator(); + submenu = new JMenu("A submenu"); + submenu.setMnemonic(KeyEvent.VK_S); + + menuItem = new JMenuItem("An item in the submenu"); + menuItem.setAccelerator(KeyStroke.getKeyStroke( + KeyEvent.VK_2, ActionEvent.ALT_MASK)); + menuItem.addActionListener(this); + submenu.add(menuItem); + + menuItem = new JMenuItem("Another item"); + menuItem.addActionListener(this); + submenu.add(menuItem); + menu.add(submenu); + + //Build second menu in the menu bar. + menu = new JMenu("Another Menu"); + menu.setMnemonic(KeyEvent.VK_N); + menu.getAccessibleContext().setAccessibleDescription( + "This menu does nothing"); + menuBar.add(menu); + } + + public void actionPerformed(ActionEvent e) { + JMenuItem source = (JMenuItem)(e.getSource()); + String s = "Action event detected." + + newline + + " Event source: " + source.getText() + + " (an instance of " + getClassName(source) + ")"; + output.append(s + newline); + } + + public void itemStateChanged(ItemEvent e) { + JMenuItem source = (JMenuItem)(e.getSource()); + String s = "Item event detected." + + newline + + " Event source: " + source.getText() + + " (an instance of " + getClassName(source) + ")" + + newline + + " New state: " + + ((e.getStateChange() == ItemEvent.SELECTED) ? + "selected":"unselected"); + output.append(s + newline); + } + + // Returns just the class name -- no package info. + protected String getClassName(Object o) { + String classString = o.getClass().getName(); + int dotIndex = classString.lastIndexOf("."); + return classString.substring(dotIndex+1); + } + + public static void main(String[] args) { + MenuDemo window = new MenuDemo(); + + window.setTitle("MenuDemo"); + window.setSize(450, 260); + window.setVisible(true); + } +} diff -r bf79fb79ee13 -r 5df24c91468d examples/gui/swing/MenuLookDemo.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/examples/gui/swing/MenuLookDemo.java Fri Apr 05 16:26:00 2019 +0100 @@ -0,0 +1,128 @@ +import java.awt.*; +import java.awt.event.*; +import javax.swing.JMenu; +import javax.swing.JMenuItem; +import javax.swing.JCheckBoxMenuItem; +import javax.swing.JRadioButtonMenuItem; +import javax.swing.ButtonGroup; +import javax.swing.JMenuBar; +import javax.swing.KeyStroke; +import javax.swing.ImageIcon; + +import javax.swing.JTextArea; +import javax.swing.JScrollPane; +import javax.swing.JFrame; + +/* + * This class exists solely to show you what menus look like. + * It has no menu-related event handling. + */ +public class MenuLookDemo extends JFrame { + JTextArea output; + JScrollPane scrollPane; + + public MenuLookDemo() { + JMenuBar menuBar; + JMenu menu, submenu; + JMenuItem menuItem; + JCheckBoxMenuItem cbMenuItem; + JRadioButtonMenuItem rbMenuItem; + + addWindowListener(new WindowAdapter() { + public void windowClosing(WindowEvent e) { + System.exit(0); + } + }); + + //Add regular components to the window, using the default BorderLayout. + Container contentPane = getContentPane(); + output = new JTextArea(5, 30); + output.setEditable(false); + scrollPane = new JScrollPane(output); + contentPane.add(scrollPane, BorderLayout.CENTER); + + //Create the menu bar. + menuBar = new JMenuBar(); + setJMenuBar(menuBar); + + //Build the first menu. + menu = new JMenu("A Menu"); + menu.setMnemonic(KeyEvent.VK_A); + menu.getAccessibleContext().setAccessibleDescription( + "The only menu in this program that has menu items"); + menuBar.add(menu); + + //a group of JMenuItems + menuItem = new JMenuItem("A text-only menu item", + KeyEvent.VK_T); + //menuItem.setMnemonic(KeyEvent.VK_T); //used constructor instead + menuItem.setAccelerator(KeyStroke.getKeyStroke( + KeyEvent.VK_1, ActionEvent.ALT_MASK)); + menuItem.getAccessibleContext().setAccessibleDescription( + "This doesn't really do anything"); + menu.add(menuItem); + + menuItem = new JMenuItem("Both text and icon", + new ImageIcon("images/middle.gif")); + menuItem.setMnemonic(KeyEvent.VK_B); + menu.add(menuItem); + + menuItem = new JMenuItem(new ImageIcon("images/middle.gif")); + menuItem.setMnemonic(KeyEvent.VK_D); + menu.add(menuItem); + + //a group of radio button menu items + menu.addSeparator(); + ButtonGroup group = new ButtonGroup(); + + rbMenuItem = new JRadioButtonMenuItem("A radio button menu item"); + rbMenuItem.setSelected(true); + rbMenuItem.setMnemonic(KeyEvent.VK_R); + group.add(rbMenuItem); + menu.add(rbMenuItem); + + rbMenuItem = new JRadioButtonMenuItem("Another one"); + rbMenuItem.setMnemonic(KeyEvent.VK_O); + group.add(rbMenuItem); + menu.add(rbMenuItem); + + //a group of check box menu items + menu.addSeparator(); + cbMenuItem = new JCheckBoxMenuItem("A check box menu item"); + cbMenuItem.setMnemonic(KeyEvent.VK_C); + menu.add(cbMenuItem); + + cbMenuItem = new JCheckBoxMenuItem("Another one"); + cbMenuItem.setMnemonic(KeyEvent.VK_H); + menu.add(cbMenuItem); + + //a submenu + menu.addSeparator(); + submenu = new JMenu("A submenu"); + submenu.setMnemonic(KeyEvent.VK_S); + + menuItem = new JMenuItem("An item in the submenu"); + menuItem.setAccelerator(KeyStroke.getKeyStroke( + KeyEvent.VK_2, ActionEvent.ALT_MASK)); + submenu.add(menuItem); + + menuItem = new JMenuItem("Another item"); + submenu.add(menuItem); + menu.add(submenu); + + //Build second menu in the menu bar. + menu = new JMenu("Another Menu"); + menu.setMnemonic(KeyEvent.VK_N); + menu.getAccessibleContext().setAccessibleDescription( + "This menu does nothing"); + menuBar.add(menu); + } + + public static void main(String[] args) { + MenuLookDemo window = new MenuLookDemo(); + + window.setTitle("MenuLookDemo"); + window.setSize(450, 260); + window.setVisible(true); + } +} diff -r bf79fb79ee13 -r 5df24c91468d examples/gui/swing/PopupMenuDemo.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/examples/gui/swing/PopupMenuDemo.java Fri Apr 05 16:26:00 2019 +0100 @@ -0,0 +1,196 @@ +import java.awt.*; +import java.awt.event.*; +import javax.swing.JPopupMenu; +import javax.swing.JMenu; +import javax.swing.JMenuItem; +import javax.swing.JCheckBoxMenuItem; +import javax.swing.JRadioButtonMenuItem; +import javax.swing.ButtonGroup; +import javax.swing.JMenuBar; +import javax.swing.KeyStroke; +import javax.swing.ImageIcon; + +import javax.swing.JTextArea; +import javax.swing.JScrollPane; +import javax.swing.JFrame; + +/* + * This class adds popup menus to MenuDemo. + */ +public class PopupMenuDemo extends JFrame + implements ActionListener, ItemListener { + JTextArea output; + JScrollPane scrollPane; + String newline = "\n"; + JPopupMenu popup; + + public PopupMenuDemo() { + JMenuBar menuBar; + JMenu menu, submenu; + JMenuItem menuItem; + JRadioButtonMenuItem rbMenuItem; + JCheckBoxMenuItem cbMenuItem; + + addWindowListener(new WindowAdapter() { + public void windowClosing(WindowEvent e) { + System.exit(0); + } + }); + + //Add regular components to the window, using the default BorderLayout. + Container contentPane = getContentPane(); + output = new JTextArea(5, 30); + output.setEditable(false); + scrollPane = new JScrollPane(output); + contentPane.add(scrollPane, BorderLayout.CENTER); + + //Create the menu bar. + menuBar = new JMenuBar(); + setJMenuBar(menuBar); + + //Build the first menu. + menu = new JMenu("A Menu"); + menu.setMnemonic(KeyEvent.VK_A); + menu.getAccessibleContext().setAccessibleDescription( + "The only menu in this program that has menu items"); + menuBar.add(menu); + + //a group of JMenuItems + menuItem = new JMenuItem("A text-only menu item", + KeyEvent.VK_T); + //menuItem.setMnemonic(KeyEvent.VK_T); //used constructor instead + menuItem.setAccelerator(KeyStroke.getKeyStroke( + KeyEvent.VK_1, ActionEvent.ALT_MASK)); + menuItem.getAccessibleContext().setAccessibleDescription( + "This doesn't really do anything"); + menuItem.addActionListener(this); + menu.add(menuItem); + menuItem = new JMenuItem("Both text and icon", + new ImageIcon("images/middle.gif")); + menuItem.setMnemonic(KeyEvent.VK_B); + menuItem.addActionListener(this); + menu.add(menuItem); + menuItem = new JMenuItem(new ImageIcon("images/middle.gif")); + menuItem.setMnemonic(KeyEvent.VK_D); + menuItem.addActionListener(this); + menu.add(menuItem); + + //a group of radio button menu items + menu.addSeparator(); + ButtonGroup group = new ButtonGroup(); + rbMenuItem = new JRadioButtonMenuItem("A radio button menu item"); + rbMenuItem.setSelected(true); + rbMenuItem.setMnemonic(KeyEvent.VK_R); + group.add(rbMenuItem); + rbMenuItem.addActionListener(this); + menu.add(rbMenuItem); + rbMenuItem = new JRadioButtonMenuItem("Another one"); + rbMenuItem.setMnemonic(KeyEvent.VK_O); + group.add(rbMenuItem); + rbMenuItem.addActionListener(this); + menu.add(rbMenuItem); + + //a group of check box menu items + menu.addSeparator(); + cbMenuItem = new JCheckBoxMenuItem("A check box menu item"); + cbMenuItem.setMnemonic(KeyEvent.VK_C); + cbMenuItem.addItemListener(this); + menu.add(cbMenuItem); + cbMenuItem = new JCheckBoxMenuItem("Another one"); + cbMenuItem.setMnemonic(KeyEvent.VK_H); + cbMenuItem.addItemListener(this); + menu.add(cbMenuItem); + + //a submenu + menu.addSeparator(); + submenu = new JMenu("A submenu"); + submenu.setMnemonic(KeyEvent.VK_S); + + menuItem = new JMenuItem("An item in the submenu"); + menuItem.setAccelerator(KeyStroke.getKeyStroke( + KeyEvent.VK_2, ActionEvent.ALT_MASK)); + menuItem.addActionListener(this); + submenu.add(menuItem); + + menuItem = new JMenuItem("Another item"); + menuItem.addActionListener(this); + submenu.add(menuItem); + menu.add(submenu); + + //Build second menu in the menu bar. + menu = new JMenu("Another Menu"); + menu.setMnemonic(KeyEvent.VK_N); + menu.getAccessibleContext().setAccessibleDescription( + "This menu does nothing"); + menuBar.add(menu); + + //Create the popup menu. + popup = new JPopupMenu(); + menuItem = new JMenuItem("A popup menu item"); + menuItem.addActionListener(this); + popup.add(menuItem); + menuItem = new JMenuItem("Another popup menu item"); + menuItem.addActionListener(this); + popup.add(menuItem); + + //Add listener to components that can bring up popup menus. + MouseListener popupListener = new PopupListener(); + output.addMouseListener(popupListener); + scrollPane.addMouseListener(popupListener); + menuBar.addMouseListener(popupListener); + } + + public void actionPerformed(ActionEvent e) { + JMenuItem source = (JMenuItem)(e.getSource()); + String s = "Action event detected." + + newline + + " Event source: " + source.getText() + + " (an instance of " + getClassName(source) + ")"; + output.append(s + newline); + } + + public void itemStateChanged(ItemEvent e) { + JMenuItem source = (JMenuItem)(e.getSource()); + String s = "Item event detected." + + newline + + " Event source: " + source.getText() + + " (an instance of " + getClassName(source) + ")" + + newline + + " New state: " + + ((e.getStateChange() == ItemEvent.SELECTED) ? + "selected":"unselected"); + output.append(s + newline); + } + + // Returns just the class name -- no package info. + protected String getClassName(Object o) { + String classString = o.getClass().getName(); + int dotIndex = classString.lastIndexOf("."); + return classString.substring(dotIndex+1); + } + + public static void main(String[] args) { + PopupMenuDemo window = new PopupMenuDemo(); + + window.setTitle("PopupMenuDemo"); + window.setSize(450, 260); + window.setVisible(true); + } + + class PopupListener extends MouseAdapter { + public void mousePressed(MouseEvent e) { + maybeShowPopup(e); + } + + public void mouseReleased(MouseEvent e) { + maybeShowPopup(e); + } + + private void maybeShowPopup(MouseEvent e) { + if (e.isPopupTrigger()) { + popup.show(e.getComponent(), + e.getX(), e.getY()); + } + } + } +} diff -r bf79fb79ee13 -r 5df24c91468d examples/java3d/Axis.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/examples/java3d/Axis.java Fri Apr 05 16:26:00 2019 +0100 @@ -0,0 +1,119 @@ +/* + * Axis.java 1.0 98/11/25 + * + * Copyright (c) 1998 Sun Microsystems, Inc. All Rights Reserved. + * + * Sun grants you ("Licensee") a non-exclusive, royalty free, license to use, + * modify and redistribute this software in source and binary code form, + * provided that i) this copyright notice and license appear on all copies of + * the software; and ii) Licensee does not utilize the software in a manner + * which is disparaging to Sun. + * + * This software is provided "AS IS," without a warranty of any kind. ALL + * EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND WARRANTIES, INCLUDING ANY + * IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR + * NON-INFRINGEMENT, ARE HEREBY EXCLUDED. SUN AND ITS LICENSORS SHALL NOT BE + * LIABLE FOR ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING + * OR DISTRIBUTING THE SOFTWARE OR ITS DERIVATIVES. IN NO EVENT WILL SUN OR ITS + * LICENSORS BE LIABLE FOR ANY LOST REVENUE, PROFIT OR DATA, OR FOR DIRECT, + * INDIRECT, SPECIAL, CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER + * CAUSED AND REGARDLESS OF THE THEORY OF LIABILITY, ARISING OUT OF THE USE OF + * OR INABILITY TO USE SOFTWARE, EVEN IF SUN HAS BEEN ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGES. + * + * This software is not designed or intended for use in on-line control of + * aircraft, air traffic, aircraft navigation or aircraft communications; or in + * the design, construction, operation or maintenance of any nuclear + * facility. Licensee represents and warrants that it will not use or + * redistribute the Software for such purposes. + */ + +/* + * Getting Started with the Java 3D API + * written in Java 3D + * + * This program demonstrates: + * 1. writing a visual object class + * In this program, Axis class defines a visual object + * This particular class extends Shape3D + * See the text for a discussion. + * 2. Using LineArray to draw 3D lines. + */ + + +import javax.media.j3d.*; +import javax.vecmath.*; + + + public class Axis extends Shape3D{ + + //////////////////////////////////////////// + // + // create axis visual object + // + public Axis() { + + this.setGeometry(createGeometry()); + + } + + private Geometry createGeometry(){ + // create line for X axis + IndexedLineArray axisLines = new IndexedLineArray(18, GeometryArray.COORDINATES, 30); + + axisLines.setCoordinate( 0, new Point3f(-1.0f, 0.0f, 0.0f)); + axisLines.setCoordinate( 1, new Point3f( 1.0f, 0.0f, 0.0f)); + axisLines.setCoordinate( 2, new Point3f( 0.9f, 0.1f, 0.1f)); + axisLines.setCoordinate( 3, new Point3f( 0.9f,-0.1f, 0.1f)); + axisLines.setCoordinate( 4, new Point3f( 0.9f, 0.1f,-0.1f)); + axisLines.setCoordinate( 5, new Point3f( 0.9f,-0.1f,-0.1f)); + axisLines.setCoordinate( 6, new Point3f( 0.0f,-1.0f, 0.0f)); + axisLines.setCoordinate( 7, new Point3f( 0.0f, 1.0f, 0.0f)); + axisLines.setCoordinate( 8, new Point3f( 0.1f, 0.9f, 0.1f)); + axisLines.setCoordinate( 9, new Point3f(-0.1f, 0.9f, 0.1f)); + axisLines.setCoordinate(10, new Point3f( 0.1f, 0.9f,-0.1f)); + axisLines.setCoordinate(11, new Point3f(-0.1f, 0.9f,-0.1f)); + axisLines.setCoordinate(12, new Point3f( 0.0f, 0.0f,-1.0f)); + axisLines.setCoordinate(13, new Point3f( 0.0f, 0.0f, 1.0f)); + axisLines.setCoordinate(14, new Point3f( 0.1f, 0.1f, 0.9f)); + axisLines.setCoordinate(15, new Point3f(-0.1f, 0.1f, 0.9f)); + axisLines.setCoordinate(16, new Point3f( 0.1f,-0.1f, 0.9f)); + axisLines.setCoordinate(17, new Point3f(-0.1f,-0.1f, 0.9f)); + + axisLines.setCoordinateIndex( 0, 0); + axisLines.setCoordinateIndex( 1, 1); + axisLines.setCoordinateIndex( 2, 2); + axisLines.setCoordinateIndex( 3, 1); + axisLines.setCoordinateIndex( 4, 3); + axisLines.setCoordinateIndex( 5, 1); + axisLines.setCoordinateIndex( 6, 4); + axisLines.setCoordinateIndex( 7, 1); + axisLines.setCoordinateIndex( 8, 5); + axisLines.setCoordinateIndex( 9, 1); + axisLines.setCoordinateIndex(10, 6); + axisLines.setCoordinateIndex(11, 7); + axisLines.setCoordinateIndex(12, 8); + axisLines.setCoordinateIndex(13, 7); + axisLines.setCoordinateIndex(14, 9); + axisLines.setCoordinateIndex(15, 7); + axisLines.setCoordinateIndex(16,10); + axisLines.setCoordinateIndex(17, 7); + axisLines.setCoordinateIndex(18,11); + axisLines.setCoordinateIndex(19, 7); + axisLines.setCoordinateIndex(20,12); + axisLines.setCoordinateIndex(21,13); + axisLines.setCoordinateIndex(22,14); + axisLines.setCoordinateIndex(23,13); + axisLines.setCoordinateIndex(24,15); + axisLines.setCoordinateIndex(25,13); + axisLines.setCoordinateIndex(26,16); + axisLines.setCoordinateIndex(27,13); + axisLines.setCoordinateIndex(28,17); + axisLines.setCoordinateIndex(29,13); + + return axisLines; + + } // end of Axis createGeometry() + + + } // end of class Axis diff -r bf79fb79ee13 -r 5df24c91468d examples/java3d/FPS.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/examples/java3d/FPS.java Fri Apr 05 16:26:00 2019 +0100 @@ -0,0 +1,32 @@ +import javax.media.j3d.*; +import javax.vecmath.*; +import java.util.Enumeration; + +final class FPS extends Behavior { + + protected int nFrames; + protected long startTime; + protected final WakeupCondition w; + + public FPS(int nFrames){ + this.nFrames=nFrames; + w=new WakeupOnElapsedFrames(nFrames); + } + + public FPS(){ + this(100); + } + + public void initialize(){ + setSchedulingBounds(new BoundingSphere(new Point3d(),1000)); + startTime=System.currentTimeMillis(); + wakeupOn(w); + } + + public void processStimulus(Enumeration criteria){ + long time=System.currentTimeMillis(); + System.err.println("fps: "+ 1000 * (double) nFrames / (double) (time-startTime)); + startTime=time; + wakeupOn(w); + } +} diff -r bf79fb79ee13 -r 5df24c91468d examples/java3d/LocalUniverse.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/examples/java3d/LocalUniverse.java Fri Apr 05 16:26:00 2019 +0100 @@ -0,0 +1,12 @@ +//import samer.core.*; +import javax.media.j3d.*; + +public class LocalUniverse extends VirtualUniverse +{ + Locale locale; + + public LocalUniverse() { locale=new Locale(this); } + public BranchGroup addGroup(BranchGroup bg) { + locale.addBranchGraph(bg); return bg; + } +} diff -r bf79fb79ee13 -r 5df24c91468d examples/java3d/MatrixPointArray.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/examples/java3d/MatrixPointArray.java Fri Apr 05 16:26:00 2019 +0100 @@ -0,0 +1,73 @@ +import samer.core.types.*; +import samer.maths.*; +import java.util.*; +import javax.media.j3d.*; +import javax.vecmath.*; + + +public class MatrixPointArray extends PointArray implements Observer +{ + int N; // number of points + Matrix P; // 3d positions of points + VVector A; // scalar activations + VDouble K; // slaing factor for activations + float carray[]; // array for holding colours + + + public MatrixPointArray(Matrix points, VVector activities) + { + super(points.getRowDimension(), COORDINATES | COLOR_3); + + N=points.getRowDimension(); + P=points; + A=activities; + carray=new float[3*N]; + K=new VDouble("scale",1); + + // set capabilities for subsequent updates + setCapability(ALLOW_COORDINATE_WRITE); + setCapability(ALLOW_COLOR_WRITE); + + { + double [] a=A.array(); + for (int i=0; i list=null; ListIterator it=null; - boolean loop; + boolean loop, buffered=true; int channelsToMix; VFile curFile; InputStream in=null; - AudioFormat format=null; + AudioFormat format=null, inFormat=null; byte[] byte_buf=null; - int chunk=0; + int chunk=0, bytesPerSample=0; /** * Construct a FileSource initialised with current file and loop initialised @@ -72,15 +73,26 @@ Shell.registerViewable(this); } + // AudioSource interface methods public void dispose() { close(); Shell.deregisterViewable(this); curFile.dispose(); } + public int getChannels() { return format.getChannels(); } + public float getRate() { return format.getFrameRate(); } + /** Returns current file */ public File getFile() { return curFile.getFile(); } - public void setTargetFormat(AudioFormat f) { format=f; } + public void setBuffering(boolean b) { buffered=b; } + + /** The actual format of the stream in. May not be same as target format. **/ + public AudioFormat getStreamFormat() { return inFormat; } + + /** The requested audio format. **/ + public AudioFormat getTargetFormat() { return format; } + public void setTargetFormat(AudioFormat f) { format=f; } /** If true then loop playlist, otherwise, an Exception will be thrown * when the end of the playlist is reached. If there is no playlist, then @@ -153,39 +165,47 @@ private synchronized void openCurrent() throws Exception { File file=curFile.getFile(); - Shell.trace("\nOpening audio file: "+file); + Shell.trace("\nFileSource:Opening audio file "+file); AudioInputStream s=AudioSystem.getAudioInputStream(file); - AudioFormat af=s.getFormat(); - long frames=file.length()/af.getFrameSize(); + AudioFormat fmt1, af=s.getFormat(); Shell.trace(" format: "+af); - Shell.trace(" duration: "+(long)(frames/af.getFrameRate())+" s"); // convert to target format if required if (format!=null) { if (!format.equals(af)) { Shell.trace(" converting to "+format); if (af.getChannels()>format.getChannels()) { + int frameSize = af.getChannels()*format.getSampleSizeInBits()/8; Shell.trace(" channels mix down required."); - AudioFormat fmt1 = new AudioFormat( format.getEncoding(), format.getSampleRate(), + fmt1 = new AudioFormat( format.getEncoding(), format.getSampleRate(), format.getSampleSizeInBits(), - af.getChannels(), format.getFrameSize(), format.getFrameRate(), format.isBigEndian()); + af.getChannels(), frameSize, format.getFrameRate(), format.isBigEndian()); channelsToMix = af.getChannels(); - s=convertFormat(s,af,fmt1); } else { channelsToMix = 0; - s=convertFormat(s,af,format); + fmt1=format; } + Shell.trace(" converting via "+fmt1); + s=convertFormat(s,af,fmt1); + inFormat = fmt1; + } else { + Shell.trace(" no formation conversion required"); + channelsToMix = 0; + inFormat = af; } + } else { + Shell.trace(" using stream native format"); + channelsToMix = 0; + inFormat = af; } + in=s; + if (buffered) in = new BufferedInputStream(in,64*1024); // If we have a reader task, then update the byte buffer if (chunk>0) setByteBuffer(); - - // Shell.trace("stream format: "+s.getFormat()); - in = new BufferedInputStream(s,16*1024); } /** Returns number of bytes available in current file */ @@ -194,33 +214,44 @@ /** Reopen current file, so that next read will be from head of file. */ public synchronized void reopen() throws Exception { close(); openCurrent(); } - private void setChunkSize(int s) { chunk=s; } + private void setBlockSize(int s) { chunk=s; } private void setByteBuffer() { - byte_buf = new byte[2*chunk*(channelsToMix>0 ? channelsToMix : 1)]; + bytesPerSample = 2*(channelsToMix>0 ? channelsToMix : 1); + byte_buf = new byte[chunk*bytesPerSample]; + } + + public int readInto(ByteBuffer buf, int offset, int len) throws IOException { + return in.read(buf.array(), offset, len); } /** Returns a Task which copies samples as doubles into the given * buffer between the given positions. */ public Task reader(final double [] dbuf, final int off, final int len) { - setChunkSize(len); + setBlockSize(len); if (in!=null) setByteBuffer(); return new AnonymousTask() { public void run() throws Exception { - int n = 0; + synchronized (FileSource.this) { + // loop until len samples copied into dbuf + int rem=len, pos=off; + while (rem>0) { + int bytesRead = in.read(byte_buf, 0, rem*bytesPerSample); + if (bytesRead > 0) { // append this chunk to output + int count=bytesRead/bytesPerSample; + if (channelsToMix>0) { + Util.shortToDoubleMixDown(byte_buf,dbuf,pos,count,channelsToMix); + } else { + Util.shortToDouble(byte_buf,dbuf,pos,count); + } + pos+=count; rem-=count; + } else if (it!=null) next(); // next file if there is one + else if (!loop) throw new EOFException(); // not looping and no more files + else reopen(); // back to first file - synchronized (FileSource.this) { - int blen = byte_buf.length; - while (n < blen) { - int count = in.read(byte_buf, n, blen - n); - if (count > 0) n+=count; - else if (it!=null) next(); - else if (!loop) throw new EOFException(); - else reopen(); + // if (rem>0) Shell.trace("Read "+bytesRead+" bytes, need "+rem+" more samples."); } } - if (channelsToMix>0) Util.shortToDoubleMixDown(byte_buf,dbuf,off,len,channelsToMix); - else Util.shortToDouble(byte_buf,dbuf,off,len); } }; } @@ -228,25 +259,29 @@ /** Returns a Task which copies samples as floats into the given * buffer between the given positions. */ public Task reader(final float [] dbuf, final int off, final int len) { - setChunkSize(len); + setBlockSize(len); if (in!=null) setByteBuffer(); return new AnonymousTask() { public synchronized void run() throws Exception { - int n = 0; - synchronized (FileSource.this) { - int blen = byte_buf.length; - while (n < blen) { - int count = in.read(byte_buf, n, blen - n); - if (count > 0) n+=count; - else if (it!=null) next(); + // loop until len samples copied into dbuf + int rem=len, pos=off; + while (rem>0) { + int bytesRead = in.read(byte_buf, 0, rem*bytesPerSample); + if (bytesRead > 0) { + int count=bytesRead/bytesPerSample; + if (channelsToMix>0) { + Util.shortToFloatMixDown(byte_buf,dbuf,pos,count,channelsToMix); + } else { + Util.shortToFloat(byte_buf,dbuf,pos,count); + } + pos+=count; rem-=count; + } else if (it!=null) next(); else if (!loop) throw new EOFException(); else reopen(); } } - if (channelsToMix>0) Util.shortToFloatMixDown(byte_buf,dbuf,off,len,channelsToMix); - else Util.shortToFloat(byte_buf,dbuf,off,len); } }; } @@ -318,26 +353,33 @@ private static AudioInputStream convertFormat(AudioInputStream sin, AudioFormat fin, AudioFormat fout) throws Exception { - if (fin==fout) return sin; + Shell.trace("\nconvertFormat:"); + Shell.trace(" | source: "+fin.toString()); + Shell.trace(" | target: "+fout.toString()); + + if (fin.equals(fout)) return sin; else if (fin.getEncoding()==AudioFormat.Encoding.PCM_SIGNED) { - try { return AudioSystem.getAudioInputStream(fout,sin); } + try { + Shell.trace(" | Trying direct (PCM) from "+fin.getEncoding().toString()); + return AudioSystem.getAudioInputStream(fout,sin); + } catch (IllegalArgumentException ex) { Shell.trace("Direct conversion failed"); } AudioFormat fint = new AudioFormat( // PCM fout.getSampleRate(), fout.getSampleSizeInBits(), fin.getChannels(), true, fout.isBigEndian()); - Shell.trace("Trying PCM conversion via "+fint.toString()); + Shell.trace(" | Trying PCM conversion via "+fint.toString()); return AudioSystem.getAudioInputStream(fout,AudioSystem.getAudioInputStream(fint,sin)); } else { // First, check for MP3 - if so, cannot convert number of channels if (fin.getChannels()==fout.getChannels() && fin.getSampleRate()==fout.getSampleRate()) { - Shell.trace("Trying direct decoding from "+fin.getEncoding().toString()); + Shell.trace(" | Trying decoding from "+fin.getEncoding().toString()); return AudioSystem.getAudioInputStream(fout,sin); } else { AudioFormat fint = new AudioFormat( fin.getSampleRate(), fout.getSampleSizeInBits(), fin.getChannels(), true, fout.isBigEndian()); - Shell.trace("Trying conversion via "+fint.toString()); + Shell.trace(" | Trying recursive via "+fint.toString()); return convertFormat(AudioSystem.getAudioInputStream(fint,sin),fint,fout); } } diff -r bf79fb79ee13 -r 5df24c91468d src/samer/audio/FileSource2.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/samer/audio/FileSource2.java Fri Apr 05 16:26:00 2019 +0100 @@ -0,0 +1,287 @@ +/* + * FileSource2.java + * + * Copyright (c) 2000, Samer Abdallah, King's College London. + * All rights reserved. + * + * This software is provided AS iS and WITHOUT ANY WARRANTY; + * without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. + */ + +package samer.audio; + +import samer.core.*; +import samer.core.types.*; +import samer.core.util.*; +import samer.tools.*; +import javax.sound.sampled.*; +import javax.swing.*; +import java.io.*; +import java.util.*; +import java.nio.ByteBuffer; + +/** + An AudioSource that read from multiple audio files. Can read any + format for which the appropriate JavaSound plug-in is installed on + your system, eg WAV, AU, MP3, OGG. The implementation of + AudioSource.reader() returns a Task which gets samples from the audio + files, going through the play list one by one. + An EOFException is thrown if an attempt is made + to read beyond the end of the last file. + + FileSource2 is a Viewable called "playlist", and an Agent with commands + next, view. + +*/ + +public class FileSource2 extends Viewable implements AudioSource, Agent +{ + List list=null; + ListIterator it=null; + int channelsToMix; + File curFile=null; + InputStream in=null; + AudioFormat targetFormat=null; + byte[] byte_buf=null; + int chunk=0, bytesPerSample=0; + + /** + * Construct a FileSource2. + */ + public FileSource2(AudioFormat targetFormat, List files) + { + super("playlist"); + + setAgent(this); + Shell.registerViewable(this); + this.targetFormat=targetFormat; + this.list=files; + it=list.listIterator(); + } + + // AudioSource interface methods + public void dispose() { + close(); + Shell.deregisterViewable(this); + } + + public int getChannels() { return targetFormat.getChannels(); } + public float getRate() { return targetFormat.getFrameRate(); } + + /** Returns current file */ + public File getFile() { return curFile; } + + /** The requested audio format. **/ + public AudioFormat getTargetFormat() { return targetFormat; } + + /** Set playlist to all WAV files in given directory */ + public static List directory(File dir, String ext) { + return Arrays.asList(dir.listFiles(getFileFilter(ext))); + } + + public synchronized List getPlaylist() { return list; } + + /** Move to head of next file in playlist */ + public synchronized void next() throws Exception + { + boolean wasOpen=isOpen(); + + if (wasOpen) close(); + if (!it.hasNext()) throw new EOFException(); + curFile=it.next(); + if (wasOpen) openCurrent(); + } + + public boolean isOpen() { return in!=null; } + + /** Closes current input stream */ + public synchronized void close() { + try { + if (in!=null) { + Shell.trace("Closing audio stream..."); + in.close(); in=null; byte_buf=null; + } + } + catch (IOException ex) {} + } + + /** Opens the playlist starting with the first file. */ + public synchronized void open() throws Exception { + it=list.listIterator(); next(); + if (!isOpen()) openCurrent(); + } + + /** Opens the current file. Next read will returns samples + * from head of given file. If setFormat() was called previously, then + * we will attempt to do format conversion. */ + private synchronized void openCurrent() throws Exception + { + File file=curFile; + Shell.trace("\nFileSource:Opening audio file "+file); + + AudioInputStream ain=AudioSystem.getAudioInputStream(file); + + // convert to target format if required + if (targetFormat==null) { + AudioFormat fin=ain.getFormat(); + ain=convertFormat(new AudioFormat( fin.getSampleRate(), 16, fin.getChannels(), true, false), ain); + } else { + ain=convertFormat(targetFormat, ain); + } + bytesPerSample=ain.getFormat().getSampleSizeInBits()/8; + if (bytesPerSample!=2) throw new Exception("Must be 16 bits per sample"); + + in = new BufferedInputStream(ain,64*1024); + + // If we have a reader task, then update the byte buffer + if (chunk>0) setByteBuffer(); + } + + /** Returns number of bytes available in current file */ + public int available() throws Exception { return in.available(); } + + private void setBlockSize(int s) { chunk=s; } + private void setByteBuffer() { + byte_buf = new byte[chunk*bytesPerSample]; + } + + public int readInto(ByteBuffer buf, int offset, int len) throws IOException { + return in.read(buf.array(), offset, len); + } + + /** Returns a Task which copies samples as doubles into the given + * buffer between the given positions. */ + public Task reader(final double [] dbuf, final int off, final int len) { + setBlockSize(len); + if (in!=null) setByteBuffer(); + + return new AnonymousTask() { + public void run() throws Exception { + synchronized (FileSource2.this) { + // loop until len samples copied into dbuf + int rem=len, pos=off; + while (rem>0) { + int bytesRead = in.read(byte_buf, 0, rem*bytesPerSample); + if (bytesRead > 0) { // append this chunk to output + int count=bytesRead/bytesPerSample; + Util.shortToDouble(byte_buf,dbuf,pos,count); + pos+=count; rem-=count; + } else if (it!=null) next(); // next file if there is one + else throw new EOFException(); // not looping and no more files + } + } + } + }; + } + + /** Returns a Task which copies samples as floats into the given + * buffer between the given positions. */ + public Task reader(final float [] dbuf, final int off, final int len) { + setBlockSize(len); + if (in!=null) setByteBuffer(); + + return new AnonymousTask() { + public synchronized void run() throws Exception { + synchronized (FileSource2.this) { + // loop until len samples copied into dbuf + int rem=len, pos=off; + while (rem>0) { + int bytesRead = in.read(byte_buf, 0, rem*bytesPerSample); + if (bytesRead > 0) { + int count=bytesRead/bytesPerSample; + Util.shortToFloat(byte_buf,dbuf,pos,count); + pos+=count; rem-=count; + } else if (it!=null) next(); + else throw new EOFException(); + } + } + } + }; + } + + // Agent + public void getCommands(Agent.Registry r) { + r.add("next").add("view"); + } + + public void execute(String cmd, Environment env) throws Exception { + if (cmd.equals("next")) next(); + else if (cmd.equals("view")) { + if (list!=null) { + Shell.expose( + new JScrollPane(new JList(list.toArray())), + "playlist"); + } + } + } + + // Viewable + public Viewer getViewer() { return new FileSourceViewer(); } + class FileSourceViewer extends DefaultViewer implements Agent { + public FileSourceViewer() { + super(FileSource2.this); + //add(curFile); + add(Shell.createButtonsFor(this)); + } + + public void getCommands(Agent.Registry r) { + r.add("next").add("view"); + } + public void execute(String cmd, Environment env) throws Exception { + FileSource2.this.execute(cmd,env); + } + }; + + private static java.io.FileFilter getFileFilter(final String ext) { + return new java.io.FileFilter() { + public boolean accept(File file) { + return file.getName().toLowerCase().endsWith(ext); + } + }; + } + + private static AudioInputStream convertVia(AudioFormat fout, AudioInputStream sin, AudioFormat fint) throws Exception + { + Shell.trace(" | Trying recursive via "+fint.toString()); + AudioInputStream sint=AudioSystem.getAudioInputStream(fint,sin); + Shell.trace(" | Obtained "+sint.getFormat().toString()); + return convertFormat(fout, sint); + } + + private static AudioInputStream convertFormat(AudioFormat fout, AudioInputStream sin) throws Exception + { + AudioFormat fin=sin.getFormat(); + + if (fin.equals(fout)) return sin; + + Shell.trace("\nconvertFormat:"); + Shell.trace(" | source: "+fin.toString()); + Shell.trace(" | target: "+fout.toString()); + + if (fin.getEncoding()!=AudioFormat.Encoding.PCM_SIGNED) { + // first get into PCM encoding, then try recursive + try { + return convertVia( fout, sin, new AudioFormat( + fin.getSampleRate(), fout.getSampleSizeInBits(), + fin.getChannels(), true, fout.isBigEndian())); + } catch (IllegalArgumentException ex) { + Shell.trace("Direct conversion failed"); + } + return convertVia( fout, sin, new AudioFormat( + fin.getSampleRate(), fin.getSampleSizeInBits(), + fin.getChannels(), true, fout.isBigEndian())); + } + + if (fin.getChannels()!=fout.getChannels() || fin.getSampleSizeInBits()!=fout.getSampleSizeInBits()) { + // convert these before doing any sample rate conversion + return convertVia(fout, sin, new AudioFormat( + fin.getSampleRate(), fout.getSampleSizeInBits(), + fout.getChannels(), true, fout.isBigEndian())); + } + + // the only thing left is sample rate + return AudioSystem.getAudioInputStream(fout,sin); + } +} + diff -r bf79fb79ee13 -r 5df24c91468d src/samer/audio/LineSource.java --- a/src/samer/audio/LineSource.java Tue Jan 17 17:50:20 2012 +0000 +++ b/src/samer/audio/LineSource.java Fri Apr 05 16:26:00 2019 +0100 @@ -38,6 +38,9 @@ super("linein"); line=l; fmt=f; } + public int getChannels() { return fmt.getChannels(); } + public float getRate() { return fmt.getFrameRate(); } + public AudioFormat getFormat() { return fmt; } public void setBufferSize(int b) { bufsize=b; } public DataLine getLine() { return line; } diff -r bf79fb79ee13 -r 5df24c91468d src/samer/audio/MultiFileAudioStream.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/samer/audio/MultiFileAudioStream.java Fri Apr 05 16:26:00 2019 +0100 @@ -0,0 +1,226 @@ +/* + * FileSource.java + * + * Copyright (c) 2000, Samer Abdallah, King's College London. + * All rights reserved. + * + * This software is provided AS iS and WITHOUT ANY WARRANTY; + * without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. + */ + +package samer.audio; + +import samer.core.*; +import samer.core.types.*; +import samer.core.util.*; +import samer.tools.*; +import javax.sound.sampled.*; +import javax.swing.*; +import java.io.*; +import java.util.*; +import java.nio.ByteBuffer; + +/** +*/ + + +public abstract class MultiFileAudioStream extends InputStream +{ + List list=null; + ListIterator it=null; + int channelsToMix; + File curFile=null; + InputStream in=null; + AudioFormat format=null, inFormat=null; + boolean loop=false; + + /** + * Construct a FileSource initialised with current file and loop initialised + * from the current Environment. No exception is thrown if the current file + * cannot be opened, however, you must be sure to set it to a valid file + * (or to set a playlist) before trying to read any samples. + */ + public MultiFileAudioStream(AudioFormat target, List files) + { + list=files; + format=target; + } + + public AudioFormat getFormat() { return format; } + + /** Set playlist to all WAV files in given directory */ + public List directory(File dir, String ext) { + return Arrays.asList(dir.listFiles(getFileFilter(ext))); + } + + private static java.io.FileFilter getFileFilter(final String ext) { + return new java.io.FileFilter() { + public boolean accept(File file) { + return file.getName().toLowerCase().endsWith(ext); + } + }; + } + + public synchronized List getPlaylist() { return list; } + + /** Go back to start of playlist. Next block of samples will be from head + * of first file in playlist. Will throw an exception if there is no playlist */ + public synchronized void rewind() throws IOException { + it=list.listIterator(); next(); + } + + /** Move to head of next file in playlist */ + public synchronized void next() throws IOException + { + boolean wasOpen=isOpen(); + + if (wasOpen) close(); + if (!it.hasNext()) { + if (!loop) throw new EOFException(); + it=list.listIterator(); + if (!it.hasNext()) throw new IOException("no files in playlist"); + } + curFile=it.next(); + if (wasOpen) openCurrent(); + } + + /** Move to head of previous file in playlist */ + public synchronized void prev() throws Exception + { + boolean wasOpen=isOpen(); + if (wasOpen) close(); + if (!it.hasPrevious()) { + if (!loop) throw new EOFException(); + it=list.listIterator(list.size()); + if (!it.hasPrevious()) throw new Exception("no files in playlist"); + } + curFile=it.previous(); + if (wasOpen) openCurrent(); + } + + public boolean isOpen() { return in!=null; } + + /** Closes current input stream */ + public synchronized void close() { + try { + if (in!=null) { + Shell.trace("Closing audio stream..."); + in.close(); in=null; + } + } + catch (IOException ex) {} + } + + /** Opens the playlist starting with the first file. */ + public synchronized void open() throws Exception { rewind(); if (!isOpen()) openCurrent(); } + + /** Opens the current file. Next read will returns samples + * from head of given file. If setFormat() was called previously, then + * we will attempt to do format conversion. */ + private synchronized void openCurrent() throws IOException + { + try { + File file=curFile; + Shell.trace("\nFileSource:Opening audio file "+file); + + AudioInputStream s=AudioSystem.getAudioInputStream(file); + AudioFormat fmt1, af=s.getFormat(); + + Shell.trace(" format: "+af); + + // convert to target format if required + if (format!=null) { + if (!format.equals(af)) { + Shell.trace(" converting to "+format); + if (af.getChannels()>format.getChannels()) { + int frameSize = af.getChannels()*format.getSampleSizeInBits()/8; + Shell.trace(" channels mix down required."); + fmt1 = new AudioFormat( format.getEncoding(), format.getSampleRate(), + format.getSampleSizeInBits(), + af.getChannels(), frameSize, format.getFrameRate(), format.isBigEndian()); + + channelsToMix = af.getChannels(); + } else { + channelsToMix = 0; + fmt1=format; + } + Shell.trace(" converting via "+fmt1); + s=convertFormat(s,af,fmt1); + inFormat = fmt1; + } else { + Shell.trace(" no formation conversion required"); + channelsToMix = 0; + inFormat = af; + } + } else { + Shell.trace(" using stream native format"); + channelsToMix = 0; + inFormat = af; + } + in=s; + } + catch (Exception ex) { throw new IOException("Failed to open audio file"); } + } + + /** Returns number of bytes available in current file */ + public int available() { + try { + return in.available(); + } + catch (Exception ex) { return 0; } + } + + /** Returns a Task which copies samples as doubles into the given + * buffer between the given positions. */ + public int read(byte [] buf, int off, int len) throws IOException { + + // loop until len samples copied into dbuf + int rem=len, pos=off; + while (rem>0) { + int chunk = in.read(buf, pos, rem); + if (chunk > 0) { // append this chunk to output + pos+=chunk; rem-=chunk; + } else if (it!=null) next(); // next file if there is one + else if (!loop) throw new EOFException(); // not looping and no more files + else rewind(); // back to first file + } + return len; + } + + + private static AudioInputStream convertFormat(AudioInputStream sin, AudioFormat fin, AudioFormat fout) throws Exception + { + Shell.trace("\nconvertFormat:"); + Shell.trace(" | source: "+fin.toString()); + Shell.trace(" | target: "+fout.toString()); + + if (fin.equals(fout)) return sin; + else if (fin.getEncoding()==AudioFormat.Encoding.PCM_SIGNED) { + try { + Shell.trace(" | Trying direct (PCM) from "+fin.getEncoding().toString()); + return AudioSystem.getAudioInputStream(fout,sin); + } + catch (IllegalArgumentException ex) { Shell.trace("Direct conversion failed"); } + + AudioFormat fint = new AudioFormat( // PCM + fout.getSampleRate(), fout.getSampleSizeInBits(), + fin.getChannels(), true, fout.isBigEndian()); + Shell.trace(" | Trying PCM conversion via "+fint.toString()); + return AudioSystem.getAudioInputStream(fout,AudioSystem.getAudioInputStream(fint,sin)); + } else { + // First, check for MP3 - if so, cannot convert number of channels + if (fin.getChannels()==fout.getChannels() && fin.getSampleRate()==fout.getSampleRate()) { + Shell.trace(" | Trying decoding from "+fin.getEncoding().toString()); + return AudioSystem.getAudioInputStream(fout,sin); + } else { + AudioFormat fint = new AudioFormat( + fin.getSampleRate(), fout.getSampleSizeInBits(), + fin.getChannels(), true, fout.isBigEndian()); + Shell.trace(" | Trying recursive via "+fint.toString()); + return convertFormat(AudioSystem.getAudioInputStream(fint,sin),fint,fout); + } + } + } +} + diff -r bf79fb79ee13 -r 5df24c91468d src/samer/audio/StreamSource.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/samer/audio/StreamSource.java Fri Apr 05 16:26:00 2019 +0100 @@ -0,0 +1,202 @@ +/* + * StreamSource.java + * + * Copyright (c) 2000, Samer Abdallah, King's College London. + * All rights reserved. + * + * This software is provided AS iS and WITHOUT ANY WARRANTY; + * without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. + */ + +package samer.audio; + +import samer.core.*; +import samer.core.types.*; +import samer.core.util.*; +import samer.tools.*; +import javax.sound.sampled.*; +import javax.swing.*; +import java.io.*; +import java.net.URL; +import java.util.*; + +/** + An AudioSource that read from an input stream. Can read any + format for which the appropriate JavaSound plug-in is installed on + your system, eg WAV, AU, MP3, OGG. The implementation of + AudioSource.reader() returns a Task which gets samples from the audio + files, going through the play list one by one. If the loop flag + is true, then samples are returned indefinitely by looping through the + playlist; otherwise, an EOFException is thrown if an attempt is made + to read beyond the end of the last file. + + Properties read from current environment: +
+
current
Current file (String) +
loop
Loop playlist? (Boolean) [true] +
+ +*/ + +public class StreamSource implements AudioSource +{ + int channelsToMix; + AudioInputStream source; + InputStream in=null; + AudioFormat format=null; + byte[] byte_buf=null; + int chunk=0; + + /** + * Construct a StreamSource initialised with current file and loop initialised + * from the current Environment. No exception is thrown if the current file + */ + public StreamSource(AudioInputStream s) throws Exception { source=s; } + public StreamSource(InputStream s) throws Exception { source=AudioSystem.getAudioInputStream(s); } + public StreamSource(File file) throws Exception { source=AudioSystem.getAudioInputStream(file); } + public StreamSource(URL url) throws Exception { source=AudioSystem.getAudioInputStream(url); } + + public void dispose() { close(); } + + /** Returns current file */ + public void setTargetFormat(AudioFormat f) { format=f; } + + public AudioFormat getFormat() { return format; } + + public boolean isOpen() { return in!=null; } + + /** Closes current input stream */ + public synchronized void close() { + try { + if (in!=null) { + Shell.trace("Closing audio stream..."); + in.close(); in=null; byte_buf=null; + } + } + catch (IOException ex) {} + } + + /** Opens the playlist starting with the first file. */ + public synchronized void open() throws Exception { if (!isOpen()) openCurrent(); } + + /** Opens the current file. Next read will returns samples + * from head of given file. If setFormat() was called previously, then + * we will attempt to do format conversion. */ + private synchronized void openCurrent() throws Exception + { + AudioInputStream s=source; + AudioFormat fmt1, af=s.getFormat(); + + Shell.trace(" format: "+af); + + // convert to target format if required + if (format!=null) { + if (!format.equals(af)) { + Shell.trace(" converting to "+format); + if (af.getChannels()>format.getChannels()) { + Shell.trace(" channels mix down required."); + fmt1 = new AudioFormat( format.getEncoding(), format.getSampleRate(), + format.getSampleSizeInBits(), + af.getChannels(), format.getFrameSize(), format.getFrameRate(), format.isBigEndian()); + + channelsToMix = af.getChannels(); + } else { + channelsToMix = 0; + fmt1=format; + } + s=convertFormat(s,af,fmt1); + } + } + + // If we have a reader task, then update the byte buffer + if (chunk>0) setByteBuffer(); + + // Shell.trace("stream format: "+s.getFormat()); + in = new BufferedInputStream(s,64*1024); + } + + /** Returns number of bytes available in current file */ + public int available() throws Exception { return in.available(); } + + private void setChunkSize(int s) { chunk=s; } + private void setByteBuffer() { + byte_buf = new byte[2*chunk*(channelsToMix>0 ? channelsToMix : 1)]; + } + + /** Returns a Task which copies samples as doubles into the given + * buffer between the given positions. */ + public Task reader(final double [] dbuf, final int off, final int len) { + setChunkSize(len); + if (in!=null) setByteBuffer(); + + return new AnonymousTask() { + public void run() throws Exception { + int n = 0; + + synchronized (StreamSource.this) { + int blen = byte_buf.length; + while (n < blen) { + int count = in.read(byte_buf, n, blen - n); + if (count > 0) n+=count; + else throw new EOFException(); + } + } + if (channelsToMix>0) Util.shortToDoubleMixDown(byte_buf,dbuf,off,len,channelsToMix); + else Util.shortToDouble(byte_buf,dbuf,off,len); + } + }; + } + + /** Returns a Task which copies samples as floats into the given + * buffer between the given positions. */ + public Task reader(final float [] dbuf, final int off, final int len) { + setChunkSize(len); + if (in!=null) setByteBuffer(); + + return new AnonymousTask() { + public synchronized void run() throws Exception { + int n = 0; + + synchronized (StreamSource.this) { + int blen = byte_buf.length; + while (n < blen) { + int count = in.read(byte_buf, n, blen - n); + if (count > 0) n+=count; + else throw new EOFException(); + } + } + if (channelsToMix>0) Util.shortToFloatMixDown(byte_buf,dbuf,off,len,channelsToMix); + else Util.shortToFloat(byte_buf,dbuf,off,len); + } + }; + } + + private static AudioInputStream convertFormat(AudioInputStream sin, AudioFormat fin, AudioFormat fout) throws Exception + { + if (fin.equals(fout)) return sin; + else if (fin.getEncoding()==AudioFormat.Encoding.PCM_SIGNED) { + try { return AudioSystem.getAudioInputStream(fout,sin); } + catch (IllegalArgumentException ex) { Shell.trace("Direct conversion failed"); } + + AudioFormat fint = new AudioFormat( // PCM + fout.getSampleRate(), fout.getSampleSizeInBits(), + fin.getChannels(), true, fout.isBigEndian()); + Shell.trace("Trying PCM conversion via "+fint.toString()); + return AudioSystem.getAudioInputStream(fout,AudioSystem.getAudioInputStream(fint,sin)); + } else { + // First, check for MP3 - if so, cannot convert number of channels + if (fin.getChannels()==fout.getChannels() && fin.getSampleRate()==fout.getSampleRate()) { + Shell.trace("Trying direct decoding from "+fin.getEncoding().toString()); + return AudioSystem.getAudioInputStream(fout,sin); + } else { + AudioFormat fint = new AudioFormat( + fin.getSampleRate(), fout.getSampleSizeInBits(), + fin.getChannels(), true, fout.isBigEndian()); + Shell.trace("Trying conversion via "+fint.toString()); + return convertFormat(AudioSystem.getAudioInputStream(fint,sin),fint,fout); + } + } + } +} + diff -r bf79fb79ee13 -r 5df24c91468d src/samer/audio/StreamSource.java.old --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/samer/audio/StreamSource.java.old Fri Apr 05 16:26:00 2019 +0100 @@ -0,0 +1,113 @@ +/* + * FileSource.java + * + * Copyright (c) 2000, Samer Abdallah, King's College London. + * All rights reserved. + * + * This software is provided AS iS and WITHOUT ANY WARRANTY; + * without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. + */ + +package samer.audio; + +import samer.core.*; +import samer.tools.*; +import javax.sound.sampled.*; +import java.io.*; + +/** + A lightweight AudioSource that reads from a single Stream. + Any format for which the appropriate JavaSound plug-in is installed on + your system, eg WAV, AU, MP3, OGG. The implementation of +*/ + +public class StreamSource implements AudioSource +{ + InputStream in=null; + AudioFormat format=null; + + /** + * Construct a FileSource initialised with current file and loop initialised + * from the current Environment. No exception is thrown if the current file + * cannot be opened, however, you must be sure to set it to a valid file + * (or to set a playlist) before trying to read any samples. + */ + public StreamSource(InputStream in) throws Exception { open(in); } + public StreamSource(InputStream in, AudioFormat f) throws Exception { format=f; open(in); } + public StreamSource(AudioFormat f) { format=f; } + + public void dispose() { close(); } + public void setTargetFormat(AudioFormat f) { format=f; } + + /** Returns number of bytes available in current file */ + public int available() throws Exception { return in.available(); } + + + /** Allows reading from any given InputStream, but does not affect + * current file or playlist. */ + public synchronized void open(InputStream s) throws Exception { + open(AudioSystem.getAudioInputStream(s)); + } + + public synchronized void open(AudioInputStream s) throws Exception + { + Shell.trace("stream format: "+s.getFormat()); + Shell.trace("file format: "+s.getFormat()); + + // in = new BufferedInputStream(s,16*1024); + // convert to target format if required + in=s; + if (format!=null) { + Shell.trace("Converting to "+format); + in=AudioSystem.getAudioInputStream(format,s); + } + } + + /** Closes current input stream */ + public synchronized void close() { + try { if (in!=null) in.close(); in=null; } + catch (IOException ex) {} + } + + /** Returns a Task which copies samples as doubles into the given + * buffer between the given positions. */ + public Task reader(final double [] dbuf, final int off, final int len) { + return new AnonymousTask() { + int blen=2*len; + byte [] bbuf = new byte[blen]; + + public void run() throws Exception { + int n = 0; + + while (n < blen) { + int count = in.read(bbuf, n, blen - n); + if (count > 0) n+=count; + else throw new EOFException(); + } + Util.shortToDouble(bbuf,dbuf,off,len); + } + }; + } + + /** Returns a Task which copies samples as floats into the given + * buffer between the given positions. */ + public Task reader(final float [] dbuf, final int off, final int len) { + return new AnonymousTask() { + int blen=2*len; + byte [] bbuf = new byte[blen]; + + public synchronized void run() throws Exception { + int n = 0; + + while (n < blen) { + int count = in.read(bbuf, n, blen - n); + if (count > 0) n+=count; + else throw new EOFException(); + } + Util.shortToFloat(bbuf,dbuf,off,len); + } + }; + } +} + diff -r bf79fb79ee13 -r 5df24c91468d src/samer/audio/VLine.java --- a/src/samer/audio/VLine.java Tue Jan 17 17:50:20 2012 +0000 +++ b/src/samer/audio/VLine.java Fri Apr 05 16:26:00 2019 +0100 @@ -104,6 +104,7 @@ setText(getLabel()); if (Shell.getBoolean("meter",true)) { + this.line = line; Shell.push("meter"); meter = new Meter(); meter.getMap().setDomain(0,line.getBufferSize()); diff -r bf79fb79ee13 -r 5df24c91468d src/samer/core_/CVS/Entries --- a/src/samer/core_/CVS/Entries Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,19 +0,0 @@ -/Agent.java/1.1.1.1/Fri Dec 10 03:29:25 2004// -/CompoundAgent.java/1.1.1.1/Fri Dec 10 03:29:25 2004// -/DoubleFormat.java/1.1.1.1/Fri Dec 10 03:29:25 2004// -/Environment.java/1.1.1.1/Fri Dec 10 03:29:25 2004// -/Node.java/1.1.1.1/Fri Dec 10 03:29:25 2004// -/NumberSink.java/1.1.1.1/Fri Dec 10 03:29:25 2004// -/NumberViewer.java/1.1.1.1/Fri Dec 10 03:29:25 2004// -/Registry.java/1.1.1.1/Fri Dec 10 03:29:25 2004// -/Saveable.java/1.1.1.1/Fri Dec 10 03:29:25 2004// -/Saver.java/1.1.1.1/Fri Dec 10 03:29:25 2004// -/Shell.java/1.1.1.1/Fri Dec 10 03:29:25 2004// -/Variable.java/1.1.1.1/Fri Dec 10 03:29:25 2004// -/Viewable.java/1.1.1.1/Fri Dec 10 03:29:25 2004// -/Viewer.java/1.1.1.1/Fri Dec 10 03:29:25 2004// -/X.java/1.1.1.1/Fri Dec 10 03:29:25 2004// -D/shells//// -D/types//// -D/util//// -D/viewers//// diff -r bf79fb79ee13 -r 5df24c91468d src/samer/core_/CVS/Repository --- a/src/samer/core_/CVS/Repository Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -/cvsroot/jslab/src/samer/core_ diff -r bf79fb79ee13 -r 5df24c91468d src/samer/core_/CVS/Root --- a/src/samer/core_/CVS/Root Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -:ext:samer@dspmac1.elec.qmul.ac.uk:/cvsroot diff -r bf79fb79ee13 -r 5df24c91468d src/samer/core_/Shell.java --- a/src/samer/core_/Shell.java Tue Jan 17 17:50:20 2012 +0000 +++ b/src/samer/core_/Shell.java Fri Apr 05 16:26:00 2019 +0100 @@ -431,7 +431,7 @@ { private PrintWriter writer=null; private PrintWriter stdout=new PrintWriter(System.out,true); // with autoflush - private PrintWriter stderr=new PrintWriter(System.err); // without autoflush + private PrintWriter stderr=new PrintWriter(System.err,true); // with autoflush // DefaultShell() { trace("creating DefaultShell"); } diff -r bf79fb79ee13 -r 5df24c91468d src/samer/core_/shells/CVS/Entries --- a/src/samer/core_/shells/CVS/Entries Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,4 +0,0 @@ -/AWTShell.java/1.1.1.1/Fri Dec 10 03:29:25 2004// -/DesktopShell.java/1.1.1.1/Fri Dec 10 03:29:25 2004// -/SwingShell.java/1.1.1.1/Fri Dec 10 03:29:25 2004// -D diff -r bf79fb79ee13 -r 5df24c91468d src/samer/core_/shells/CVS/Repository --- a/src/samer/core_/shells/CVS/Repository Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -/cvsroot/jslab/src/samer/core_/shells diff -r bf79fb79ee13 -r 5df24c91468d src/samer/core_/shells/CVS/Root --- a/src/samer/core_/shells/CVS/Root Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -:ext:samer@dspmac1.elec.qmul.ac.uk:/cvsroot diff -r bf79fb79ee13 -r 5df24c91468d src/samer/core_/types/CVS/Entries --- a/src/samer/core_/types/CVS/Entries Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,10 +0,0 @@ -/DoubleModel.java/1.1.1.1/Fri Dec 10 03:29:26 2004// -/VBoolean.java/1.1.1.1/Fri Dec 10 03:29:26 2004// -/VColor.java/1.1.1.1/Fri Dec 10 03:29:26 2004// -/VDouble.java/1.1.1.1/Fri Dec 10 03:29:26 2004// -/VFile.java/1.1.1.1/Fri Dec 10 03:29:26 2004// -/VInteger.java/1.1.1.1/Fri Dec 10 03:29:26 2004// -/VParameter.java/1.1.1.1/Fri Dec 10 03:29:26 2004// -/VRectangle.java/1.1.1.1/Fri Dec 10 03:29:26 2004// -/VString.java/1.1.1.1/Fri Dec 10 03:29:26 2004// -D diff -r bf79fb79ee13 -r 5df24c91468d src/samer/core_/types/CVS/Repository --- a/src/samer/core_/types/CVS/Repository Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -/cvsroot/jslab/src/samer/core_/types diff -r bf79fb79ee13 -r 5df24c91468d src/samer/core_/types/CVS/Root --- a/src/samer/core_/types/CVS/Root Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -:ext:samer@dspmac1.elec.qmul.ac.uk:/cvsroot diff -r bf79fb79ee13 -r 5df24c91468d src/samer/core_/util/CVS/Entries --- a/src/samer/core_/util/CVS/Entries Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,22 +0,0 @@ -/AgentAdapter.java/1.1.1.1/Fri Dec 10 03:29:26 2004// -/BaseViewer.java/1.1.1.1/Fri Dec 10 03:29:26 2004// -/ConsoleEnvironment.java/1.1.1.1/Fri Dec 10 03:29:26 2004// -/DefaultViewer.java/1.1.1.1/Fri Dec 10 03:29:26 2004// -/FileFilter.java/1.1.1.1/Fri Dec 10 03:29:26 2004// -/FilteredEnvironment.java/1.1.1.1/Fri Dec 10 03:29:26 2004// -/HashMap.java/1.1.1.1/Fri Dec 10 03:29:26 2004// -/IMap.java/1.1.1.1/Fri Dec 10 03:29:26 2004// -/LinearMap.java/1.1.1.1/Fri Dec 10 03:29:26 2004// -/LogMap.java/1.1.1.1/Fri Dec 10 03:29:26 2004// -/MouseRetarget.java/1.1.1.1/Fri Dec 10 03:29:26 2004// -/StackLayout.java/1.1.1.1/Fri Dec 10 03:29:26 2004// -/Tools.java/1.1.1.1/Fri Dec 10 03:29:26 2004// -/UserEnvironment.java/1.1.1.1/Fri Dec 10 03:29:26 2004// -/VLayout.java/1.1.1.1/Fri Dec 10 03:29:26 2004// -/VMap.java/1.1.1.1/Fri Dec 10 03:29:26 2004// -/VariableViewer.java/1.1.1.1/Fri Dec 10 03:29:26 2004// -D/heavy//// -D/light//// -D/shell//// -D/swing//// -/Properties.java/1.2/Mon Oct 9 21:16:17 2006// diff -r bf79fb79ee13 -r 5df24c91468d src/samer/core_/util/CVS/Repository --- a/src/samer/core_/util/CVS/Repository Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -/cvsroot/jslab/src/samer/core_/util diff -r bf79fb79ee13 -r 5df24c91468d src/samer/core_/util/CVS/Root --- a/src/samer/core_/util/CVS/Root Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -:ext:samer@dspmac1.elec.qmul.ac.uk:/cvsroot diff -r bf79fb79ee13 -r 5df24c91468d src/samer/core_/util/heavy/CVS/Entries --- a/src/samer/core_/util/heavy/CVS/Entries Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,16 +0,0 @@ -/Border.java/1.1.1.1/Fri Dec 10 03:29:26 2004// -/Borders.java/1.1.1.1/Fri Dec 10 03:29:26 2004// -/ButtonBar.java/1.1.1.1/Fri Dec 10 03:29:26 2004// -/CommandField.java/1.1.1.1/Fri Dec 10 03:29:26 2004// -/Dialog.java/1.1.1.1/Fri Dec 10 03:29:26 2004// -/Frame.java/1.1.1.1/Fri Dec 10 03:29:26 2004// -/JPanel.java/1.1.1.1/Fri Dec 10 03:29:26 2004// -/MenuBuilder.java/1.1.1.1/Fri Dec 10 03:29:26 2004// -/Meter.java/1.1.1.1/Fri Dec 10 03:29:26 2004// -/NumberViewer.java.not/1.1.1.1/Fri Dec 10 03:29:26 2004// -/PopupHandler.java/1.1.1.1/Fri Dec 10 03:29:26 2004// -/TextualNumberViewer.java/1.1.1.1/Fri Dec 10 03:29:26 2004// -/VCanvas.java/1.1.1.1/Fri Dec 10 03:29:26 2004// -/VPanel.java/1.1.1.1/Fri Dec 10 03:29:26 2004// -/Console.java/1.2/Mon Oct 9 21:16:17 2006// -D diff -r bf79fb79ee13 -r 5df24c91468d src/samer/core_/util/heavy/CVS/Repository --- a/src/samer/core_/util/heavy/CVS/Repository Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -/cvsroot/jslab/src/samer/core_/util/heavy diff -r bf79fb79ee13 -r 5df24c91468d src/samer/core_/util/heavy/CVS/Root --- a/src/samer/core_/util/heavy/CVS/Root Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -:ext:samer@dspmac1.elec.qmul.ac.uk:/cvsroot diff -r bf79fb79ee13 -r 5df24c91468d src/samer/core_/util/shell/CVS/Entries --- a/src/samer/core_/util/shell/CVS/Entries Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,4 +0,0 @@ -/AgentManager.java/1.1.1.1/Fri Dec 10 03:29:26 2004// -/AppShellBase.java/1.1.1.1/Fri Dec 10 03:29:26 2004// -/ViewableManager.java/1.1.1.1/Fri Dec 10 03:29:26 2004// -D diff -r bf79fb79ee13 -r 5df24c91468d src/samer/core_/util/shell/CVS/Repository --- a/src/samer/core_/util/shell/CVS/Repository Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -/cvsroot/jslab/src/samer/core_/util/shell diff -r bf79fb79ee13 -r 5df24c91468d src/samer/core_/util/shell/CVS/Root --- a/src/samer/core_/util/shell/CVS/Root Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -:ext:samer@dspmac1.elec.qmul.ac.uk:/cvsroot diff -r bf79fb79ee13 -r 5df24c91468d src/samer/core_/util/swing/CVS/Entries --- a/src/samer/core_/util/swing/CVS/Entries Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,17 +0,0 @@ -/ButtonBar.java/1.1.1.1/Fri Dec 10 03:29:26 2004// -/CommandField.java/1.1.1.1/Fri Dec 10 03:29:26 2004// -/DarkMetalTheme.java/1.1.1.1/Fri Dec 10 03:29:26 2004// -/Dialog.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/DynamicPopupHandler.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/Frame.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/InternalFrame.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/LED.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/MenuBuilder.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/Meter.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/PopupHandler.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/SilkyMetalTheme.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/TextualNumberViewer.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/VPanel.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/Console.java/1.2/Mon Oct 9 21:16:17 2006// -/VCanvas.java/1.1.1.1/Mon Aug 15 18:36:19 2005// -D diff -r bf79fb79ee13 -r 5df24c91468d src/samer/core_/util/swing/CVS/Repository --- a/src/samer/core_/util/swing/CVS/Repository Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -/cvsroot/jslab/src/samer/core_/util/swing diff -r bf79fb79ee13 -r 5df24c91468d src/samer/core_/util/swing/CVS/Root --- a/src/samer/core_/util/swing/CVS/Root Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -:ext:samer@dspmac1.elec.qmul.ac.uk:/cvsroot diff -r bf79fb79ee13 -r 5df24c91468d src/samer/core_/viewers/CVS/Entries --- a/src/samer/core_/viewers/CVS/Entries Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,11 +0,0 @@ -/BooleanViewer.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/ColorButton.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/ColorSwatch.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/ColorViewer.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/DoubleViewer.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/FileViewer.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/IntegerViewer.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/NumberViewer.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/ParameterViewer.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/StringViewer.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -D/swing//// diff -r bf79fb79ee13 -r 5df24c91468d src/samer/core_/viewers/CVS/Repository --- a/src/samer/core_/viewers/CVS/Repository Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -/cvsroot/jslab/src/samer/core_/viewers diff -r bf79fb79ee13 -r 5df24c91468d src/samer/core_/viewers/CVS/Root --- a/src/samer/core_/viewers/CVS/Root Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -:ext:samer@dspmac1.elec.qmul.ac.uk:/cvsroot diff -r bf79fb79ee13 -r 5df24c91468d src/samer/core_/viewers/swing/CVS/Entries --- a/src/samer/core_/viewers/swing/CVS/Entries Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,12 +0,0 @@ -/BooleanViewer.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/ColorButton.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/ColorChooserViewer.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/ColorViewer.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/DoubleViewer.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/FileChooserViewer.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/FileViewer.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/IntegerViewer.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/NumberViewer.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/ParameterViewer.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/StringViewer.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -D diff -r bf79fb79ee13 -r 5df24c91468d src/samer/core_/viewers/swing/CVS/Repository --- a/src/samer/core_/viewers/swing/CVS/Repository Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -/cvsroot/jslab/src/samer/core_/viewers/swing diff -r bf79fb79ee13 -r 5df24c91468d src/samer/core_/viewers/swing/CVS/Root --- a/src/samer/core_/viewers/swing/CVS/Root Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -:ext:samer@dspmac1.elec.qmul.ac.uk:/cvsroot diff -r bf79fb79ee13 -r 5df24c91468d src/samer/functions/CVS/Entries --- a/src/samer/functions/CVS/Entries Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,39 +0,0 @@ -/Abs.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/Add.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/Atanh.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/BiLaplacian.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/BiLaplacianBlend.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/CauchyInfomax.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/CompoundFunction.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/Exp.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/ExponentialSquashing.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/Gamma.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/HalfSquare.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/Hamming.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/Hanning.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/HybridFunction.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/Log.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/LogAbs.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/LogCauchy.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/LogCosh.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/LogGenCosh.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/LogGenExp.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/LogGenExp2.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/LogisiticInfomax.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/LogisticHyperplane.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/Negate.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/Power.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/Quadratic.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/RaleighLogPrior.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/Reciprocal.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/Scale.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/ScaledFunction.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/Sgn.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/SparseExponential.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/Sqrt.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/Square.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/Step.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/Tanh.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/ThresholdLog.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/WinnerTakeAll.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -D diff -r bf79fb79ee13 -r 5df24c91468d src/samer/functions/CVS/Repository --- a/src/samer/functions/CVS/Repository Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -/cvsroot/jslab/src/samer/functions diff -r bf79fb79ee13 -r 5df24c91468d src/samer/functions/CVS/Root --- a/src/samer/functions/CVS/Root Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -:ext:samer@dspmac1.elec.qmul.ac.uk:/cvsroot diff -r bf79fb79ee13 -r 5df24c91468d src/samer/j3d/CVS/Entries --- a/src/samer/j3d/CVS/Entries Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,26 +0,0 @@ -/Axes.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/FPS.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/ImmediateRenderer.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/J3DViewer.java.not/1.1.1.1/Fri Dec 10 03:29:27 2004// -/J3DViewerImmediate.java.not/1.1.1.1/Fri Dec 10 03:29:27 2004// -/J3DViewerMorph.java.not/1.1.1.1/Fri Dec 10 03:29:27 2004// -/MatrixPointArray.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/MatrixPointArrayAlpha.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/MatrixPointArrayRef.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/MatrixPoints4D.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/MonoView.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/MorphPoints.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/PatchArray.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/PatchArrayAlpha.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/Patches.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/PatchesAlpha.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/Points3D.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/Points3DAlpha.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/Points3DRef.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/Points4D.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/Root.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/StereoView.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/Util.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/ViewBase.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/ViewGroup.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -D diff -r bf79fb79ee13 -r 5df24c91468d src/samer/j3d/CVS/Repository --- a/src/samer/j3d/CVS/Repository Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -/cvsroot/jslab/src/samer/j3d diff -r bf79fb79ee13 -r 5df24c91468d src/samer/j3d/CVS/Root --- a/src/samer/j3d/CVS/Root Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -:ext:samer@dspmac1.elec.qmul.ac.uk:/cvsroot diff -r bf79fb79ee13 -r 5df24c91468d src/samer/maths/CVS/Entries --- a/src/samer/maths/CVS/Entries Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,50 +0,0 @@ -/ClippedDivide.java/1.1.1.1/Fri Dec 10 03:29:27 2004// -/ComplexVector.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/Constant.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/Difference.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/Function.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/FunctionMap.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/FunctionOfGenerator.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/FunctionOfVector.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/FunctionPlotter.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/Generator.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/Identity.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/IntArrayEditor.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/IteratorImageSource.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/LineTrace.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/Linear.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/Mat.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/MatEditor.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/Mathx.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/Matrix.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/MatrixAgent.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/MatrixImage.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/MatrixImageSource.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/MatrixImageSourceF.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/MatrixPanel.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/MatrixPlotter.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/MatrixTImageSource.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/MatrixTImageSourceF.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/MatrixTimesVector.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/MatrixTransposeTimesVector.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/Neg.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/Ops.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/Parameter.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/Probe.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/Product.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/RowColumn.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/SparseMatrix.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/Sum.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/VFunction.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/VGenerator.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/VVector.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/Vec.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/VectorEditor.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/VectorFunctionOfVector.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/VectorPlotter.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/VectorPlusEqualsVector.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/VectorTimesEqualsScalar.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/VectorTrace.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/Zero.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -D/opt//// -D/random//// diff -r bf79fb79ee13 -r 5df24c91468d src/samer/maths/CVS/Repository --- a/src/samer/maths/CVS/Repository Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -/cvsroot/jslab/src/samer/maths diff -r bf79fb79ee13 -r 5df24c91468d src/samer/maths/CVS/Root --- a/src/samer/maths/CVS/Root Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -:ext:samer@dspmac1.elec.qmul.ac.uk:/cvsroot diff -r bf79fb79ee13 -r 5df24c91468d src/samer/maths/opt/CVS/Entries --- a/src/samer/maths/opt/CVS/Entries Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,23 +0,0 @@ -/AbsXFConvergence.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/Condition.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/ConjGrad.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/ConstrainedConjGrad.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/ConstrainedGillMurray.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/ConstrainedMinimiser.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/Constraints.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/CubicLineSearch.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/Datum.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/Functionx.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/GConvergence.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/GillMurray.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/MinimiserBase.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/PolynomialLineSearch.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/Positivity.java/1.1.1.1/Fri Dec 10 03:29:28 2004// -/State.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/SubspaceFunctionx.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/UnconstrainedConjGrad.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/UnconstrainedMinimiser.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/Util.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/XFConvergence.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/ZeroCrossingSparsity.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -D diff -r bf79fb79ee13 -r 5df24c91468d src/samer/maths/opt/CVS/Repository --- a/src/samer/maths/opt/CVS/Repository Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -/cvsroot/jslab/src/samer/maths/opt diff -r bf79fb79ee13 -r 5df24c91468d src/samer/maths/opt/CVS/Root --- a/src/samer/maths/opt/CVS/Root Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -:ext:samer@dspmac1.elec.qmul.ac.uk:/cvsroot diff -r bf79fb79ee13 -r 5df24c91468d src/samer/maths/random/CVS/Entries --- a/src/samer/maths/random/CVS/Entries Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,27 +0,0 @@ -/BaseRandom.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/Binary.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/BinaryVec.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/BipolarUniform.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/BoundedHyperbolic.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/BoundedUniform.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/Brownian.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/Cauchy.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/Exponential.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/Gaussian.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/GeneralisedExponential.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/GeneralisedLaplacian.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/Laplacian.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/Logistic.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/Mixture.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/MixtureVec.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/NormalisedGaussian.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/PosteriorSampler.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/PowerLaw.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/Raleigh.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/RectifiedCauchy.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/RectifiedGaussian.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/RectifiedLogistic.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/SparseMixture.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/Ternary.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/Uniform.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -D diff -r bf79fb79ee13 -r 5df24c91468d src/samer/maths/random/CVS/Repository --- a/src/samer/maths/random/CVS/Repository Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -/cvsroot/jslab/src/samer/maths/random diff -r bf79fb79ee13 -r 5df24c91468d src/samer/maths/random/CVS/Root --- a/src/samer/maths/random/CVS/Root Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -:ext:samer@dspmac1.elec.qmul.ac.uk:/cvsroot diff -r bf79fb79ee13 -r 5df24c91468d src/samer/mds/CVS/Entries --- a/src/samer/mds/CVS/Entries Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,14 +0,0 @@ -/CorrelationTask.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/CovarianceTask.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/DistanceTask.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/Euclidean.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/GeometricFilter.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/MDS.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/MDSBase.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/Manhatten.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/MatrixBall.java.not/1.1.1.1/Fri Dec 10 03:29:29 2004// -/MatrixPointViewer2.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/Minkowski.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/NewMDS.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/ProximityFilter.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -D diff -r bf79fb79ee13 -r 5df24c91468d src/samer/mds/CVS/Repository --- a/src/samer/mds/CVS/Repository Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -/cvsroot/jslab/src/samer/mds diff -r bf79fb79ee13 -r 5df24c91468d src/samer/mds/CVS/Root --- a/src/samer/mds/CVS/Root Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -:ext:samer@dspmac1.elec.qmul.ac.uk:/cvsroot diff -r bf79fb79ee13 -r 5df24c91468d src/samer/midi/CVS/Entries --- a/src/samer/midi/CVS/Entries Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,5 +0,0 @@ -/MidiRecorder.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/MidiRecorderBase.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/MidiSynth.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/MidiWithAftertouch.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -D diff -r bf79fb79ee13 -r 5df24c91468d src/samer/midi/CVS/Repository --- a/src/samer/midi/CVS/Repository Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -/cvsroot/jslab/src/samer/midi diff -r bf79fb79ee13 -r 5df24c91468d src/samer/midi/CVS/Root --- a/src/samer/midi/CVS/Root Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -:ext:samer@dspmac1.elec.qmul.ac.uk:/cvsroot diff -r bf79fb79ee13 -r 5df24c91468d src/samer/midi/MidiSynth.java --- a/src/samer/midi/MidiSynth.java Tue Jan 17 17:50:20 2012 +0000 +++ b/src/samer/midi/MidiSynth.java Fri Apr 05 16:26:00 2019 +0100 @@ -36,9 +36,6 @@ public class MidiSynth extends Viewable implements Agent, Task, Saveable { - VVector in; - Synthesizer synthesizer=null; - protected int n; protected double [] x; protected int [] nnums; @@ -49,7 +46,7 @@ protected VInteger offset; protected VBoolean pedal; - public MidiSynth(VVector input) + public MidiSynth(VVector input, Synthesizer synth) { super("midisynth"); @@ -61,9 +58,9 @@ addAgent(new Saver(this)); Shell.pop(); - in = input; - n = in.size(); - x = in.array(); + n = input.size(); + x = input.array(); + cc = synth.getChannels(); nnums = new int[n]; chans = new int[n]; @@ -85,26 +82,8 @@ }; } - public void open() throws Exception { - if (synthesizer!=null) { Shell.print("already open"); return; } - if ((synthesizer = MidiSystem.getSynthesizer()) == null) { - throw new Exception("getSynthesizer() failed"); - } - Shell.print("opening synthesizer"); - synthesizer.open(); - - cc = synthesizer.getChannels(); - Shell.print("got synth and channel:"+synthesizer+cc); - } - - public void close() { - if (synthesizer != null) { - Shell.print("closing synthesiser"); - synthesizer.close(); - synthesizer = null; - } - } - + public void open() { } + public void close() { } public void dispose() { close(); factor.dispose(); @@ -123,8 +102,6 @@ public void stopping() {} public void run() { - if (synthesizer==null) return; - for (int i=0; i0) { cc[chans[i]].noteOn(nnums[i]+offset.value,mapVelocity(x[i])); diff -r bf79fb79ee13 -r 5df24c91468d src/samer/midi/MidiWithAftertouch.java --- a/src/samer/midi/MidiWithAftertouch.java Tue Jan 17 17:50:20 2012 +0000 +++ b/src/samer/midi/MidiWithAftertouch.java Fri Apr 05 16:26:00 2019 +0100 @@ -8,17 +8,9 @@ */ package samer.midi; -import samer.core.*; -import samer.core.types.*; -import samer.core.util.heavy.*; -import samer.core.util.*; -import samer.tools.*; import samer.maths.*; -import java.util.*; -import java.io.*; import javax.sound.midi.*; - /** When element crosses threshold upwards: note on When element drops below threshold: note off @@ -39,8 +31,6 @@ public void run() { - if (synthesizer==null) return; - for (int i=0; i0) { int vel=mapVelocity(x[i]); diff -r bf79fb79ee13 -r 5df24c91468d src/samer/models/CVS/Entries --- a/src/samer/models/CVS/Entries Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,24 +0,0 @@ -/AlignedGaussian.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/BatchedTrainer.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/Covariance.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/DiffScaler.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/GaussianStats.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/GaussianStatsOnline.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/GeneralisedExponential.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/ICA.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/ICAScalerSync.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/ICAWithScaler.java/1.1.1.1/Fri Dec 10 03:29:29 2004// -/IIDPrior.java/1.1.1.1/Fri Dec 10 03:29:30 2004// -/JointHistogramBase.java/1.1.1.1/Fri Dec 10 03:29:30 2004// -/MOGModel.java/1.1.1.1/Fri Dec 10 03:29:30 2004// -/MOGVector.java/1.1.1.1/Fri Dec 10 03:29:30 2004// -/MatrixTrainer.java/1.1.1.1/Fri Dec 10 03:29:30 2004// -/Mixture.java/1.1.1.1/Fri Dec 10 03:29:30 2004// -/Model.java/1.1.1.1/Fri Dec 10 03:29:30 2004// -/NoisyICA.java/1.1.1.1/Fri Dec 10 03:29:30 2004// -/Scaler.java/1.1.1.1/Fri Dec 10 03:29:30 2004// -/SignalHistogram.java/1.1.1.1/Fri Dec 10 03:29:30 2004// -/SmoothGeneralisedExponential.java/1.1.1.1/Fri Dec 10 03:29:30 2004// -/SparseICA.java/1.1.1.1/Fri Dec 10 03:29:30 2004// -/VarianceICA.java/1.1.1.1/Fri Dec 10 03:29:30 2004// -D/notyet//// diff -r bf79fb79ee13 -r 5df24c91468d src/samer/models/CVS/Repository --- a/src/samer/models/CVS/Repository Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -/cvsroot/jslab/src/samer/models diff -r bf79fb79ee13 -r 5df24c91468d src/samer/models/CVS/Root --- a/src/samer/models/CVS/Root Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -:ext:samer@dspmac1.elec.qmul.ac.uk:/cvsroot diff -r bf79fb79ee13 -r 5df24c91468d src/samer/models/notyet/CVS/Entries --- a/src/samer/models/notyet/CVS/Entries Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,3 +0,0 @@ -/ModelGraph.java/1.1.1.1/Fri Dec 10 03:29:30 2004// -/PCA.java/1.1.1.1/Fri Dec 10 03:29:30 2004// -D diff -r bf79fb79ee13 -r 5df24c91468d src/samer/models/notyet/CVS/Repository --- a/src/samer/models/notyet/CVS/Repository Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -/cvsroot/jslab/src/samer/models/notyet diff -r bf79fb79ee13 -r 5df24c91468d src/samer/models/notyet/CVS/Root --- a/src/samer/models/notyet/CVS/Root Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -:ext:samer@dspmac1.elec.qmul.ac.uk:/cvsroot diff -r bf79fb79ee13 -r 5df24c91468d src/samer/silk/CVS/Entries --- a/src/samer/silk/CVS/Entries Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,8 +0,0 @@ -/JavaProcedure.java/1.1.1.1/Fri Dec 10 03:29:30 2004// -/SchemeList.java/1.1.1.1/Fri Dec 10 03:29:30 2004// -/SilkCompleter.java/1.1.1.1/Fri Dec 10 03:29:30 2004// -/SilkFunction.java/1.1.1.1/Fri Dec 10 03:29:30 2004// -/SilkObserver.java/1.1.1.1/Fri Dec 10 03:29:30 2004// -/SilkTask.java/1.1.1.1/Fri Dec 10 03:29:30 2004// -/Terminal.java/1.1.1.1/Fri Dec 10 03:29:30 2004// -D diff -r bf79fb79ee13 -r 5df24c91468d src/samer/silk/CVS/Repository --- a/src/samer/silk/CVS/Repository Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -/cvsroot/jslab/src/samer/silk diff -r bf79fb79ee13 -r 5df24c91468d src/samer/silk/CVS/Root --- a/src/samer/silk/CVS/Root Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -:ext:samer@dspmac1.elec.qmul.ac.uk:/cvsroot diff -r bf79fb79ee13 -r 5df24c91468d src/samer/tools/CVS/Entries --- a/src/samer/tools/CVS/Entries Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,27 +0,0 @@ -/AnonymousTask.java/1.1.1.1/Fri Dec 10 03:29:30 2004// -/ArrayImageSource.java/1.1.1.1/Fri Dec 10 03:29:30 2004// -/ArrayVImageSource.java/1.1.1.1/Fri Dec 10 03:29:30 2004// -/ColorRamp.java/1.1.1.1/Fri Dec 10 03:29:30 2004// -/CompoundTask.java/1.1.1.1/Fri Dec 10 03:29:30 2004// -/ImageSourceBase.java/1.1.1.1/Fri Dec 10 03:29:30 2004// -/ImageTrace.java/1.1.1.1/Fri Dec 10 03:29:30 2004// -/ImageTraceBase.java/1.1.1.1/Fri Dec 10 03:29:30 2004// -/ImageVTrace.java/1.1.1.1/Fri Dec 10 03:29:30 2004// -/ImageViewer.java/1.1.1.1/Fri Dec 10 03:29:30 2004// -/NamedTask.java/1.1.1.1/Fri Dec 10 03:29:30 2004// -/NullTask.java/1.1.1.1/Fri Dec 10 03:29:30 2004// -/Plotter.java/1.1.1.1/Fri Dec 10 03:29:30 2004// -/RThread.java/1.1.1.1/Fri Dec 10 03:29:30 2004// -/RateSchedule.java/1.1.1.1/Fri Dec 10 03:29:30 2004// -/Renderer.java/1.1.1.1/Fri Dec 10 03:29:30 2004// -/SafeTask.java/1.1.1.1/Fri Dec 10 03:29:30 2004// -/ScatterPlot.java/1.1.1.1/Fri Dec 10 03:29:30 2004// -/SignalTrace.java/1.1.1.1/Fri Dec 10 03:29:30 2004// -/SubrateTask.java/1.1.1.1/Fri Dec 10 03:29:30 2004// -/SwitchTask.java/1.1.1.1/Fri Dec 10 03:29:30 2004// -/Task.java/1.1.1.1/Fri Dec 10 03:29:30 2004// -/TaskLoop.java/1.1.1.1/Fri Dec 10 03:29:30 2004// -/TaskTrigger.java.not/1.1.1.1/Fri Dec 10 03:29:30 2004// -/Trace.java/1.1.1.1/Fri Dec 10 03:29:30 2004// -/vec2.java/1.1.1.1/Fri Dec 10 03:29:30 2004// -D diff -r bf79fb79ee13 -r 5df24c91468d src/samer/tools/CVS/Repository --- a/src/samer/tools/CVS/Repository Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -/cvsroot/jslab/src/samer/tools diff -r bf79fb79ee13 -r 5df24c91468d src/samer/tools/CVS/Root --- a/src/samer/tools/CVS/Root Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -:ext:samer@dspmac1.elec.qmul.ac.uk:/cvsroot diff -r bf79fb79ee13 -r 5df24c91468d src/samer/units/CVS/Entries --- a/src/samer/units/CVS/Entries Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,38 +0,0 @@ -/Clicker.java/1.1.1.1/Fri Dec 10 03:29:30 2004// -/DoubleToStream.java/1.1.1.1/Fri Dec 10 03:29:30 2004// -/DoubleWriter.java/1.1.1.1/Fri Dec 10 03:29:31 2004// -/EnergyOperator.java/1.1.1.1/Fri Dec 10 03:29:31 2004// -/FFT.java/1.1.1.1/Fri Dec 10 03:29:31 2004// -/FFTVector.java/1.1.1.1/Fri Dec 10 03:29:31 2004// -/FIRFilter.java/1.1.1.1/Fri Dec 10 03:29:31 2004// -/Filter.java/1.1.1.1/Fri Dec 10 03:29:31 2004// -/FilterVector.java/1.1.1.1/Fri Dec 10 03:29:31 2004// -/FilteredGenerator.java/1.1.1.1/Fri Dec 10 03:29:31 2004// -/GenerateDouble.java/1.1.1.1/Fri Dec 10 03:29:31 2004// -/GenerateVector.java/1.1.1.1/Fri Dec 10 03:29:31 2004// -/Histogram.java/1.1.1.1/Fri Dec 10 03:29:31 2004// -/IIRFilter.java/1.1.1.1/Fri Dec 10 03:29:31 2004// -/JointHistogram.java/1.1.1.1/Fri Dec 10 03:29:31 2004// -/Latch.java/1.1.1.1/Fri Dec 10 03:29:31 2004// -/LineIn.java/1.1.1.1/Fri Dec 10 03:29:31 2004// -/LineOut.java/1.1.1.1/Fri Dec 10 03:29:31 2004// -/Matrices.java/1.1.1.1/Fri Dec 10 03:29:31 2004// -/MousePosition.java/1.1.1.1/Fri Dec 10 03:29:31 2004// -/NoisyLinearSource.java/1.1.1.1/Fri Dec 10 03:29:31 2004// -/OnsetMap.java/1.1.1.1/Fri Dec 10 03:29:31 2004// -/Oscillator.java/1.1.1.1/Fri Dec 10 03:29:31 2004// -/OverlapAndAdd.java/1.1.1.1/Fri Dec 10 03:29:31 2004// -/RescaledIFT.java/1.1.1.1/Fri Dec 10 03:29:31 2004// -/SignalWindow.java/1.1.1.1/Fri Dec 10 03:29:31 2004// -/SpectralFIR.java/1.1.1.1/Fri Dec 10 03:29:31 2004// -/Stacker.java/1.1.1.1/Fri Dec 10 03:29:31 2004// -/Stacker2.java/1.1.1.1/Fri Dec 10 03:29:31 2004// -/StreamToDouble.java/1.1.1.1/Fri Dec 10 03:29:31 2004// -/StreamToVec.java/1.1.1.1/Fri Dec 10 03:29:31 2004// -/SumFnVec.java/1.1.1.1/Fri Dec 10 03:29:31 2004// -/Trigger.java/1.1.1.1/Fri Dec 10 03:29:31 2004// -/VecToDouble.java/1.1.1.1/Fri Dec 10 03:29:31 2004// -/VecToStream.java/1.1.1.1/Fri Dec 10 03:29:31 2004// -/VecWriter.java/1.1.1.1/Fri Dec 10 03:29:31 2004// -/Wavetable.java/1.1.1.1/Fri Dec 10 03:29:31 2004// -D diff -r bf79fb79ee13 -r 5df24c91468d src/samer/units/CVS/Repository --- a/src/samer/units/CVS/Repository Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -/cvsroot/jslab/src/samer/units diff -r bf79fb79ee13 -r 5df24c91468d src/samer/units/CVS/Root --- a/src/samer/units/CVS/Root Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -:ext:samer@dspmac1.elec.qmul.ac.uk:/cvsroot diff -r bf79fb79ee13 -r 5df24c91468d src/scheme/audio.scm --- a/src/scheme/audio.scm Tue Jan 17 17:50:20 2012 +0000 +++ b/src/scheme/audio.scm Fri Apr 05 16:26:00 2019 +0100 @@ -23,6 +23,7 @@ ;;; construct DataLine.Info. args = (format [bufsize]) (define (_dli cl args) (apply javax.sound.sampled.DataLine$Info. (cons cl args))) +(define (_open x) (.open x) x) (define (target-info . args) (_dli javax.sound.sampled.TargetDataLine.class args)) (define (source-info . args) (_dli javax.sound.sampled.SourceDataLine.class args)) @@ -44,14 +45,14 @@ (define-method (linesrc) (linesrc (default-format))) (define-method (linesnk) (linesnk (default-format))) -(define-method (linesrc fmt) (.open (_src (line (target-info fmt)) fmt))) -(define-method (linesnk fmt) (.open (_snk (line (source-info fmt bf)) fmt))) -(define-method (linesrc mx fmt) (.open (_src (line mx (target-info fmt)) fmt))) -(define-method (linesnk mx fmt) (.open (_snk (line mx (source-info fmt)) fmt))) -(define-method (linesrc mx fmt bf) (.open (_sbs bf (_src (line mx (target-info fmt bf)) fmt)))) -(define-method (linesnk mx fmt bf) (.open (_sbs bf (_snk (line mx (source-info fmt bf)) fmt)))) -(define-method (linesrc-buf fmt bf) (.open (_sbs bf (_src (line (target-info fmt bf)) fmt)))) -(define-method (linesnk-buf fmt bf) (.open (_sbs bf (_snk (line (source-info fmt bf)) fmt)))) +(define-method (linesrc fmt) (_open (_src (line (target-info fmt)) fmt))) +(define-method (linesnk fmt) (_open (_snk (line (source-info fmt)) fmt))) +(define-method (linesrc mx fmt) (_open (_src (line mx (target-info fmt)) fmt))) +(define-method (linesnk mx fmt) (_open (_snk (line mx (source-info fmt)) fmt))) +(define-method (linesrc mx fmt bf) (_open (_sbs bf (_src (line mx (target-info fmt bf)) fmt)))) +(define-method (linesnk mx fmt bf) (_open (_sbs bf (_snk (line mx (source-info fmt bf)) fmt)))) +(define-method (linesrc-buf fmt bf) (_open (_sbs bf (_src (line (target-info fmt bf)) fmt)))) +(define-method (linesnk-buf fmt bf) (_open (_sbs bf (_snk (line (source-info fmt bf)) fmt)))) (define filesnk samer.audio.FileSink.) (define streamsrc samer.audio.StreamSource.) @@ -72,7 +73,7 @@ ;;; buffering audio input into frames with a certain hop size (define-method (linein size step) (linein (linesrc) size step)) -(define-method (linein (source samer.audio.AudioSource) size step) +(define-method (linein source size step) (define line (LineIn. source size step)) (put "LineIn" line) (addtask line) diff -r bf79fb79ee13 -r 5df24c91468d src/scheme/midi.scm --- a/src/scheme/midi.scm Tue Jan 17 17:50:20 2012 +0000 +++ b/src/scheme/midi.scm Fri Apr 05 16:26:00 2019 +0100 @@ -1,4 +1,5 @@ (import "samer.midi.*") +(import "javax.sound.midi.*") (define (tomidi in) (letrec ( diff -r bf79fb79ee13 -r 5df24c91468d src/scheme/readline.scm --- a/src/scheme/readline.scm Tue Jan 17 17:50:20 2012 +0000 +++ b/src/scheme/readline.scm Fri Apr 05 16:26:00 2019 +0100 @@ -4,8 +4,9 @@ ; redirect input to readline reader ;(define (set-input-port port) (set! jsint.Scheme.input$ port)) -(define (readline-reader prompt) - (org.gnu.readline.ReadlineReader. prompt +(define jscheme-history ".jscheme_history") +(define (readline-reader prompt) + (org.gnu.readline.ReadlineReader. prompt (java.io.File. jscheme-history) org.gnu.readline.ReadlineLibrary.GnuReadline$)) (org.gnu.readline.Readline.initReadline "jscheme") @@ -14,14 +15,14 @@ (.setInput (jsint.Scheme.currentEvaluator) (jsint.InputPort. current-readline-reader)) (define (set-prompt prompt) (.setPrompt current-readline-reader prompt)) - + ; this seems to stop terminal getting confused after exit (.addShutdownHook (Runtime.getRuntime) - (Thread. (lambda () + (Thread. (lambda () (display "cleaning up readline.\n") + (org.gnu.readline.Readline.writeHistoryFile jscheme-history) (org.gnu.readline.Readline.cleanup)))) - + ; enable completion by looking up words in jscheme's symbol table (org.gnu.readline.Readline.setCompleter (samer.silk.SilkCompleter.)) -(set-prompt ">") diff -r bf79fb79ee13 -r 5df24c91468d src/scheme/sockets.scm --- a/src/scheme/sockets.scm Tue Jan 17 17:50:20 2012 +0000 +++ b/src/scheme/sockets.scm Fri Apr 05 16:26:00 2019 +0100 @@ -1,9 +1,10 @@ +(load "streams.scm") + (define (make-server) (java.net.ServerSocket. 2000)) (define (accept s) (display "waiting for connection...\n") (.accept s)) (define (connect host) (display "connecting...\n") (java.net.Socket. host 2000)) (define (istream s) (.getInputStream s)) (define (ostream s) (.getOutputStream s)) -(load "streams.scm") (define-method (send (socket java.net.Socket) (x Vec)) (VecToStream. x (buffer (ostream socket)))) diff -r bf79fb79ee13 -r 5df24c91468d src/scheme/streams.scm --- a/src/scheme/streams.scm Tue Jan 17 17:50:20 2012 +0000 +++ b/src/scheme/streams.scm Fri Apr 05 16:26:00 2019 +0100 @@ -1,3 +1,6 @@ +(import "samer.maths.Vec") +(import "samer.core.types.DoubleModel") + (define (ifstream fn) (java.io.FileInputStream. fn)) (define (ofstream fn) (java.io.FileOutputStream. fn)) (define (fwriter fn) (java.io.FileWriter. fn)) diff -r bf79fb79ee13 -r 5df24c91468d src/scheme/weird.scm --- a/src/scheme/weird.scm Tue Jan 17 17:50:20 2012 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,60 +0,0 @@ -(define (sieve n pr) (if (divides n pr) pr (cons n pr))) -(define (div n m) (equal? 0 (remainder n m))) -(define (divides n factors) - (if (null? factors) #f - (if (div n (first factors)) #t - (divides n (rest factors))))) - -(define primeso - (let ((hashed (java.util.ArrayList.))) - (define (set n l) (.add hashed n l) l) - - (.add hashed `()) - (.add hashed `()) - (.add hashed `(2)) - - (lambda (n) - (if (< n (.size hashed)) - (.get hashed n) - (begin - (.ensureCapacity hashed (+ n 1)) - (set n (sieve n (primes (- n 1))))))))) - -(define (accum-primes n sofar limit) - (if (> n limit) sofar - (accum-primes (+ n 1) (sieve n sofar) limit))) - -(define (primes limit) (accum-primes 2 () limit)) - -; alternative is to make a big or list by mapping -; factors to a list of procedures: (m1 m2 ..) -> ((div m1) (div m2) ...) - -(define (prime? n) (equal? n (first (primes n)))) - -(define (prime-factors n) - -`(define (factors n) - (define prime-factors (prime-factors n)) - ; now make all products including 1 but excluding n - ; this is a binary enumeration, basically -) - -(define (proper-divisors n) - - -(define (abundant? n) - (< n (apply + (factors n)))) - - -(define (weird? n) - ; get factors - ; check abundancy - ; is n a sum of any of its factors? - (define sum (apply + proper-divisors)) - (if (<= sum n) #f ; ie not abundant - (begin - (define discrep (- n sum)) - ; can we make discrep by summing divisors <= discrep - ) - ) -) \ No newline at end of file