X-Git-Url: https://mograsim.net/gitweb/?a=blobdiff_plain;f=era.mi%2Fsrc%2Fera%2Fmi%2Flogic%2Fcomponents%2FConnector.java;h=558dbb69fa554a60202d547212f7c0ace4549ecb;hb=daa558fbbd87e334d370f1a9d791adc6a3c14ca6;hp=4f211bfe69531fa66fe68ef24cf1e6367791cd98;hpb=8348742ffefa0642daf2061ff6258c821bafdf3f;p=Mograsim.git diff --git a/era.mi/src/era/mi/logic/components/Connector.java b/era.mi/src/era/mi/logic/components/Connector.java index 4f211bfe..558dbb69 100644 --- a/era.mi/src/era/mi/logic/components/Connector.java +++ b/era.mi/src/era/mi/logic/components/Connector.java @@ -2,20 +2,21 @@ package era.mi.logic.components; import java.util.List; -import era.mi.logic.Simulation; +import era.mi.logic.timeline.Timeline; import era.mi.logic.types.BitVector; import era.mi.logic.wires.Wire.ReadEnd; import era.mi.logic.wires.Wire.ReadWriteEnd; import era.mi.logic.wires.WireObserver; -public class Connector implements WireObserver, Component +public class Connector extends Component implements WireObserver { private boolean connected; private final ReadWriteEnd a; private final ReadWriteEnd b; - public Connector(ReadWriteEnd a, ReadWriteEnd b) + public Connector(Timeline timeline, ReadWriteEnd a, ReadWriteEnd b) { + super(timeline); if (a.length() != b.length()) throw new IllegalArgumentException(String.format("WireArray width does not match: %d, %d", a.length(), b.length())); this.a = a; @@ -50,7 +51,7 @@ public class Connector implements WireObserver, Component public void update(ReadEnd initiator, BitVector oldValues) { if (connected) - Simulation.TIMELINE.addEvent(e -> update(initiator), 1); + timeline.addEvent(e -> update(initiator), 1); } private void update(ReadEnd initiator)