Created model for the logic Clock
[Mograsim.git] / net.mograsim.logic.model / src / net / mograsim / logic / model / modeladapter / componentadapters / ClockAdapter.java
1 package net.mograsim.logic.model.modeladapter.componentadapters;
2
3 import java.util.Map;
4
5 import net.mograsim.logic.core.components.Clock;
6 import net.mograsim.logic.core.timeline.Timeline;
7 import net.mograsim.logic.core.wires.Wire;
8 import net.mograsim.logic.core.wires.Wire.ReadWriteEnd;
9 import net.mograsim.logic.model.model.components.atomic.GUIClock;
10 import net.mograsim.logic.model.model.wires.Pin;
11 import net.mograsim.logic.model.modeladapter.LogicModelParameters;
12
13 public class ClockAdapter implements ComponentAdapter<GUIClock>
14 {
15
16         @Override
17         public Class<GUIClock> getSupportedClass()
18         {
19                 return GUIClock.class;
20         }
21
22         @Override
23         public void createAndLinkComponent(Timeline timeline, LogicModelParameters params, GUIClock guiClock, Map<Pin, Wire> logicWiresPerPin)
24         {
25                 ReadWriteEnd out = logicWiresPerPin.get(guiClock.getOutputPin()).createReadWriteEnd();
26                 Clock c = new Clock(timeline, out, guiClock.getDelta());
27                 guiClock.setLogicModelBinding(c);
28         }
29
30 }