Timeline now passed via constructor
[Mograsim.git] / era.mi / src / era / mi / logic / components / BitDisplay.java
index 051010b..d8691f3 100644 (file)
@@ -1,21 +1,21 @@
 package era.mi.logic.components;
 
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collections;
 import java.util.List;
 
-import era.mi.logic.Bit;
-import era.mi.logic.wires.WireArray;
+import era.mi.logic.timeline.Timeline;
+import era.mi.logic.types.Bit;
+import era.mi.logic.types.BitVector;
+import era.mi.logic.wires.Wire.ReadEnd;
+import era.mi.logic.wires.Wire.ReadWriteEnd;
 
 public class BitDisplay extends BasicComponent
 {
-       private final WireArray in;
-       private Bit[] displayedValue;
+       private final ReadEnd in;
+       private BitVector displayedValue;
 
-       public BitDisplay(WireArray in)
+       public BitDisplay(Timeline timeline, ReadEnd in)
        {
-               super(1);
+               super(timeline, 1);
                this.in = in;
                in.addObserver(this);
                compute();
@@ -27,25 +27,25 @@ public class BitDisplay extends BasicComponent
                displayedValue = in.getValues();
        }
 
-       public Bit[] getDisplayedValue()
+       public BitVector getDisplayedValue()
        {
                return displayedValue;
        }
 
        public boolean isDisplaying(Bit... values)
        {
-               return Arrays.equals(displayedValue, values);
+               return displayedValue.equals(BitVector.of(values));
        }
 
        @Override
-       public List<WireArray> getAllInputs()
+       public List<ReadEnd> getAllInputs()
        {
-               return Collections.unmodifiableList(Arrays.asList(in));
+               return List.of(in);
        }
 
        @Override
-       public List<WireArray> getAllOutputs()
+       public List<ReadWriteEnd> getAllOutputs()
        {
-               return Collections.unmodifiableList(new ArrayList<WireArray>());
+               return List.of();
        }
 }