1 package mograsim.logic.ui;
3 import java.util.function.Consumer;
5 import mograsim.logic.core.timeline.Timeline;
6 import mograsim.logic.ui.model.ViewModel;
7 import mograsim.logic.ui.modeladapter.LogicModelParameters;
8 import mograsim.logic.ui.modeladapter.ViewLogicModelAdapter;
10 public class SimpleLogicUIStandalone
12 public static void executeVisualisation(Consumer<ViewModel> setupViewModel)
15 ViewModel viewModel = new ViewModel();
16 setupViewModel.accept(viewModel);
18 // convert to logic model
19 LogicModelParameters params = new LogicModelParameters();
20 params.gateProcessTime = 50;
21 params.wireTravelTime = 10;
22 Timeline timeline = ViewLogicModelAdapter.convert(viewModel, params);
24 // initialize UI and executer
25 LogicUIStandaloneGUI ui = new LogicUIStandaloneGUI(viewModel);
26 LogicExecuter exec = new LogicExecuter(timeline);
29 exec.startLiveExecution();
31 exec.stopLiveExecution();
34 private SimpleLogicUIStandalone()
36 throw new UnsupportedOperationException("No SimpleLogicUIStandalone instances");