X-Git-Url: https://mograsim.net/gitweb/?a=blobdiff_plain;f=era.mi%2Fsrc%2Fera%2Fmi%2Flogic%2Fcomponents%2FBitDisplay.java;h=f34c9239f1c89e7cbdabe45977152d6d29d75d0e;hb=b7ce41467a2cbd9f45554982730741810e99feaa;hp=940f69c05916a73f51dca817459d7d74e15c67ba;hpb=d31f9734d6aa233682ef80d7e9322dd500123bfd;p=Mograsim.git diff --git a/era.mi/src/era/mi/logic/components/BitDisplay.java b/era.mi/src/era/mi/logic/components/BitDisplay.java index 940f69c0..f34c9239 100644 --- a/era.mi/src/era/mi/logic/components/BitDisplay.java +++ b/era.mi/src/era/mi/logic/components/BitDisplay.java @@ -1,20 +1,23 @@ package era.mi.logic.components; -import java.util.Arrays; +import java.util.List; -import era.mi.logic.Bit; -import era.mi.logic.wires.WireArray; +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(ReadEnd in) { super(1); this.in = in; in.addObserver(this); + compute(); } @Override @@ -23,13 +26,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 getAllInputs() + { + return List.of(in); + } + + @Override + public List getAllOutputs() + { + return List.of(); } }