X-Git-Url: https://mograsim.net/gitweb/?a=blobdiff_plain;f=era.mi%2Fsrc%2Fera%2Fmi%2Flogic%2Fcomponents%2FMerger.java;fp=era.mi%2Fsrc%2Fera%2Fmi%2Flogic%2Fcomponents%2FMerger.java;h=591bfc1bac47da336df2993fc46d7fd7efb5bd1f;hb=bcf8d773c7a836c2ee17e17a49c296ebf31d2777;hp=534b2ca6b5a966a2e2b00d123020bc2fa7fe6c18;hpb=7f37c7b2431309e49a0ee116d1ee6c173272e926;p=Mograsim.git diff --git a/era.mi/src/era/mi/logic/components/Merger.java b/era.mi/src/era/mi/logic/components/Merger.java index 534b2ca6..591bfc1b 100644 --- a/era.mi/src/era/mi/logic/components/Merger.java +++ b/era.mi/src/era/mi/logic/components/Merger.java @@ -1,10 +1,15 @@ package era.mi.logic.components; +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.wires.WireArray.WireArrayInput; import era.mi.logic.wires.WireArrayObserver; -public class Merger implements WireArrayObserver +public class Merger implements WireArrayObserver, Component { private WireArrayInput outI; private WireArray[] inputs; @@ -46,7 +51,7 @@ public class Merger implements WireArrayObserver } @Override - public void update(WireArray initiator) + public void update(WireArray initiator, Bit[] oldValues) { int index = find(initiator); int beginning = beginningIndex[index]; @@ -65,4 +70,16 @@ public class Merger implements WireArrayObserver { return inputs.clone(); } + + @Override + public List getAllInputs() + { + return Collections.unmodifiableList(Arrays.asList(inputs)); + } + + @Override + public List getAllOutputs() + { + return Collections.unmodifiableList(Arrays.asList(outI.owner)); + } }