X-Git-Url: https://mograsim.net/gitweb/?a=blobdiff_plain;f=era.mi%2Fsrc%2Fera%2Fmi%2Flogic%2Fcomponents%2Fgates%2FNotGate.java;h=685bc2290de7b5404ac4b666cc3569b2b05c1bb5;hb=80bfbd8ebf0ad8a7ad98584544a0c73f43e6f3b6;hp=1aba6b8643fe4b33a3e579c37e7f2969f142c0fc;hpb=ebe86d1517aea138ffb6485b7bd2dff31fdb1253;p=Mograsim.git diff --git a/era.mi/src/era/mi/logic/components/gates/NotGate.java b/era.mi/src/era/mi/logic/components/gates/NotGate.java index 1aba6b86..685bc229 100644 --- a/era.mi/src/era/mi/logic/components/gates/NotGate.java +++ b/era.mi/src/era/mi/logic/components/gates/NotGate.java @@ -1,37 +1,50 @@ package era.mi.logic.components.gates; -import era.mi.logic.Util; +import java.util.List; + import era.mi.logic.components.BasicComponent; -import era.mi.logic.wires.WireArray; -import era.mi.logic.wires.WireArray.WireArrayInput; +import era.mi.logic.timeline.Timeline; +import era.mi.logic.wires.Wire.ReadEnd; +import era.mi.logic.wires.Wire.ReadWriteEnd; public class NotGate extends BasicComponent { - private WireArray in, out; - private WireArrayInput outI; + private ReadEnd in; + private ReadWriteEnd out; - - public NotGate(int processTime, WireArray in, WireArray out) + public NotGate(Timeline timeline, int processTime, ReadEnd in, ReadWriteEnd out) { - super(processTime); + super(timeline, processTime); this.in = in; in.addObserver(this); this.out = out; - outI = out.createInput(); } - - public void compute() + + @Override + protected void compute() { - outI.feedSignals(Util.not(in.getValues())); + out.feedSignals(in.getValues().not()); } - public WireArray getIn() + public ReadEnd getIn() { return in; } - public WireArray getOut() + public ReadEnd getOut() { return out; } + + @Override + public List getAllInputs() + { + return List.of(in); + } + + @Override + public List getAllOutputs() + { + return List.of(out); + } }