Merge branch 'fusebug' into development
[Mograsim.git] / net.mograsim.logic.model / src / net / mograsim / logic / model / modeladapter / componentadapters / ManualSwitchAdapter.java
1 package net.mograsim.logic.model.modeladapter.componentadapters;
2
3 import java.util.Map;
4
5 import net.mograsim.logic.core.components.ManualSwitch;
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.GUIManualSwitch;
10 import net.mograsim.logic.model.model.wires.Pin;
11 import net.mograsim.logic.model.modeladapter.LogicModelParameters;
12
13 public class ManualSwitchAdapter implements ComponentAdapter<GUIManualSwitch>
14 {
15         @Override
16         public Class<GUIManualSwitch> getSupportedClass()
17         {
18                 return GUIManualSwitch.class;
19         }
20
21         @Override
22         public void createAndLinkComponent(Timeline timeline, LogicModelParameters params, GUIManualSwitch guiComponent,
23                         Map<Pin, Wire> logicWiresPerPin)
24         {
25                 ReadWriteEnd end = logicWiresPerPin.get(guiComponent.getOutputPin()).createReadWriteEnd();
26                 ManualSwitch manualSwitch = new ManualSwitch(timeline, end);
27                 guiComponent.setLogicModelBinding(manualSwitch);
28         }
29 }