import net.mograsim.logic.model.model.components.submodels.SubmodelComponent;
import net.mograsim.logic.model.model.wires.ModelWire;
import net.mograsim.logic.model.model.wires.Pin;
-import net.mograsim.logic.model.modeladapter.CoreModelParameters;
+import net.mograsim.logic.model.modeladapter.CoreModelParameters.CoreModelParametersBuilder;
import net.mograsim.logic.model.modeladapter.LogicCoreAdapter;
+import net.mograsim.logic.model.preferences.DefaultRenderPreferences;
import net.mograsim.logic.model.serializing.IndirectModelComponentCreator;
import net.mograsim.logic.model.util.ModellingTool;
private DebugState debug = DebugState.NO_DEBUG;
private Set<String> wireDebugChangeSet;
private boolean debugWires = false;
- public int debugEventThreshold = 10_000;
+ public int debugEventThreshold = 20_000;
public int debugEventCount = 500;
private int eventCounter;
component.getPins().values().forEach(this::extendModelPin);
// Create core model
- CoreModelParameters params = new CoreModelParameters();
- params.gateProcessTime = 50;
- params.wireTravelTime = 10;
- timeline = LogicCoreAdapter.convert(logicModel, params);
+ CoreModelParametersBuilder paramsBuilder = new CoreModelParametersBuilder();
+ paramsBuilder.gateProcessTime = 50;
+ paramsBuilder.hardcodedComponentProcessTime = paramsBuilder.gateProcessTime * 5;
+ paramsBuilder.wireTravelTime = 10;
+ timeline = LogicCoreAdapter.convert(logicModel, paramsBuilder.build());
timelineField.ifPresent(f -> setField(f, timeline));
// Bind switches/displays to this test class
{
try
{
- new LogicUIStandaloneGUI(logicModel).run();
+ new LogicUIStandaloneGUI(logicModel, new DefaultRenderPreferences()).run();
logicModel.setRedrawHandler(null);
}
catch (Exception e)