Fixed Merger, Mux, Splitter: onedirectional again. Tests added.
[Mograsim.git] / era.mi / src / era / mi / logic / components / TriState.java
diff --git a/era.mi/src/era/mi/logic/components/TriState.java b/era.mi/src/era/mi/logic/components/TriState.java
deleted file mode 100644 (file)
index 2bddbf1..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-package era.mi.logic.components;
-
-import era.mi.logic.Bit;
-import era.mi.logic.wires.WireArray;
-import era.mi.logic.wires.WireArray.WireArrayInput;
-
-public class TriState extends BasicComponent{
-       WireArray in, enable;
-       WireArrayInput outI;
-       
-       public TriState(int processTime, WireArray in, WireArray out, WireArray enable) {
-               super(processTime);
-               if(in.length != out.length)
-                       throw new IllegalArgumentException("Tri-state output must have the same amount of bits as the input. Input: " + in.length + " Output: " + out.length);
-               if(enable.length != 1)
-                       throw new IllegalArgumentException("Tri-state enable must have exactly one bit, not " + enable.length + ".");
-               this.in = in;
-               in.addObserver(this);
-               this.enable = enable;
-               enable.addObserver(this);
-               outI = out.createInput();
-       }
-       
-       @Override
-       protected void compute()
-       {
-               if(enable.getValue() == Bit.ONE)
-                       outI.feedSignals(in.getValues());
-               else
-                       outI.clearSignals();
-       }
-
-}