ea87e78e36a232f8c7929a2aeaa2c1e0a101569b
[Mograsim.git] / net.mograsim.logic.model / src / net / mograsim / logic / model / modeladapter / componentadapters / NoLogicAdapter.java
1 package net.mograsim.logic.model.modeladapter.componentadapters;
2
3 import java.util.Map;
4
5 import net.mograsim.logic.core.timeline.Timeline;
6 import net.mograsim.logic.core.wires.CoreWire;
7 import net.mograsim.logic.model.model.components.ModelComponent;
8 import net.mograsim.logic.model.model.wires.Pin;
9 import net.mograsim.logic.model.modeladapter.CoreModelParameters;
10
11 /**
12  * For ModelComponents that do not have any simulation logic behaviour
13  *
14  * @author Christian Femers
15  */
16 public class NoLogicAdapter<T extends ModelComponent> implements ComponentAdapter<T>
17 {
18         private final Class<T> modelComponentClass;
19
20         public NoLogicAdapter(Class<T> modelComponentClass)
21         {
22                 this.modelComponentClass = modelComponentClass;
23         }
24
25         @Override
26         public Class<T> getSupportedClass()
27         {
28                 return modelComponentClass;
29         }
30
31         @Override
32         public void createAndLinkComponent(Timeline timeline, CoreModelParameters params, T modelComponent, Map<Pin, CoreWire> logicWiresPerPin)
33         {
34                 // do nothing
35         }
36 }