Rough machine extension point implementation
[Mograsim.git] / net.mograsim.machine / src / net / mograsim / machine / Machine.java
1 package net.mograsim.machine;
2
3 import net.mograsim.logic.core.components.Clock;
4 import net.mograsim.logic.core.timeline.Timeline;
5 import net.mograsim.logic.core.types.BitVector;
6 import net.mograsim.logic.model.model.ViewModel;
7
8 public interface Machine {
9         MachineDefinition getDefinition();
10         
11         void reset();
12         
13         ViewModel getModel();
14         
15         Clock getClock();
16         
17         BitVector getRegister(Register r);
18         
19         void setRegister(Register r, BitVector value);
20
21         Timeline getTimeline();
22 }