Added RegisterGroups for MachineDefinition
[Mograsim.git] / plugins / net.mograsim.machine / src / net / mograsim / machine / Machine.java
index 8325068..ed21957 100644 (file)
@@ -1,5 +1,7 @@
 package net.mograsim.machine;
 
+import java.util.function.Consumer;
+
 import net.mograsim.logic.core.components.CoreClock;
 import net.mograsim.logic.core.timeline.Timeline;
 import net.mograsim.logic.core.types.BitVector;
@@ -15,12 +17,17 @@ public interface Machine
 
        LogicModel getModel();
 
+       // TODO replace with HLS references
        CoreClock getClock();
 
        BitVector getRegister(Register r);
 
        void setRegister(Register r, BitVector value);
 
+       void addRegisterListener(Register r, Consumer<BitVector> listener);
+
+       void removeRegisterListener(Register r, Consumer<BitVector> listener);
+
        Timeline getTimeline();
 
        AssignableMainMemory getMainMemory();