Made ManualSwitch non-final to make GUIManualSwitch possible
[Mograsim.git] / era.mi / src / era / mi / logic / components / BasicComponent.java
index ad93dfe..4e56c34 100644 (file)
@@ -1,10 +1,15 @@
 package era.mi.logic.components;
 
+import era.mi.logic.Bit;
 import era.mi.logic.Simulation;
-import era.mi.logic.WireArray;
-import era.mi.logic.WireArrayObserver;
+import era.mi.logic.wires.WireArray;
+import era.mi.logic.wires.WireArrayObserver;
 
-public abstract class BasicComponent implements WireArrayObserver
+/**
+ * A basic component that recomputes all outputs (with a delay), when it is updated.
+ * @author Fabian Stemmler
+ */
+public abstract class BasicComponent implements WireArrayObserver, Component
 {
        private int processTime;
        
@@ -20,7 +25,7 @@ public abstract class BasicComponent implements WireArrayObserver
        }
        
        @Override
-       public void update(WireArray initiator)
+       public void update(WireArray initiator, Bit[] oldValues)
        {
                Simulation.TIMELINE.addEvent((e) -> {compute();}, processTime);
        }