From 3a52b6bffe52db5dd5ca907b4b3dfd368a58e14f Mon Sep 17 00:00:00 2001 From: Daniel Kirschten Date: Thu, 5 Sep 2019 20:17:16 +0200 Subject: [PATCH] Renamed ViewModel to LogicModel --- .../model/am2900/components/Modeldff12.java | 4 +- .../am2900/components/Modeldff4_finewe.java | 4 +- .../model/am2900/components/Modelinc12.java | 4 +- .../model/am2900/components/Modelnor12.java | 4 +- .../model/am2900/components/Modelram5_12.java | 4 +- .../model/am2900/components/Modelsel4_12.java | 4 +- .../am2904/ModelAm2904RegCTInstrDecode.java | 4 +- .../am2904/ModelAm2904ShiftInstrDecode.java | 4 +- .../am2910/ModelAm2910InstrPLA.java | 4 +- .../components/am2910/ModelAm2910RegCntr.java | 4 +- .../components/am2910/ModelAm2910SP.java | 4 +- .../model/am2900/machine/Am2900Machine.java | 16 +++--- .../examples/ModelComponentTestbench.java | 4 +- .../ReserializeJSONsSettingUsages.java | 6 +-- .../model/am2900/am2901/Am2901Testbench.java | 4 +- .../model/am2900/am2904/Am2904Testbench.java | 6 +-- .../model/am2900/am2910/Am2910Testbench.java | 4 +- .../model/am2900/util/SwitchWithDisplay.java | 4 +- .../am2900/util/TestEnvironmentHelper.java | 34 ++++++------ .../mograsim/logic/model/editor/Editor.java | 6 +-- .../logic/model/editor/SaveLoadManager.java | 4 +- .../model/editor/handles/ComponentHandle.java | 6 +-- .../model/editor/handles/HandleManager.java | 6 +-- .../model/editor/handles/WireHandle.java | 6 +-- .../mograsim/logic/model/LogicUICanvas.java | 12 ++--- .../mograsim/logic/model/LogicUIRenderer.java | 6 +-- .../logic/model/LogicUIStandaloneGUI.java | 4 +- .../logic/model/SimpleLogicUIStandalone.java | 32 +++++------ .../ClickableSubmodelComponentsTest.java | 4 +- .../logic/model/examples/RSLatchExample.java | 4 +- .../model/{ViewModel.java => LogicModel.java} | 4 +- ...ifiable.java => LogicModelModifiable.java} | 2 +- .../model/components/ModelComponent.java | 14 ++--- .../model/components/atomic/ModelAndGate.java | 6 +-- .../components/atomic/ModelBitDisplay.java | 6 +-- .../model/components/atomic/ModelClock.java | 6 +-- .../components/atomic/ModelFixedOutput.java | 4 +- .../components/atomic/ModelManualSwitch.java | 6 +-- .../model/components/atomic/ModelMerger.java | 6 +-- .../components/atomic/ModelNandGate.java | 6 +-- .../model/components/atomic/ModelNotGate.java | 6 +-- .../model/components/atomic/ModelOrGate.java | 6 +-- .../components/atomic/ModelSplitter.java | 6 +-- .../components/atomic/ModelTextComponent.java | 6 +-- .../atomic/ModelTriStateBuffer.java | 6 +-- ...pleRectangularHardcodedModelComponent.java | 4 +- .../atomic/SimpleRectangularModelGate.java | 4 +- .../SimpleRectangularSubmodelComponent.java | 6 +-- .../submodels/SubmodelComponent.java | 12 ++--- .../submodels/SubmodelInterface.java | 4 +- .../logic/model/model/wires/ModelWire.java | 38 ++++++------- .../model/wires/ModelWireCrossPoint.java | 6 +-- .../mograsim/logic/model/model/wires/Pin.java | 2 +- .../model/modeladapter/LogicCoreAdapter.java | 16 +++--- .../DeserializedSubmodelComponent.java | 8 +-- .../IndirectModelComponentCreator.java | 14 ++--- .../LegacySubmodelComponentSerializer.java | 36 ++++++------- ...ModelParams.java => LogicModelParams.java} | 4 +- ...ializer.java => LogicModelSerializer.java} | 54 +++++++++---------- .../serializing/SubmodelComponentParams.java | 2 +- .../SubmodelComponentSerializer.java | 42 +++++++-------- .../logic/model/util/ModellingTool.java | 8 +-- .../src/net/mograsim/machine/Machine.java | 4 +- .../standard/memory/ModelMemoryWA.java | 4 +- .../mograsim/plugin/SimulationPreview.java | 4 +- 65 files changed, 287 insertions(+), 287 deletions(-) rename net.mograsim.logic.model/src/net/mograsim/logic/model/model/{ViewModel.java => LogicModel.java} (99%) rename net.mograsim.logic.model/src/net/mograsim/logic/model/model/{ViewModelModifiable.java => LogicModelModifiable.java} (96%) rename net.mograsim.logic.model/src/net/mograsim/logic/model/serializing/{ViewModelParams.java => LogicModelParams.java} (86%) rename net.mograsim.logic.model/src/net/mograsim/logic/model/serializing/{ViewModelSerializer.java => LogicModelSerializer.java} (68%) diff --git a/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/Modeldff12.java b/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/Modeldff12.java index 954d5c0c..a3ec2f5f 100644 --- a/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/Modeldff12.java +++ b/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/Modeldff12.java @@ -11,7 +11,7 @@ import net.mograsim.logic.core.types.Bit; import net.mograsim.logic.core.types.BitVector; import net.mograsim.logic.core.wires.CoreWire.ReadEnd; import net.mograsim.logic.core.wires.CoreWire.ReadWriteEnd; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.components.atomic.SimpleRectangularHardcodedModelComponent; import net.mograsim.logic.model.model.wires.Pin; import net.mograsim.logic.model.model.wires.PinUsage; @@ -20,7 +20,7 @@ import net.mograsim.logic.model.snippets.symbolrenderers.PinNamesSymbolRenderer. public class Modeldff12 extends SimpleRectangularHardcodedModelComponent { - public Modeldff12(ViewModelModifiable model, String name) + public Modeldff12(LogicModelModifiable model, String name) { super(model, "dff12", name, "D flip flop\n12 bits"); setSize(40, 20); diff --git a/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/Modeldff4_finewe.java b/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/Modeldff4_finewe.java index eb496660..5b565ad2 100644 --- a/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/Modeldff4_finewe.java +++ b/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/Modeldff4_finewe.java @@ -13,7 +13,7 @@ import net.mograsim.logic.core.types.Bit; import net.mograsim.logic.core.types.BitVector; import net.mograsim.logic.core.wires.CoreWire.ReadEnd; import net.mograsim.logic.core.wires.CoreWire.ReadWriteEnd; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.components.atomic.SimpleRectangularHardcodedModelComponent; import net.mograsim.logic.model.model.wires.Pin; import net.mograsim.logic.model.model.wires.PinUsage; @@ -22,7 +22,7 @@ import net.mograsim.logic.model.snippets.symbolrenderers.PinNamesSymbolRenderer. public class Modeldff4_finewe extends SimpleRectangularHardcodedModelComponent { - public Modeldff4_finewe(ViewModelModifiable model, String name) + public Modeldff4_finewe(LogicModelModifiable model, String name) { super(model, "dff4_finewe", name, "D flip flop\n4 bits"); setSize(35, 90); diff --git a/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/Modelinc12.java b/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/Modelinc12.java index 0ba3404e..7979ae3c 100644 --- a/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/Modelinc12.java +++ b/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/Modelinc12.java @@ -11,7 +11,7 @@ import java.util.Map; import net.mograsim.logic.core.types.Bit; import net.mograsim.logic.core.wires.CoreWire.ReadEnd; import net.mograsim.logic.core.wires.CoreWire.ReadWriteEnd; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.components.atomic.SimpleRectangularHardcodedModelComponent; import net.mograsim.logic.model.model.wires.Pin; import net.mograsim.logic.model.model.wires.PinUsage; @@ -20,7 +20,7 @@ import net.mograsim.logic.model.snippets.symbolrenderers.PinNamesSymbolRenderer. public class Modelinc12 extends SimpleRectangularHardcodedModelComponent { - public Modelinc12(ViewModelModifiable model, String name) + public Modelinc12(LogicModelModifiable model, String name) { super(model, "inc12", name, "Incrementer"); setSize(40, 20); diff --git a/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/Modelnor12.java b/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/Modelnor12.java index 9ff945d8..6ca7b14e 100644 --- a/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/Modelnor12.java +++ b/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/Modelnor12.java @@ -11,7 +11,7 @@ import java.util.Map; import net.mograsim.logic.core.types.Bit; import net.mograsim.logic.core.wires.CoreWire.ReadEnd; import net.mograsim.logic.core.wires.CoreWire.ReadWriteEnd; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.components.atomic.SimpleRectangularHardcodedModelComponent; import net.mograsim.logic.model.model.wires.Pin; import net.mograsim.logic.model.model.wires.PinUsage; @@ -20,7 +20,7 @@ import net.mograsim.logic.model.snippets.symbolrenderers.PinNamesSymbolRenderer. public class Modelnor12 extends SimpleRectangularHardcodedModelComponent { - public Modelnor12(ViewModelModifiable model, String name) + public Modelnor12(LogicModelModifiable model, String name) { super(model, "nor12", name, "=0"); setSize(35, 20); diff --git a/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/Modelram5_12.java b/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/Modelram5_12.java index 6658f816..5be6303e 100644 --- a/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/Modelram5_12.java +++ b/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/Modelram5_12.java @@ -15,7 +15,7 @@ import net.mograsim.logic.core.types.Bit; import net.mograsim.logic.core.types.BitVector; import net.mograsim.logic.core.wires.CoreWire.ReadEnd; import net.mograsim.logic.core.wires.CoreWire.ReadWriteEnd; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.components.atomic.SimpleRectangularHardcodedModelComponent; import net.mograsim.logic.model.model.wires.Pin; import net.mograsim.logic.model.model.wires.PinUsage; @@ -24,7 +24,7 @@ import net.mograsim.logic.model.snippets.symbolrenderers.PinNamesSymbolRenderer. public class Modelram5_12 extends SimpleRectangularHardcodedModelComponent { - public Modelram5_12(ViewModelModifiable model, String name) + public Modelram5_12(LogicModelModifiable model, String name) { super(model, "ram5_12", name, "RAM\n5 x 12 Bit"); setSize(40, 40); diff --git a/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/Modelsel4_12.java b/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/Modelsel4_12.java index 3d26c191..b13a4d02 100644 --- a/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/Modelsel4_12.java +++ b/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/Modelsel4_12.java @@ -12,7 +12,7 @@ import net.mograsim.logic.core.types.Bit; import net.mograsim.logic.core.types.BitVector; import net.mograsim.logic.core.wires.CoreWire.ReadEnd; import net.mograsim.logic.core.wires.CoreWire.ReadWriteEnd; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.components.atomic.SimpleRectangularHardcodedModelComponent; import net.mograsim.logic.model.model.wires.Pin; import net.mograsim.logic.model.model.wires.PinUsage; @@ -21,7 +21,7 @@ import net.mograsim.logic.model.snippets.symbolrenderers.PinNamesSymbolRenderer. public class Modelsel4_12 extends SimpleRectangularHardcodedModelComponent { - public Modelsel4_12(ViewModelModifiable model, String name) + public Modelsel4_12(LogicModelModifiable model, String name) { super(model, "sel4_12", name, "4-way SEL\n12 bit"); setSize(80, 40); diff --git a/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/am2904/ModelAm2904RegCTInstrDecode.java b/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/am2904/ModelAm2904RegCTInstrDecode.java index a6ebd2b3..999f8bf6 100644 --- a/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/am2904/ModelAm2904RegCTInstrDecode.java +++ b/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/am2904/ModelAm2904RegCTInstrDecode.java @@ -11,7 +11,7 @@ import net.mograsim.logic.core.types.Bit; import net.mograsim.logic.core.types.BitVector; import net.mograsim.logic.core.wires.CoreWire.ReadEnd; import net.mograsim.logic.core.wires.CoreWire.ReadWriteEnd; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.components.atomic.SimpleRectangularHardcodedModelComponent; import net.mograsim.logic.model.model.wires.Pin; import net.mograsim.logic.model.model.wires.PinUsage; @@ -20,7 +20,7 @@ import net.mograsim.logic.model.snippets.symbolrenderers.PinNamesSymbolRenderer. public class ModelAm2904RegCTInstrDecode extends SimpleRectangularHardcodedModelComponent { - public ModelAm2904RegCTInstrDecode(ViewModelModifiable model, String name) + public ModelAm2904RegCTInstrDecode(LogicModelModifiable model, String name) { super(model, "Am2904RegCTInstrDecode", name, "Instruction\ndecode"); setSize(80, 80); diff --git a/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/am2904/ModelAm2904ShiftInstrDecode.java b/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/am2904/ModelAm2904ShiftInstrDecode.java index 96b6222d..74cdd440 100644 --- a/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/am2904/ModelAm2904ShiftInstrDecode.java +++ b/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/am2904/ModelAm2904ShiftInstrDecode.java @@ -12,7 +12,7 @@ import net.mograsim.logic.core.types.Bit; import net.mograsim.logic.core.types.BitVector; import net.mograsim.logic.core.wires.CoreWire.ReadEnd; import net.mograsim.logic.core.wires.CoreWire.ReadWriteEnd; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.components.atomic.SimpleRectangularHardcodedModelComponent; import net.mograsim.logic.model.model.wires.Pin; import net.mograsim.logic.model.model.wires.PinUsage; @@ -21,7 +21,7 @@ import net.mograsim.logic.model.snippets.symbolrenderers.PinNamesSymbolRenderer. public class ModelAm2904ShiftInstrDecode extends SimpleRectangularHardcodedModelComponent { - public ModelAm2904ShiftInstrDecode(ViewModelModifiable model, String name) + public ModelAm2904ShiftInstrDecode(LogicModelModifiable model, String name) { super(model, "Am2904ShiftInstrDecode", name, "Shift \ninstruction\ndecode"); setSize(60, 80); diff --git a/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/am2910/ModelAm2910InstrPLA.java b/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/am2910/ModelAm2910InstrPLA.java index 5929bc27..414c0a50 100644 --- a/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/am2910/ModelAm2910InstrPLA.java +++ b/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/am2910/ModelAm2910InstrPLA.java @@ -10,7 +10,7 @@ import java.util.Map; import net.mograsim.logic.core.types.Bit; import net.mograsim.logic.core.wires.CoreWire.ReadEnd; import net.mograsim.logic.core.wires.CoreWire.ReadWriteEnd; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.components.atomic.SimpleRectangularHardcodedModelComponent; import net.mograsim.logic.model.model.wires.Pin; import net.mograsim.logic.model.model.wires.PinUsage; @@ -19,7 +19,7 @@ import net.mograsim.logic.model.snippets.symbolrenderers.PinNamesSymbolRenderer. public class ModelAm2910InstrPLA extends SimpleRectangularHardcodedModelComponent { - public ModelAm2910InstrPLA(ViewModelModifiable model, String name) + public ModelAm2910InstrPLA(LogicModelModifiable model, String name) { super(model, "Am2910InstrPLA", name, "Instr.\nPLA"); setSize(30, 85); diff --git a/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/am2910/ModelAm2910RegCntr.java b/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/am2910/ModelAm2910RegCntr.java index 534dea41..193b58bc 100644 --- a/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/am2910/ModelAm2910RegCntr.java +++ b/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/am2910/ModelAm2910RegCntr.java @@ -11,7 +11,7 @@ import net.mograsim.logic.core.types.Bit; import net.mograsim.logic.core.types.BitVector; import net.mograsim.logic.core.wires.CoreWire.ReadEnd; import net.mograsim.logic.core.wires.CoreWire.ReadWriteEnd; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.components.atomic.SimpleRectangularHardcodedModelComponent; import net.mograsim.logic.model.model.wires.Pin; import net.mograsim.logic.model.model.wires.PinUsage; @@ -20,7 +20,7 @@ import net.mograsim.logic.model.snippets.symbolrenderers.PinNamesSymbolRenderer. public class ModelAm2910RegCntr extends SimpleRectangularHardcodedModelComponent { - public ModelAm2910RegCntr(ViewModelModifiable model, String name) + public ModelAm2910RegCntr(LogicModelModifiable model, String name) { super(model, "Am2910RegCntr", name, "Register/\nCounter"); setSize(40, 40); diff --git a/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/am2910/ModelAm2910SP.java b/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/am2910/ModelAm2910SP.java index 60787f04..a4491d20 100644 --- a/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/am2910/ModelAm2910SP.java +++ b/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/components/am2910/ModelAm2910SP.java @@ -11,7 +11,7 @@ import net.mograsim.logic.core.types.Bit; import net.mograsim.logic.core.types.BitVector; import net.mograsim.logic.core.wires.CoreWire.ReadEnd; import net.mograsim.logic.core.wires.CoreWire.ReadWriteEnd; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.components.atomic.SimpleRectangularHardcodedModelComponent; import net.mograsim.logic.model.model.wires.Pin; import net.mograsim.logic.model.model.wires.PinUsage; @@ -20,7 +20,7 @@ import net.mograsim.logic.model.snippets.symbolrenderers.PinNamesSymbolRenderer. public class ModelAm2910SP extends SimpleRectangularHardcodedModelComponent { - public ModelAm2910SP(ViewModelModifiable model, String name) + public ModelAm2910SP(LogicModelModifiable model, String name) { super(model, "Am2910SP", name, "Stack\npointer"); setSize(40, 30); diff --git a/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/machine/Am2900Machine.java b/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/machine/Am2900Machine.java index a7719478..bf98d73d 100644 --- a/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/machine/Am2900Machine.java +++ b/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/machine/Am2900Machine.java @@ -3,8 +3,8 @@ package net.mograsim.logic.model.am2900.machine; import net.mograsim.logic.core.components.CoreClock; import net.mograsim.logic.core.timeline.Timeline; import net.mograsim.logic.core.types.BitVector; -import net.mograsim.logic.model.model.ViewModel; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModel; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.modeladapter.CoreModelParameters; import net.mograsim.logic.model.modeladapter.LogicCoreAdapter; import net.mograsim.logic.model.serializing.IndirectModelComponentCreator; @@ -15,20 +15,20 @@ import net.mograsim.machine.Register; public class Am2900Machine implements Machine { private Am2900MachineDefinition machineDefinition; - private ViewModelModifiable viewModel; + private LogicModelModifiable logicModel; private Timeline timeline; private CoreClock clock; public Am2900Machine(Am2900MachineDefinition am2900MachineDefinition) { this.machineDefinition = am2900MachineDefinition; - viewModel = new ViewModelModifiable(); - IndirectModelComponentCreator.createComponent(viewModel, + logicModel = new LogicModelModifiable(); + IndirectModelComponentCreator.createComponent(logicModel, "resloader:Am2900Loader:jsonres:net/mograsim/logic/model/am2900/components/ModelAm2900.json"); CoreModelParameters params = new CoreModelParameters(); params.gateProcessTime = 50; params.wireTravelTime = 10; - timeline = LogicCoreAdapter.convert(viewModel, params); + timeline = LogicCoreAdapter.convert(logicModel, params); } @Override @@ -45,9 +45,9 @@ public class Am2900Machine implements Machine } @Override - public ViewModel getModel() + public LogicModel getModel() { - return viewModel; + return logicModel; } @Override diff --git a/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/examples/ModelComponentTestbench.java b/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/examples/ModelComponentTestbench.java index 20b25dbd..38d362e4 100644 --- a/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/examples/ModelComponentTestbench.java +++ b/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/examples/ModelComponentTestbench.java @@ -6,7 +6,7 @@ import java.util.List; import net.mograsim.logic.model.SimpleLogicUIStandalone; import net.mograsim.logic.model.am2900.Am2900Loader; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.components.ModelComponent; import net.mograsim.logic.model.model.components.atomic.ModelBitDisplay; import net.mograsim.logic.model.model.components.atomic.ModelManualSwitch; @@ -23,7 +23,7 @@ public class ModelComponentTestbench } @SuppressWarnings("unused") // for ModelWires being created - public static void createTestbench(ViewModelModifiable model) + public static void createTestbench(LogicModelModifiable model) { Am2900Loader.setup(); ModelComponent comp = IndirectModelComponentCreator.createComponent(model, diff --git a/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/examples/ReserializeJSONsSettingUsages.java b/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/examples/ReserializeJSONsSettingUsages.java index 085cb8f2..a102f764 100644 --- a/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/examples/ReserializeJSONsSettingUsages.java +++ b/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/examples/ReserializeJSONsSettingUsages.java @@ -12,7 +12,7 @@ import java.util.stream.Collectors; import java.util.stream.Stream; import net.mograsim.logic.model.am2900.Am2900Loader; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.wires.ModelWire; import net.mograsim.logic.model.model.wires.MovablePin; import net.mograsim.logic.model.model.wires.Pin; @@ -52,7 +52,7 @@ public class ReserializeJSONsSettingUsages try { DeserializedSubmodelComponent comp = (DeserializedSubmodelComponent) IndirectModelComponentCreator - .createComponent(new ViewModelModifiable(), "jsonfile:" + json.toString()); + .createComponent(new LogicModelModifiable(), "jsonfile:" + json.toString()); System.out.println("Reserializing " + json); comp.getSupermodelPins().entrySet().stream().sorted(Comparator.comparing(Entry::getKey)).map(Entry::getValue).forEach(pin -> { @@ -81,7 +81,7 @@ public class ReserializeJSONsSettingUsages comp.removeSubmodelInterface(interfacePin.name); comp.addSubmodelInterface( new MovablePin(comp, interfacePin.name, interfacePin.logicWidth, usage, interfacePin.getRelX(), interfacePin.getRelY())); - ViewModelModifiable submodelModifiable = comp.getSubmodelModifiable(); + LogicModelModifiable submodelModifiable = comp.getSubmodelModifiable(); wiresConnectedToPin.forEach(w -> new ModelWire(submodelModifiable, w.getPin1(), w.getPin2())); } } \ No newline at end of file diff --git a/net.mograsim.logic.model.am2900/test/net/mograsim/logic/model/am2900/am2901/Am2901Testbench.java b/net.mograsim.logic.model.am2900/test/net/mograsim/logic/model/am2900/am2901/Am2901Testbench.java index e9ce12aa..ef760f14 100644 --- a/net.mograsim.logic.model.am2900/test/net/mograsim/logic/model/am2900/am2901/Am2901Testbench.java +++ b/net.mograsim.logic.model.am2900/test/net/mograsim/logic/model/am2900/am2901/Am2901Testbench.java @@ -9,7 +9,7 @@ import net.mograsim.logic.core.types.BitVector; import net.mograsim.logic.model.SimpleLogicUIStandalone; import net.mograsim.logic.model.SimpleLogicUIStandalone.VisualisationObjects; import net.mograsim.logic.model.am2900.Am2900Loader; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.components.ModelComponent; import net.mograsim.logic.model.model.components.atomic.ModelAndGate; import net.mograsim.logic.model.model.components.atomic.ModelBitDisplay; @@ -30,7 +30,7 @@ public class Am2901Testbench SimpleLogicUIStandalone.executeVisualisation(Am2901Testbench::createTestbench, Am2901Testbench::beforeRun); } - public static void createTestbench(ViewModelModifiable model) + public static void createTestbench(LogicModelModifiable model) { ModelComponent comp = IndirectModelComponentCreator.createComponent(model, "Am2901"); ModellingTool tool = ModellingTool.createFor(model); diff --git a/net.mograsim.logic.model.am2900/test/net/mograsim/logic/model/am2900/am2904/Am2904Testbench.java b/net.mograsim.logic.model.am2900/test/net/mograsim/logic/model/am2900/am2904/Am2904Testbench.java index 7ead54a2..e46561d5 100644 --- a/net.mograsim.logic.model.am2900/test/net/mograsim/logic/model/am2900/am2904/Am2904Testbench.java +++ b/net.mograsim.logic.model.am2900/test/net/mograsim/logic/model/am2900/am2904/Am2904Testbench.java @@ -7,7 +7,7 @@ import net.mograsim.logic.core.types.BitVector; import net.mograsim.logic.model.SimpleLogicUIStandalone; import net.mograsim.logic.model.SimpleLogicUIStandalone.VisualisationObjects; import net.mograsim.logic.model.am2900.Am2900Loader; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.components.atomic.ModelManualSwitch; import net.mograsim.logic.model.model.components.submodels.SubmodelComponent; import net.mograsim.logic.model.serializing.DeserializedSubmodelComponent; @@ -23,9 +23,9 @@ public class Am2904Testbench SimpleLogicUIStandalone.executeVisualisation(Am2904Testbench::create, Am2904Testbench::beforeRun); } - public static void create(ViewModelModifiable model) + public static void create(LogicModelModifiable model) { - // TODO replace with proper ViewModel deserialization + // TODO replace with proper LogicModel deserialization DeserializedSubmodelComponent testbench = (DeserializedSubmodelComponent) IndirectModelComponentCreator.createComponent(model, "jsonfile:Am2904Testbench.json", "testbench"); testbench.setSize(1000, 1000); diff --git a/net.mograsim.logic.model.am2900/test/net/mograsim/logic/model/am2900/am2910/Am2910Testbench.java b/net.mograsim.logic.model.am2900/test/net/mograsim/logic/model/am2900/am2910/Am2910Testbench.java index 6185a755..59ac5b14 100644 --- a/net.mograsim.logic.model.am2900/test/net/mograsim/logic/model/am2900/am2910/Am2910Testbench.java +++ b/net.mograsim.logic.model.am2900/test/net/mograsim/logic/model/am2900/am2910/Am2910Testbench.java @@ -6,7 +6,7 @@ import net.mograsim.logic.core.types.BitVector; import net.mograsim.logic.model.SimpleLogicUIStandalone; import net.mograsim.logic.model.SimpleLogicUIStandalone.VisualisationObjects; import net.mograsim.logic.model.am2900.Am2900Loader; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.components.ModelComponent; import net.mograsim.logic.model.model.components.Orientation; import net.mograsim.logic.model.model.components.atomic.ModelBitDisplay; @@ -25,7 +25,7 @@ public class Am2910Testbench } @SuppressWarnings("unused") // for ModelWires being created - public static void create(ViewModelModifiable model) + public static void create(LogicModelModifiable model) { ModelComponent am2910 = IndirectModelComponentCreator.createComponent(model, "Am2910", "Am2910"); ModelClock C = new ModelClock(model, new ModelClockParams(1000, Orientation.RIGHT)); diff --git a/net.mograsim.logic.model.am2900/test/net/mograsim/logic/model/am2900/util/SwitchWithDisplay.java b/net.mograsim.logic.model.am2900/test/net/mograsim/logic/model/am2900/util/SwitchWithDisplay.java index 27261546..c085c52e 100644 --- a/net.mograsim.logic.model.am2900/test/net/mograsim/logic/model/am2900/util/SwitchWithDisplay.java +++ b/net.mograsim.logic.model.am2900/test/net/mograsim/logic/model/am2900/util/SwitchWithDisplay.java @@ -3,7 +3,7 @@ package net.mograsim.logic.model.am2900.util; import net.mograsim.logic.core.components.CoreBitDisplay; import net.mograsim.logic.core.components.CoreManualSwitch; import net.mograsim.logic.core.types.BitVector; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.components.atomic.ModelBitDisplay; import net.mograsim.logic.model.model.components.atomic.ModelManualSwitch; import net.mograsim.logic.model.model.wires.Pin; @@ -16,7 +16,7 @@ public class SwitchWithDisplay private final ModelBitDisplay modelBitDisplay; private final ModelManualSwitch modelManualSwitch; - public SwitchWithDisplay(ViewModelModifiable model, Pin target) + public SwitchWithDisplay(LogicModelModifiable model, Pin target) { pin = target; modelBitDisplay = new ModelBitDisplay(model, pin.logicWidth); diff --git a/net.mograsim.logic.model.am2900/test/net/mograsim/logic/model/am2900/util/TestEnvironmentHelper.java b/net.mograsim.logic.model.am2900/test/net/mograsim/logic/model/am2900/util/TestEnvironmentHelper.java index a71c9de3..4bae8ec5 100644 --- a/net.mograsim.logic.model.am2900/test/net/mograsim/logic/model/am2900/util/TestEnvironmentHelper.java +++ b/net.mograsim.logic.model.am2900/test/net/mograsim/logic/model/am2900/util/TestEnvironmentHelper.java @@ -19,8 +19,8 @@ import net.mograsim.logic.model.LogicUIStandaloneGUI; import net.mograsim.logic.model.am2900.Am2900Loader; import net.mograsim.logic.model.am2900.TestableCircuit; import net.mograsim.logic.model.am2900.TestableCircuit.Result; -import net.mograsim.logic.model.model.ViewModel; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModel; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.components.ModelComponent; import net.mograsim.logic.model.model.components.atomic.ModelBitDisplay; import net.mograsim.logic.model.model.components.atomic.ModelManualSwitch; @@ -42,7 +42,7 @@ public class TestEnvironmentHelper private ModelComponent component; private Timeline timeline; - private ViewModelModifiable viewModel; + private LogicModelModifiable logicModel; private ModellingTool modellingTool; private HashMap idSwitchMap = new HashMap<>(); private HashMap idDisplayMap = new HashMap<>(); @@ -78,11 +78,11 @@ public class TestEnvironmentHelper public void setup(DebugState debug) { this.debug = debug; - // Create view model - viewModel = new ViewModelModifiable(); - modellingTool = ModellingTool.createFor(viewModel); + // Create logic model + logicModel = new LogicModelModifiable(); + modellingTool = ModellingTool.createFor(logicModel); Am2900Loader.setup(); - component = IndirectModelComponentCreator.createComponent(viewModel, modelId); + component = IndirectModelComponentCreator.createComponent(logicModel, modelId); setField(componentField, component); component.getPins().values().forEach(this::extendModelPin); @@ -91,7 +91,7 @@ public class TestEnvironmentHelper CoreModelParameters params = new CoreModelParameters(); params.gateProcessTime = 50; params.wireTravelTime = 10; - timeline = LogicCoreAdapter.convert(viewModel, params); + timeline = LogicCoreAdapter.convert(logicModel, params); timelineField.ifPresent(f -> setField(f, timeline)); // Bind switches/displays to this test class @@ -113,17 +113,17 @@ public class TestEnvironmentHelper Class type = f.getType(); if (CoreManualSwitch.class.isAssignableFrom(type)) { - ModelManualSwitch gms = new ModelManualSwitch(viewModel, p.logicWidth); + ModelManualSwitch gms = new ModelManualSwitch(logicModel, p.logicWidth); modellingTool.connect(p, gms.getOutputPin()); idSwitchMap.put(p.name, gms); } else if (CoreBitDisplay.class.isAssignableFrom(type)) { - ModelBitDisplay gbd = new ModelBitDisplay(viewModel, p.logicWidth); + ModelBitDisplay gbd = new ModelBitDisplay(logicModel, p.logicWidth); modellingTool.connect(p, gbd.getInputPin()); idDisplayMap.put(p.name, gbd); } else if (SwitchWithDisplay.class.isAssignableFrom(type)) { - SwitchWithDisplay swd = new SwitchWithDisplay(viewModel, p); + SwitchWithDisplay swd = new SwitchWithDisplay(logicModel, p); setField(f, swd); } else { @@ -149,18 +149,18 @@ public class TestEnvironmentHelper { // Debug code HashSet wiresIncludingSubmodels = new HashSet<>(); - Queue modelsToIterate = new LinkedList<>(); - modelsToIterate.add(viewModel); + Queue modelsToIterate = new LinkedList<>(); + modelsToIterate.add(logicModel); while (modelsToIterate.size() > 0) { - ViewModel model = modelsToIterate.poll(); + LogicModel model = modelsToIterate.poll(); wiresIncludingSubmodels.addAll(model.getWiresByName().values()); for (ModelComponent comp : model.getComponentsByName().values()) if (comp instanceof SubmodelComponent) modelsToIterate.offer(((SubmodelComponent) comp).submodel); } System.out.println(wiresIncludingSubmodels.size()); - viewModel.setRedrawHandler(() -> wiresIncludingSubmodels.forEach(w -> + logicModel.setRedrawHandler(() -> wiresIncludingSubmodels.forEach(w -> { if (debugWires) { @@ -260,8 +260,8 @@ public class TestEnvironmentHelper { try { - new LogicUIStandaloneGUI(viewModel).run(); - viewModel.setRedrawHandler(null); + new LogicUIStandaloneGUI(logicModel).run(); + logicModel.setRedrawHandler(null); } catch (Exception e) { diff --git a/net.mograsim.logic.model.editor/src/net/mograsim/logic/model/editor/Editor.java b/net.mograsim.logic.model.editor/src/net/mograsim/logic/model/editor/Editor.java index 6f3919a9..c2697193 100644 --- a/net.mograsim.logic.model.editor/src/net/mograsim/logic/model/editor/Editor.java +++ b/net.mograsim.logic.model.editor/src/net/mograsim/logic/model/editor/Editor.java @@ -20,7 +20,7 @@ import net.mograsim.logic.model.editor.handles.PinHandle; import net.mograsim.logic.model.editor.states.StateManager; import net.mograsim.logic.model.editor.ui.DialogManager; import net.mograsim.logic.model.editor.ui.EditorGUI; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.components.ModelComponent; import net.mograsim.logic.model.model.wires.ModelWire; import net.mograsim.logic.model.serializing.DeserializedSubmodelComponent; @@ -61,7 +61,7 @@ public final class Editor gui.open(); } - public ViewModelModifiable getSubmodel() + public LogicModelModifiable getSubmodel() { return toBeEdited.getSubmodelModifiable(); } @@ -248,7 +248,7 @@ public final class Editor public static void openNewEditor() { - DeserializedSubmodelComponent toBeEdited = new DeserializedSubmodelComponent(new ViewModelModifiable(), null, null, null); + DeserializedSubmodelComponent toBeEdited = new DeserializedSubmodelComponent(new LogicModelModifiable(), null, null, null); toBeEdited.setOutlineRenderer(new DefaultOutlineRenderer(toBeEdited)); toBeEdited.setSymbolRenderer(new DefaultSymbolRenderer(toBeEdited)); toBeEdited.setHighLevelStateHandler(new DefaultHighLevelStateHandler()); diff --git a/net.mograsim.logic.model.editor/src/net/mograsim/logic/model/editor/SaveLoadManager.java b/net.mograsim.logic.model.editor/src/net/mograsim/logic/model/editor/SaveLoadManager.java index ac387223..bbe202b1 100644 --- a/net.mograsim.logic.model.editor/src/net/mograsim/logic/model/editor/SaveLoadManager.java +++ b/net.mograsim.logic.model.editor/src/net/mograsim/logic/model/editor/SaveLoadManager.java @@ -6,7 +6,7 @@ import org.eclipse.swt.SWT; import org.eclipse.swt.widgets.FileDialog; import org.eclipse.swt.widgets.Shell; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.serializing.DeserializedSubmodelComponent; import net.mograsim.logic.model.serializing.IndirectModelComponentCreator; import net.mograsim.logic.model.serializing.SubmodelComponentSerializer; @@ -68,7 +68,7 @@ public class SaveLoadManager fdShell.dispose(); if (result != null) { - new Editor((DeserializedSubmodelComponent) IndirectModelComponentCreator.createComponent(new ViewModelModifiable(), + new Editor((DeserializedSubmodelComponent) IndirectModelComponentCreator.createComponent(new LogicModelModifiable(), "jsonfile:" + result)); } } diff --git a/net.mograsim.logic.model.editor/src/net/mograsim/logic/model/editor/handles/ComponentHandle.java b/net.mograsim.logic.model.editor/src/net/mograsim/logic/model/editor/handles/ComponentHandle.java index 8281501d..63d922ae 100644 --- a/net.mograsim.logic.model.editor/src/net/mograsim/logic/model/editor/handles/ComponentHandle.java +++ b/net.mograsim.logic.model.editor/src/net/mograsim/logic/model/editor/handles/ComponentHandle.java @@ -10,19 +10,19 @@ import net.haspamelodica.swt.helper.swtobjectwrappers.Point; import net.haspamelodica.swt.helper.swtobjectwrappers.Rectangle; import net.mograsim.logic.model.editor.Editor; import net.mograsim.logic.model.editor.Editor.ComponentInfo; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.components.ModelComponent; import net.mograsim.logic.model.serializing.IdentifyParams; public class ComponentHandle extends Handle { - private final ViewModelModifiable model; + private final LogicModelModifiable model; public final ModelComponent parent; private final static double POS_OFFSET = 2.0d; private final static double LENGTH_OFFSET = POS_OFFSET * 2; boolean selected = false; - public ComponentHandle(ViewModelModifiable model, ModelComponent parent) + public ComponentHandle(LogicModelModifiable model, ModelComponent parent) { super(4); this.model = model; diff --git a/net.mograsim.logic.model.editor/src/net/mograsim/logic/model/editor/handles/HandleManager.java b/net.mograsim.logic.model.editor/src/net/mograsim/logic/model/editor/handles/HandleManager.java index 37818e16..0a33509c 100644 --- a/net.mograsim.logic.model.editor/src/net/mograsim/logic/model/editor/handles/HandleManager.java +++ b/net.mograsim.logic.model.editor/src/net/mograsim/logic/model/editor/handles/HandleManager.java @@ -16,7 +16,7 @@ import net.haspamelodica.swt.helper.swtobjectwrappers.Point; import net.mograsim.logic.model.editor.Editor; import net.mograsim.logic.model.editor.states.EditorState; import net.mograsim.logic.model.editor.util.PrioritySet; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.components.ModelComponent; import net.mograsim.logic.model.model.components.submodels.SubmodelComponent; import net.mograsim.logic.model.model.wires.ModelWire; @@ -52,7 +52,7 @@ public class HandleManager handleAddedListeners = new ArrayList<>(); handleRemovedListeners = new ArrayList<>(); - ViewModelModifiable model = editor.getSubmodel(); + LogicModelModifiable model = editor.getSubmodel(); model.addComponentAddedListener(c -> registerComponent(c)); @@ -83,7 +83,7 @@ public class HandleManager System.err.println("Warning! HandleManager was already initialized."); else { - ViewModelModifiable model = editor.getSubmodel(); + LogicModelModifiable model = editor.getSubmodel(); Map compsByName = model.getComponentsByName(); Set comps = new HashSet<>(compsByName.values()); ModelComponent interfaceComp = compsByName.get(SubmodelComponent.SUBMODEL_INTERFACE_NAME); diff --git a/net.mograsim.logic.model.editor/src/net/mograsim/logic/model/editor/handles/WireHandle.java b/net.mograsim.logic.model.editor/src/net/mograsim/logic/model/editor/handles/WireHandle.java index d5e80c83..61fd0a6f 100644 --- a/net.mograsim.logic.model.editor/src/net/mograsim/logic/model/editor/handles/WireHandle.java +++ b/net.mograsim.logic.model.editor/src/net/mograsim/logic/model/editor/handles/WireHandle.java @@ -9,7 +9,7 @@ import net.haspamelodica.swt.helper.gcs.GeneralGC; import net.haspamelodica.swt.helper.swtobjectwrappers.Point; import net.haspamelodica.swt.helper.swtobjectwrappers.Rectangle; import net.mograsim.logic.model.editor.states.EditorState; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.wires.ModelWire; public class WireHandle extends Handle @@ -17,10 +17,10 @@ public class WireHandle extends Handle private boolean selected = false; private final static double WIDTH = 2.0; private final static double WIDTH_SQUARED = WIDTH * WIDTH; - private final ViewModelModifiable model; + private final LogicModelModifiable model; public final ModelWire parent; - public WireHandle(ViewModelModifiable model, ModelWire parent) + public WireHandle(LogicModelModifiable model, ModelWire parent) { super(5); this.model = model; diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/LogicUICanvas.java b/net.mograsim.logic.model/src/net/mograsim/logic/model/LogicUICanvas.java index 24bd3eab..b0174373 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/LogicUICanvas.java +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/LogicUICanvas.java @@ -22,7 +22,7 @@ import net.haspamelodica.swt.helper.swtobjectwrappers.Rectangle; import net.haspamelodica.swt.helper.zoomablecanvas.ZoomableCanvas; import net.mograsim.logic.core.types.Bit; import net.mograsim.logic.core.types.BitVector; -import net.mograsim.logic.model.model.ViewModel; +import net.mograsim.logic.model.model.LogicModel; import net.mograsim.logic.model.model.components.ModelComponent; import net.mograsim.logic.model.model.components.submodels.SubmodelComponent; import net.mograsim.logic.model.model.components.submodels.SubmodelInterface; @@ -38,9 +38,9 @@ public class LogicUICanvas extends ZoomableCanvas { private static final boolean OPEN_DEBUG_SETHIGHLEVELSTATE_SHELL = false; - private final ViewModel model; + private final LogicModel model; - public LogicUICanvas(Composite parent, int style, ViewModel model) + public LogicUICanvas(Composite parent, int style, LogicModel model) { super(parent, style, Preferences.current().getBoolean("net.mograsim.logic.model.improvetext")); @@ -76,7 +76,7 @@ public class LogicUICanvas extends ZoomableCanvas } } - private void openDebugSetHighLevelStateShell(ViewModel model) + private void openDebugSetHighLevelStateShell(LogicModel model) { Shell debugShell = new Shell(); debugShell.setLayout(new GridLayout(2, false)); @@ -161,14 +161,14 @@ public class LogicUICanvas extends ZoomableCanvas debugShell.open(); } - private void recalculateComponentSelector(List componentsByItemIndex, Combo componentSelector, ViewModel model) + private void recalculateComponentSelector(List componentsByItemIndex, Combo componentSelector, LogicModel model) { componentsByItemIndex.clear(); componentSelector.setItems(); addComponentSelectorItems(componentsByItemIndex, "", componentSelector, model); } - private void addComponentSelectorItems(List componentsByItemIndex, String base, Combo componentSelector, ViewModel model) + private void addComponentSelectorItems(List componentsByItemIndex, String base, Combo componentSelector, LogicModel model) { model.getComponentsByName().values().stream().sorted((c1, c2) -> c1.name.compareTo(c2.name)).forEach(c -> { diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/LogicUIRenderer.java b/net.mograsim.logic.model/src/net/mograsim/logic/model/LogicUIRenderer.java index b90e259e..1df2f7b7 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/LogicUIRenderer.java +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/LogicUIRenderer.java @@ -5,7 +5,7 @@ import org.eclipse.swt.SWT; import net.haspamelodica.swt.helper.gcs.GeneralGC; import net.haspamelodica.swt.helper.swtobjectwrappers.Point; import net.haspamelodica.swt.helper.swtobjectwrappers.Rectangle; -import net.mograsim.logic.model.model.ViewModel; +import net.mograsim.logic.model.model.LogicModel; import net.mograsim.logic.model.model.components.ModelComponent; import net.mograsim.logic.model.model.wires.Pin; import net.mograsim.preferences.Preferences; @@ -14,9 +14,9 @@ public class LogicUIRenderer { private static final boolean DRAW_PINS = false; - private final ViewModel model; + private final LogicModel model; - public LogicUIRenderer(ViewModel model) + public LogicUIRenderer(LogicModel model) { this.model = model; } diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/LogicUIStandaloneGUI.java b/net.mograsim.logic.model/src/net/mograsim/logic/model/LogicUIStandaloneGUI.java index 700f69b3..49182d66 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/LogicUIStandaloneGUI.java +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/LogicUIStandaloneGUI.java @@ -7,7 +7,7 @@ import org.eclipse.swt.widgets.Shell; import net.haspamelodica.swt.helper.zoomablecanvas.helper.ZoomableCanvasOverlay; import net.haspamelodica.swt.helper.zoomablecanvas.helper.ZoomableCanvasUserInput; -import net.mograsim.logic.model.model.ViewModel; +import net.mograsim.logic.model.model.LogicModel; /** * Standalone simulation visualizer graphical user interface. @@ -20,7 +20,7 @@ public class LogicUIStandaloneGUI implements Runnable private final Shell shell; private final LogicUICanvas ui; - public LogicUIStandaloneGUI(ViewModel model) + public LogicUIStandaloneGUI(LogicModel model) { display = new Display(); shell = new Shell(display); diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/SimpleLogicUIStandalone.java b/net.mograsim.logic.model/src/net/mograsim/logic/model/SimpleLogicUIStandalone.java index 6a31d474..03d0335c 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/SimpleLogicUIStandalone.java +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/SimpleLogicUIStandalone.java @@ -3,46 +3,46 @@ package net.mograsim.logic.model; import java.util.function.Consumer; import net.mograsim.logic.core.timeline.Timeline; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.modeladapter.CoreModelParameters; import net.mograsim.logic.model.modeladapter.LogicCoreAdapter; public class SimpleLogicUIStandalone { - public static void executeVisualisation(Consumer setupViewModel) + public static void executeVisualisation(Consumer setupLogicModel) { - executeVisualisation(setupViewModel, (Consumer) null); + executeVisualisation(setupLogicModel, (Consumer) null); } - public static void executeVisualisation(Consumer setupViewModel, Consumer beforeRun) + public static void executeVisualisation(Consumer setupLogicModel, Consumer beforeRun) { CoreModelParameters params = new CoreModelParameters(); params.gateProcessTime = 50; params.wireTravelTime = 10; - executeVisualisation(setupViewModel, params, beforeRun); + executeVisualisation(setupLogicModel, params, beforeRun); } - public static void executeVisualisation(Consumer setupViewModel, CoreModelParameters params) + public static void executeVisualisation(Consumer setupLogicModel, CoreModelParameters params) { - executeVisualisation(setupViewModel, params, null); + executeVisualisation(setupLogicModel, params, null); } - public static void executeVisualisation(Consumer setupViewModel, CoreModelParameters params, + public static void executeVisualisation(Consumer setupLogicModel, CoreModelParameters params, Consumer beforeRun) { - // setup view model - ViewModelModifiable viewModel = new ViewModelModifiable(); - setupViewModel.accept(viewModel); + // setup logic model + LogicModelModifiable logicModel = new LogicModelModifiable(); + setupLogicModel.accept(logicModel); // convert to core model - Timeline timeline = LogicCoreAdapter.convert(viewModel, params); + Timeline timeline = LogicCoreAdapter.convert(logicModel, params); // initialize UI and executer - LogicUIStandaloneGUI ui = new LogicUIStandaloneGUI(viewModel); + LogicUIStandaloneGUI ui = new LogicUIStandaloneGUI(logicModel); LogicExecuter exec = new LogicExecuter(timeline); if (beforeRun != null) - beforeRun.accept(new VisualisationObjects(viewModel, timeline, ui, exec)); + beforeRun.accept(new VisualisationObjects(logicModel, timeline, ui, exec)); // run it exec.startLiveExecution(); @@ -52,12 +52,12 @@ public class SimpleLogicUIStandalone public static class VisualisationObjects { - public final ViewModelModifiable model; + public final LogicModelModifiable model; public final Timeline timeline; public final LogicUIStandaloneGUI gui; public final LogicExecuter executer; - public VisualisationObjects(ViewModelModifiable model, Timeline timeline, LogicUIStandaloneGUI gui, LogicExecuter executer) + public VisualisationObjects(LogicModelModifiable model, Timeline timeline, LogicUIStandaloneGUI gui, LogicExecuter executer) { this.model = model; this.timeline = timeline; diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/examples/ClickableSubmodelComponentsTest.java b/net.mograsim.logic.model/src/net/mograsim/logic/model/examples/ClickableSubmodelComponentsTest.java index ac09b1c5..14073bd1 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/examples/ClickableSubmodelComponentsTest.java +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/examples/ClickableSubmodelComponentsTest.java @@ -1,7 +1,7 @@ package net.mograsim.logic.model.examples; import net.mograsim.logic.model.SimpleLogicUIStandalone; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.components.atomic.ModelBitDisplay; import net.mograsim.logic.model.model.components.atomic.ModelManualSwitch; import net.mograsim.logic.model.model.components.submodels.SimpleRectangularSubmodelComponent; @@ -14,7 +14,7 @@ public class ClickableSubmodelComponentsTest SimpleLogicUIStandalone.executeVisualisation(ClickableSubmodelComponentsTest::createExample); } - public static void createExample(ViewModelModifiable model) + public static void createExample(LogicModelModifiable model) { @SuppressWarnings("unused") // Wire SimpleRectangularSubmodelComponent comp = new SimpleRectangularSubmodelComponent(model, 1, "") diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/examples/RSLatchExample.java b/net.mograsim.logic.model/src/net/mograsim/logic/model/examples/RSLatchExample.java index 2c71dc11..5f68c9cc 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/examples/RSLatchExample.java +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/examples/RSLatchExample.java @@ -2,7 +2,7 @@ package net.mograsim.logic.model.examples; import net.haspamelodica.swt.helper.swtobjectwrappers.Point; import net.mograsim.logic.model.SimpleLogicUIStandalone; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.components.atomic.ModelManualSwitch; import net.mograsim.logic.model.model.components.atomic.ModelNotGate; import net.mograsim.logic.model.model.components.atomic.ModelOrGate; @@ -17,7 +17,7 @@ public class RSLatchExample } @SuppressWarnings("unused") // for Wires being created - public static void createRSLatchExample(ViewModelModifiable model) + public static void createRSLatchExample(LogicModelModifiable model) { ModelManualSwitch rIn = new ModelManualSwitch(model, 1); rIn.moveTo(100, 100); diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/ViewModel.java b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/LogicModel.java similarity index 99% rename from net.mograsim.logic.model/src/net/mograsim/logic/model/model/ViewModel.java rename to net.mograsim.logic.model/src/net/mograsim/logic/model/model/LogicModel.java index b0d6a3cf..eb6f7ee4 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/ViewModel.java +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/LogicModel.java @@ -10,7 +10,7 @@ import java.util.function.Consumer; import net.mograsim.logic.model.model.components.ModelComponent; import net.mograsim.logic.model.model.wires.ModelWire; -public class ViewModel +public class LogicModel { private final Map components; private final Map componentDestroyFunctions; @@ -27,7 +27,7 @@ public class ViewModel private Runnable redrawHandler; - protected ViewModel() + protected LogicModel() { components = new HashMap<>(); componentDestroyFunctions = new HashMap<>(); diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/ViewModelModifiable.java b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/LogicModelModifiable.java similarity index 96% rename from net.mograsim.logic.model/src/net/mograsim/logic/model/model/ViewModelModifiable.java rename to net.mograsim.logic.model/src/net/mograsim/logic/model/model/LogicModelModifiable.java index 7ebde10e..4801d416 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/ViewModelModifiable.java +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/LogicModelModifiable.java @@ -5,7 +5,7 @@ import java.util.Set; import net.mograsim.logic.model.model.components.ModelComponent; import net.mograsim.logic.model.model.wires.ModelWire; -public class ViewModelModifiable extends ViewModel +public class LogicModelModifiable extends LogicModel { public String getDefaultComponentName(ModelComponent component) { diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/ModelComponent.java b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/ModelComponent.java index 6853e382..d2ead744 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/ModelComponent.java +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/ModelComponent.java @@ -9,7 +9,7 @@ import java.util.function.Consumer; import net.haspamelodica.swt.helper.gcs.GeneralGC; import net.haspamelodica.swt.helper.swtobjectwrappers.Rectangle; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.wires.Pin; import net.mograsim.logic.model.serializing.IdentifyParams; import net.mograsim.logic.model.serializing.JSONSerializable; @@ -17,7 +17,7 @@ import net.mograsim.logic.model.snippets.HighLevelStateHandler; /** * The base class for all model components.
- * A ModelComponent has a reference to the ViewModel it belongs to.
+ * A ModelComponent has a reference to the LogicModel it belongs to.
* A ModelComponent has a name. This name is unique in the model the ModelComponent belongs to.
* A ModelComponent has a position and size. The size can only be modified by subclasses. * @@ -28,7 +28,7 @@ public abstract class ModelComponent implements JSONSerializable /** * The model this component is a part of. */ - protected final ViewModelModifiable model; + protected final LogicModelModifiable model; /** * The name of this component. Is unique for all components in its model. */ @@ -52,7 +52,7 @@ public abstract class ModelComponent implements JSONSerializable // creation and destruction - public ModelComponent(ViewModelModifiable model, String name) + public ModelComponent(LogicModelModifiable model, String name) { this.model = model; this.name = name == null ? model.getDefaultComponentName(this) : name; @@ -66,13 +66,13 @@ public abstract class ModelComponent implements JSONSerializable this.pinRemovedListeners = new ArrayList<>(); // TODO this will crash the high level state debug shell because submodel is not yet set. - // The same problem exists in ViewModelModifiable.getDefaultComponentName; see there + // The same problem exists in LogicModelModifiable.getDefaultComponentName; see there model.componentCreated(this, this::destroyed); } /** - * Destroys this component. This method is called from {@link ViewModelModifiable#componentDestroyed(ModelComponent) destroyComponent()} - * of the model this component is a part of.
+ * Destroys this component. This method is called from {@link LogicModelModifiable#componentDestroyed(ModelComponent) + * destroyComponent()} of the model this component is a part of.
* When overriding, make sure to also call the original implementation. * * @author Daniel Kirschten diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/ModelAndGate.java b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/ModelAndGate.java index 820991bf..4d145d13 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/ModelAndGate.java +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/ModelAndGate.java @@ -1,19 +1,19 @@ package net.mograsim.logic.model.model.components.atomic; import net.mograsim.logic.core.components.gates.CoreAndGate; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.modeladapter.LogicCoreAdapter; import net.mograsim.logic.model.modeladapter.componentadapters.SimpleGateAdapter; import net.mograsim.logic.model.serializing.IndirectModelComponentCreator; public class ModelAndGate extends SimpleRectangularModelGate { - public ModelAndGate(ViewModelModifiable model, int logicWidth) + public ModelAndGate(LogicModelModifiable model, int logicWidth) { this(model, logicWidth, null); } - public ModelAndGate(ViewModelModifiable model, int logicWidth, String name) + public ModelAndGate(LogicModelModifiable model, int logicWidth, String name) { super(model, "AndGate", "&", false, logicWidth, name); setInputCount(2);// TODO make variable diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/ModelBitDisplay.java b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/ModelBitDisplay.java index fbcaf643..9573b3d9 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/ModelBitDisplay.java +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/ModelBitDisplay.java @@ -9,7 +9,7 @@ import net.haspamelodica.swt.helper.swtobjectwrappers.Rectangle; import net.mograsim.logic.core.LogicObserver; import net.mograsim.logic.core.components.CoreBitDisplay; import net.mograsim.logic.core.types.BitVectorFormatter; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.components.ModelComponent; import net.mograsim.logic.model.model.wires.Pin; import net.mograsim.logic.model.model.wires.PinUsage; @@ -31,12 +31,12 @@ public class ModelBitDisplay extends ModelComponent private final LogicObserver logicObs; private CoreBitDisplay bitDisplay; - public ModelBitDisplay(ViewModelModifiable model, int logicWidth) + public ModelBitDisplay(LogicModelModifiable model, int logicWidth) { this(model, logicWidth, null); } - public ModelBitDisplay(ViewModelModifiable model, int logicWidth, String name) + public ModelBitDisplay(LogicModelModifiable model, int logicWidth, String name) { super(model, name); this.logicWidth = logicWidth; diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/ModelClock.java b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/ModelClock.java index e26e3ff1..6bf2ecb7 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/ModelClock.java +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/ModelClock.java @@ -10,7 +10,7 @@ import net.haspamelodica.swt.helper.swtobjectwrappers.Point; import net.haspamelodica.swt.helper.swtobjectwrappers.Rectangle; import net.mograsim.logic.core.LogicObserver; import net.mograsim.logic.core.components.CoreClock; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.components.ModelComponent; import net.mograsim.logic.model.model.components.Orientation; import net.mograsim.logic.model.model.components.OrientationCalculator; @@ -36,12 +36,12 @@ public class ModelClock extends ModelComponent private OrientationCalculator oc; private CoreClock clock; - public ModelClock(ViewModelModifiable model, ModelClockParams params) + public ModelClock(LogicModelModifiable model, ModelClockParams params) { this(model, params, null); } - public ModelClock(ViewModelModifiable model, ModelClockParams params, String name) + public ModelClock(LogicModelModifiable model, ModelClockParams params, String name) { super(model, name); this.params = params; diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/ModelFixedOutput.java b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/ModelFixedOutput.java index 2bdd36eb..2ff06f20 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/ModelFixedOutput.java +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/ModelFixedOutput.java @@ -10,7 +10,7 @@ import net.haspamelodica.swt.helper.swtobjectwrappers.Point; import net.haspamelodica.swt.helper.swtobjectwrappers.Rectangle; import net.mograsim.logic.core.types.BitVector; import net.mograsim.logic.core.types.BitVectorFormatter; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.components.ModelComponent; import net.mograsim.logic.model.model.wires.Pin; import net.mograsim.logic.model.model.wires.PinUsage; @@ -29,7 +29,7 @@ public class ModelFixedOutput extends ModelComponent public final BitVector bits; - public ModelFixedOutput(ViewModelModifiable model, BitVector bits, String name) + public ModelFixedOutput(LogicModelModifiable model, BitVector bits, String name) { super(model, name); this.bits = bits; diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/ModelManualSwitch.java b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/ModelManualSwitch.java index b7053d3c..25d3a69e 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/ModelManualSwitch.java +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/ModelManualSwitch.java @@ -11,7 +11,7 @@ import net.mograsim.logic.core.components.CoreManualSwitch; import net.mograsim.logic.core.types.Bit; import net.mograsim.logic.core.types.BitVector; import net.mograsim.logic.core.types.BitVectorFormatter; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.components.ModelComponent; import net.mograsim.logic.model.model.wires.Pin; import net.mograsim.logic.model.model.wires.PinUsage; @@ -34,12 +34,12 @@ public class ModelManualSwitch extends ModelComponent private final LogicObserver logicObs; private CoreManualSwitch manualSwitch; - public ModelManualSwitch(ViewModelModifiable model, int logicWidth) + public ModelManualSwitch(LogicModelModifiable model, int logicWidth) { this(model, logicWidth, null); } - public ModelManualSwitch(ViewModelModifiable model, int logicWidth, String name) + public ModelManualSwitch(LogicModelModifiable model, int logicWidth, String name) { super(model, name); this.logicWidth = logicWidth; diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/ModelMerger.java b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/ModelMerger.java index 79ea13e5..fbea650b 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/ModelMerger.java +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/ModelMerger.java @@ -6,7 +6,7 @@ import net.haspamelodica.swt.helper.gcs.GeneralGC; import net.haspamelodica.swt.helper.swtobjectwrappers.Rectangle; import net.mograsim.logic.core.types.BitVectorFormatter; import net.mograsim.logic.core.wires.CoreWire.ReadEnd; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.components.ModelComponent; import net.mograsim.logic.model.model.wires.Pin; import net.mograsim.logic.model.model.wires.PinUsage; @@ -29,12 +29,12 @@ public class ModelMerger extends ModelComponent private final ReadEnd[] inputEnds; private ReadEnd outputEnd; - public ModelMerger(ViewModelModifiable model, int logicWidth) + public ModelMerger(LogicModelModifiable model, int logicWidth) { this(model, logicWidth, null); } - public ModelMerger(ViewModelModifiable model, int logicWidth, String name) + public ModelMerger(LogicModelModifiable model, int logicWidth, String name) { super(model, name); this.logicWidth = logicWidth; diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/ModelNandGate.java b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/ModelNandGate.java index fa584d69..d06c81c0 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/ModelNandGate.java +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/ModelNandGate.java @@ -1,19 +1,19 @@ package net.mograsim.logic.model.model.components.atomic; import net.mograsim.logic.core.components.gates.CoreNandGate; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.modeladapter.LogicCoreAdapter; import net.mograsim.logic.model.modeladapter.componentadapters.SimpleGateAdapter; import net.mograsim.logic.model.serializing.IndirectModelComponentCreator; public class ModelNandGate extends SimpleRectangularModelGate { - public ModelNandGate(ViewModelModifiable model, int logicWidth) + public ModelNandGate(LogicModelModifiable model, int logicWidth) { this(model, logicWidth, null); } - public ModelNandGate(ViewModelModifiable model, int logicWidth, String name) + public ModelNandGate(LogicModelModifiable model, int logicWidth, String name) { super(model, "NandGate", "&", true, logicWidth, name); setInputCount(2);// TODO make variable diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/ModelNotGate.java b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/ModelNotGate.java index a24bbc06..995aea9d 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/ModelNotGate.java +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/ModelNotGate.java @@ -1,19 +1,19 @@ package net.mograsim.logic.model.model.components.atomic; import net.mograsim.logic.core.components.gates.CoreNotGate; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.modeladapter.LogicCoreAdapter; import net.mograsim.logic.model.modeladapter.componentadapters.SimpleGateAdapter; import net.mograsim.logic.model.serializing.IndirectModelComponentCreator; public class ModelNotGate extends SimpleRectangularModelGate { - public ModelNotGate(ViewModelModifiable model, int logicWidth) + public ModelNotGate(LogicModelModifiable model, int logicWidth) { this(model, logicWidth, null); } - public ModelNotGate(ViewModelModifiable model, int logicWidth, String name) + public ModelNotGate(LogicModelModifiable model, int logicWidth, String name) { super(model, "NotGate", "1", true, logicWidth, name); setInputCount(1); diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/ModelOrGate.java b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/ModelOrGate.java index 2a80d64f..888188d1 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/ModelOrGate.java +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/ModelOrGate.java @@ -1,19 +1,19 @@ package net.mograsim.logic.model.model.components.atomic; import net.mograsim.logic.core.components.gates.CoreOrGate; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.modeladapter.LogicCoreAdapter; import net.mograsim.logic.model.modeladapter.componentadapters.SimpleGateAdapter; import net.mograsim.logic.model.serializing.IndirectModelComponentCreator; public class ModelOrGate extends SimpleRectangularModelGate { - public ModelOrGate(ViewModelModifiable model, int logicWidth) + public ModelOrGate(LogicModelModifiable model, int logicWidth) { this(model, logicWidth, null); } - public ModelOrGate(ViewModelModifiable model, int logicWidth, String name) + public ModelOrGate(LogicModelModifiable model, int logicWidth, String name) { super(model, "OrGate", "\u22651", false, logicWidth, name);// ">=1" setInputCount(2); diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/ModelSplitter.java b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/ModelSplitter.java index 1bf22b06..24d65784 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/ModelSplitter.java +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/ModelSplitter.java @@ -6,7 +6,7 @@ import net.haspamelodica.swt.helper.gcs.GeneralGC; import net.haspamelodica.swt.helper.swtobjectwrappers.Rectangle; import net.mograsim.logic.core.types.BitVectorFormatter; import net.mograsim.logic.core.wires.CoreWire.ReadEnd; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.components.ModelComponent; import net.mograsim.logic.model.model.wires.Pin; import net.mograsim.logic.model.model.wires.PinUsage; @@ -29,12 +29,12 @@ public class ModelSplitter extends ModelComponent private ReadEnd inputEnd; private final ReadEnd[] outputEnds; - public ModelSplitter(ViewModelModifiable model, int logicWidth) + public ModelSplitter(LogicModelModifiable model, int logicWidth) { this(model, logicWidth, null); } - public ModelSplitter(ViewModelModifiable model, int logicWidth, String name) + public ModelSplitter(LogicModelModifiable model, int logicWidth, String name) { super(model, name); this.logicWidth = logicWidth; diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/ModelTextComponent.java b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/ModelTextComponent.java index d45bfa86..6a0c93f8 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/ModelTextComponent.java +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/ModelTextComponent.java @@ -5,7 +5,7 @@ import org.eclipse.swt.graphics.Color; import net.haspamelodica.swt.helper.gcs.GeneralGC; import net.haspamelodica.swt.helper.swtobjectwrappers.Point; import net.haspamelodica.swt.helper.swtobjectwrappers.Rectangle; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.components.ModelComponent; import net.mograsim.logic.model.modeladapter.LogicCoreAdapter; import net.mograsim.logic.model.modeladapter.componentadapters.NoLogicAdapter; @@ -19,12 +19,12 @@ public class ModelTextComponent extends ModelComponent private final String text; private boolean calculatedSize; - public ModelTextComponent(ViewModelModifiable model, String text) + public ModelTextComponent(LogicModelModifiable model, String text) { this(model, text, null); } - public ModelTextComponent(ViewModelModifiable model, String text, String name) + public ModelTextComponent(LogicModelModifiable model, String text, String name) { super(model, name); this.text = text; diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/ModelTriStateBuffer.java b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/ModelTriStateBuffer.java index 733d4b62..45e653cb 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/ModelTriStateBuffer.java +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/ModelTriStateBuffer.java @@ -6,7 +6,7 @@ import com.google.gson.JsonSyntaxException; import net.haspamelodica.swt.helper.gcs.GeneralGC; import net.haspamelodica.swt.helper.swtobjectwrappers.Rectangle; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.components.ModelComponent; import net.mograsim.logic.model.model.components.Orientation; import net.mograsim.logic.model.model.components.OrientationCalculator; @@ -32,12 +32,12 @@ public class ModelTriStateBuffer extends ModelComponent private ModelTriStateBufferParams params; private OrientationCalculator oc; - public ModelTriStateBuffer(ViewModelModifiable model, ModelTriStateBufferParams params) + public ModelTriStateBuffer(LogicModelModifiable model, ModelTriStateBufferParams params) { this(model, params, null); } - public ModelTriStateBuffer(ViewModelModifiable model, ModelTriStateBufferParams params, String name) + public ModelTriStateBuffer(LogicModelModifiable model, ModelTriStateBufferParams params, String name) { super(model, name); this.params = params; diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/SimpleRectangularHardcodedModelComponent.java b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/SimpleRectangularHardcodedModelComponent.java index 4314a439..b3956957 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/SimpleRectangularHardcodedModelComponent.java +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/SimpleRectangularHardcodedModelComponent.java @@ -7,7 +7,7 @@ import net.haspamelodica.swt.helper.gcs.GeneralGC; import net.haspamelodica.swt.helper.swtobjectwrappers.Rectangle; import net.mograsim.logic.core.wires.CoreWire.ReadEnd; import net.mograsim.logic.core.wires.CoreWire.ReadWriteEnd; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.components.ModelComponent; import net.mograsim.logic.model.model.wires.Pin; import net.mograsim.logic.model.modeladapter.LogicCoreAdapter; @@ -38,7 +38,7 @@ public abstract class SimpleRectangularHardcodedModelComponent extends ModelComp // creation and destruction - public SimpleRectangularHardcodedModelComponent(ViewModelModifiable model, String id, String name, String centerText) + public SimpleRectangularHardcodedModelComponent(LogicModelModifiable model, String id, String name, String centerText) { super(model, name); this.id = id; diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/SimpleRectangularModelGate.java b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/SimpleRectangularModelGate.java index 890c482f..ea16e4c5 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/SimpleRectangularModelGate.java +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/SimpleRectangularModelGate.java @@ -11,7 +11,7 @@ import net.haspamelodica.swt.helper.gcs.GeneralGC; import net.haspamelodica.swt.helper.swtobjectwrappers.Font; import net.haspamelodica.swt.helper.swtobjectwrappers.Point; import net.haspamelodica.swt.helper.swtobjectwrappers.Rectangle; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.components.ModelComponent; import net.mograsim.logic.model.model.wires.MovablePin; import net.mograsim.logic.model.model.wires.Pin; @@ -36,7 +36,7 @@ public class SimpleRectangularModelGate extends ModelComponent private MovablePin outputPin; private final List inputPins; - protected SimpleRectangularModelGate(ViewModelModifiable model, String id, String label, boolean isInverted, int logicWidth, String name) + protected SimpleRectangularModelGate(LogicModelModifiable model, String id, String label, boolean isInverted, int logicWidth, String name) { super(model, name); this.id = id; diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/submodels/SimpleRectangularSubmodelComponent.java b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/submodels/SimpleRectangularSubmodelComponent.java index 33a0bb31..5e01fe04 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/submodels/SimpleRectangularSubmodelComponent.java +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/submodels/SimpleRectangularSubmodelComponent.java @@ -6,7 +6,7 @@ import java.util.Collections; import java.util.HashSet; import java.util.List; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.wires.MovablePin; import net.mograsim.logic.model.model.wires.Pin; import net.mograsim.logic.model.model.wires.PinUsage; @@ -30,12 +30,12 @@ public class SimpleRectangularSubmodelComponent extends SubmodelComponent private final List outputPinNames; private final List outputPinNamesUnmodifiable; - public SimpleRectangularSubmodelComponent(ViewModelModifiable model, int logicWidth, String label) + public SimpleRectangularSubmodelComponent(LogicModelModifiable model, int logicWidth, String label) { this(model, logicWidth, label, null); } - public SimpleRectangularSubmodelComponent(ViewModelModifiable model, int logicWidth, String label, String name) + public SimpleRectangularSubmodelComponent(LogicModelModifiable model, int logicWidth, String label, String name) { super(model, name); this.label = label; diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/submodels/SubmodelComponent.java b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/submodels/SubmodelComponent.java index 7eaba805..a08c0934 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/submodels/SubmodelComponent.java +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/submodels/SubmodelComponent.java @@ -11,8 +11,8 @@ import net.haspamelodica.swt.helper.gcs.GeneralGC; import net.haspamelodica.swt.helper.gcs.TranslatedGC; import net.haspamelodica.swt.helper.swtobjectwrappers.Rectangle; import net.mograsim.logic.model.LogicUIRenderer; -import net.mograsim.logic.model.model.ViewModel; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModel; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.components.ModelComponent; import net.mograsim.logic.model.model.wires.MovablePin; import net.mograsim.logic.model.model.wires.Pin; @@ -35,11 +35,11 @@ public abstract class SubmodelComponent extends ModelComponent /** * A modifiable view of {@link #submodel}. */ - protected final ViewModelModifiable submodelModifiable; + protected final LogicModelModifiable submodelModifiable; /** * The model this {@link SubmodelComponent} consists of. */ - public final ViewModel submodel; + public final LogicModel submodel; /** * The list of all submodel interface pins of this {@link SubmodelComponent} on the submodel side. */ @@ -99,10 +99,10 @@ public abstract class SubmodelComponent extends ModelComponent // creation and destruction - public SubmodelComponent(ViewModelModifiable model, String name) + public SubmodelComponent(LogicModelModifiable model, String name) { super(model, name); - this.submodelModifiable = new ViewModelModifiable(); + this.submodelModifiable = new LogicModelModifiable(); this.submodel = submodelModifiable; this.submodelPins = new HashMap<>(); this.submodelMovablePinsUnmodifiable = Collections.unmodifiableMap(submodelPins); diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/submodels/SubmodelInterface.java b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/submodels/SubmodelInterface.java index d2e6b3de..c5e81548 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/submodels/SubmodelInterface.java +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/submodels/SubmodelInterface.java @@ -2,14 +2,14 @@ package net.mograsim.logic.model.model.components.submodels; import net.haspamelodica.swt.helper.gcs.GeneralGC; import net.haspamelodica.swt.helper.swtobjectwrappers.Rectangle; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.components.ModelComponent; import net.mograsim.logic.model.model.wires.Pin; import net.mograsim.logic.model.serializing.IdentifyParams; public class SubmodelInterface extends ModelComponent { - public SubmodelInterface(ViewModelModifiable model, String name) + public SubmodelInterface(LogicModelModifiable model, String name) { super(model, name); } diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/wires/ModelWire.java b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/wires/ModelWire.java index 8283749b..6d45c7ba 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/wires/ModelWire.java +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/wires/ModelWire.java @@ -15,7 +15,7 @@ import net.mograsim.logic.core.types.BitVector; import net.mograsim.logic.core.types.BitVectorFormatter; import net.mograsim.logic.core.wires.CoreWire; import net.mograsim.logic.core.wires.CoreWire.ReadEnd; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.preferences.ColorDefinition; import net.mograsim.preferences.ColorManager; import net.mograsim.preferences.Preferences; @@ -30,7 +30,7 @@ public class ModelWire /** * The model this wire is a part of. */ - private final ViewModelModifiable model; + private final LogicModelModifiable model; /** * The name of this wire. Is unique for all wires in its model. */ @@ -80,7 +80,7 @@ public class ModelWire * * @author Daniel Kirschten */ - public ModelWire(ViewModelModifiable model, ModelWireCrossPoint pin1, ModelWireCrossPoint pin2) + public ModelWire(LogicModelModifiable model, ModelWireCrossPoint pin1, ModelWireCrossPoint pin2) { this(model, null, pin1, pin2); } @@ -90,7 +90,7 @@ public class ModelWire * * @author Daniel Kirschten */ - public ModelWire(ViewModelModifiable model, ModelWireCrossPoint pin1, Pin pin2) + public ModelWire(LogicModelModifiable model, ModelWireCrossPoint pin1, Pin pin2) { this(model, null, pin1, pin2); } @@ -100,7 +100,7 @@ public class ModelWire * * @author Daniel Kirschten */ - public ModelWire(ViewModelModifiable model, Pin pin1, ModelWireCrossPoint pin2) + public ModelWire(LogicModelModifiable model, Pin pin1, ModelWireCrossPoint pin2) { this(model, null, pin1, pin2); } @@ -110,7 +110,7 @@ public class ModelWire * * @author Daniel Kirschten */ - public ModelWire(ViewModelModifiable model, Pin pin1, Pin pin2) + public ModelWire(LogicModelModifiable model, Pin pin1, Pin pin2) { this(model, null, pin1, pin2); } @@ -120,7 +120,7 @@ public class ModelWire * * @author Daniel Kirschten */ - public ModelWire(ViewModelModifiable model, ModelWireCrossPoint pin1, ModelWireCrossPoint pin2, Point... path) + public ModelWire(LogicModelModifiable model, ModelWireCrossPoint pin1, ModelWireCrossPoint pin2, Point... path) { this(model, null, pin1, pin2, path); } @@ -130,7 +130,7 @@ public class ModelWire * * @author Daniel Kirschten */ - public ModelWire(ViewModelModifiable model, ModelWireCrossPoint pin1, Pin pin2, Point... path) + public ModelWire(LogicModelModifiable model, ModelWireCrossPoint pin1, Pin pin2, Point... path) { this(model, null, pin1, pin2, path); } @@ -140,7 +140,7 @@ public class ModelWire * * @author Daniel Kirschten */ - public ModelWire(ViewModelModifiable model, Pin pin1, ModelWireCrossPoint pin2, Point... path) + public ModelWire(LogicModelModifiable model, Pin pin1, ModelWireCrossPoint pin2, Point... path) { this(model, null, pin1, pin2, path); } @@ -150,7 +150,7 @@ public class ModelWire * * @author Daniel Kirschten */ - public ModelWire(ViewModelModifiable model, Pin pin1, Pin pin2, Point... path) + public ModelWire(LogicModelModifiable model, Pin pin1, Pin pin2, Point... path) { this(model, null, pin1, pin2, path); } @@ -160,7 +160,7 @@ public class ModelWire * * @author Daniel Kirschten */ - public ModelWire(ViewModelModifiable model, String name, ModelWireCrossPoint pin1, ModelWireCrossPoint pin2) + public ModelWire(LogicModelModifiable model, String name, ModelWireCrossPoint pin1, ModelWireCrossPoint pin2) { this(model, name, pin1, pin2, (Point[]) null); } @@ -170,7 +170,7 @@ public class ModelWire * * @author Daniel Kirschten */ - public ModelWire(ViewModelModifiable model, String name, ModelWireCrossPoint pin1, Pin pin2) + public ModelWire(LogicModelModifiable model, String name, ModelWireCrossPoint pin1, Pin pin2) { this(model, name, pin1, pin2, (Point[]) null); } @@ -180,7 +180,7 @@ public class ModelWire * * @author Daniel Kirschten */ - public ModelWire(ViewModelModifiable model, String name, Pin pin1, ModelWireCrossPoint pin2) + public ModelWire(LogicModelModifiable model, String name, Pin pin1, ModelWireCrossPoint pin2) { this(model, name, pin1, pin2, (Point[]) null); } @@ -190,7 +190,7 @@ public class ModelWire * * @author Daniel Kirschten */ - public ModelWire(ViewModelModifiable model, String name, Pin pin1, Pin pin2) + public ModelWire(LogicModelModifiable model, String name, Pin pin1, Pin pin2) { this(model, name, pin1, pin2, (Point[]) null); } @@ -200,7 +200,7 @@ public class ModelWire * * @author Daniel Kirschten */ - public ModelWire(ViewModelModifiable model, String name, ModelWireCrossPoint pin1, ModelWireCrossPoint pin2, Point... path) + public ModelWire(LogicModelModifiable model, String name, ModelWireCrossPoint pin1, ModelWireCrossPoint pin2, Point... path) { this(model, name, pin1.getPin(), pin2.getPin(), path); } @@ -210,7 +210,7 @@ public class ModelWire * * @author Daniel Kirschten */ - public ModelWire(ViewModelModifiable model, String name, ModelWireCrossPoint pin1, Pin pin2, Point... path) + public ModelWire(LogicModelModifiable model, String name, ModelWireCrossPoint pin1, Pin pin2, Point... path) { this(model, name, pin1.getPin(), pin2, path); } @@ -220,7 +220,7 @@ public class ModelWire * * @author Daniel Kirschten */ - public ModelWire(ViewModelModifiable model, String name, Pin pin1, ModelWireCrossPoint pin2, Point... path) + public ModelWire(LogicModelModifiable model, String name, Pin pin1, ModelWireCrossPoint pin2, Point... path) { this(model, name, pin1, pin2.getPin(), path); } @@ -230,7 +230,7 @@ public class ModelWire * * @author Daniel Kirschten */ - public ModelWire(ViewModelModifiable model, String name, Pin pin1, Pin pin2, Point... path) + public ModelWire(LogicModelModifiable model, String name, Pin pin1, Pin pin2, Point... path) { this.model = model; this.name = name == null ? model.getDefaultWireName() : name; @@ -257,7 +257,7 @@ public class ModelWire } /** - * Destroys this wire. This method is called from {@link ViewModelModifiable#wireDestroyed(ModelWire) wireDestroyed()} of the model this + * Destroys this wire. This method is called from {@link LogicModelModifiable#wireDestroyed(ModelWire) wireDestroyed()} of the model this * wire is a part of. * * @author Daniel Kirschten diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/wires/ModelWireCrossPoint.java b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/wires/ModelWireCrossPoint.java index 28181b20..75b619d9 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/wires/ModelWireCrossPoint.java +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/wires/ModelWireCrossPoint.java @@ -5,7 +5,7 @@ import net.haspamelodica.swt.helper.swtobjectwrappers.Rectangle; import net.mograsim.logic.core.LogicObserver; import net.mograsim.logic.core.types.BitVectorFormatter; import net.mograsim.logic.core.wires.CoreWire.ReadEnd; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.components.ModelComponent; import net.mograsim.logic.model.serializing.IdentifyParams; import net.mograsim.logic.model.serializing.IndirectModelComponentCreator; @@ -46,12 +46,12 @@ public class ModelWireCrossPoint extends ModelComponent // creation and destruction - public ModelWireCrossPoint(ViewModelModifiable model, int logicWidth) + public ModelWireCrossPoint(LogicModelModifiable model, int logicWidth) { this(model, logicWidth, null); } - public ModelWireCrossPoint(ViewModelModifiable model, int logicWidth, String name) + public ModelWireCrossPoint(LogicModelModifiable model, int logicWidth, String name) { super(model, name); this.logicWidth = logicWidth; diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/wires/Pin.java b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/wires/Pin.java index 38ba2045..eb8df887 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/wires/Pin.java +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/wires/Pin.java @@ -9,7 +9,7 @@ import net.haspamelodica.swt.helper.swtobjectwrappers.Point; import net.mograsim.logic.model.model.components.ModelComponent; /** - * A connection interface between a ModelComponent and the rest of a ViewModel. Pins usually are created by {@link ModelComponent}s + * A connection interface between a ModelComponent and the rest of a LogicModel. Pins usually are created by {@link ModelComponent}s * themselves.
* A pin has a name identifying it. Pin names are unique for a {@link ModelComponent}: Every pin of a {@link ModelComponent} has a different * name, but different {@link ModelComponent}s can have pins with the same name. diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/modeladapter/LogicCoreAdapter.java b/net.mograsim.logic.model/src/net/mograsim/logic/model/modeladapter/LogicCoreAdapter.java index 397f9138..70f256ab 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/modeladapter/LogicCoreAdapter.java +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/modeladapter/LogicCoreAdapter.java @@ -13,7 +13,7 @@ import java.util.stream.Collectors; import net.mograsim.logic.core.timeline.Timeline; import net.mograsim.logic.core.wires.CoreWire; import net.mograsim.logic.core.wires.CoreWire.ReadEnd; -import net.mograsim.logic.model.model.ViewModel; +import net.mograsim.logic.model.model.LogicModel; import net.mograsim.logic.model.model.components.ModelComponent; import net.mograsim.logic.model.model.components.submodels.SubmodelComponent; import net.mograsim.logic.model.model.components.submodels.SubmodelInterface; @@ -31,23 +31,23 @@ public class LogicCoreAdapter componentAdapters.put(componentAdapter.getSupportedClass(), componentAdapter); } - public static Timeline convert(ViewModel viewModel, CoreModelParameters params) + public static Timeline convert(LogicModel logicModel, CoreModelParameters params) { // TODO replace Timeline with CoreModel as soon as it exists Timeline timeline = new Timeline(10); - convert(viewModel, params, timeline, Map.of()); + convert(logicModel, params, timeline, Map.of()); return timeline; } - private static void convert(ViewModel viewModel, CoreModelParameters params, Timeline timeline, Map externalWires) + private static void convert(LogicModel logicModel, CoreModelParameters params, Timeline timeline, Map externalWires) { - Map logicWiresPerPin = convertWires(getAllPins(viewModel), viewModel.getWiresByName().values(), externalWires, + Map logicWiresPerPin = convertWires(getAllPins(logicModel), logicModel.getWiresByName().values(), externalWires, params, timeline); Map logicWiresPerPinUnmodifiable = Collections.unmodifiableMap(logicWiresPerPin); - for (ModelComponent modelComp : viewModel.getComponentsByName().values()) + for (ModelComponent modelComp : logicModel.getComponentsByName().values()) { if (modelComp instanceof SubmodelComponent) { @@ -65,9 +65,9 @@ public class LogicCoreAdapter } } - private static Set getAllPins(ViewModel viewModel) + private static Set getAllPins(LogicModel logicModel) { - return viewModel.getComponentsByName().values().stream().flatMap(component -> component.getPins().values().stream()) + return logicModel.getComponentsByName().values().stream().flatMap(component -> component.getPins().values().stream()) .collect(Collectors.toSet()); } diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/serializing/DeserializedSubmodelComponent.java b/net.mograsim.logic.model/src/net/mograsim/logic/model/serializing/DeserializedSubmodelComponent.java index c52fe294..cb7d4741 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/serializing/DeserializedSubmodelComponent.java +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/serializing/DeserializedSubmodelComponent.java @@ -2,7 +2,7 @@ package net.mograsim.logic.model.serializing; import com.google.gson.JsonElement; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.components.submodels.SubmodelComponent; import net.mograsim.logic.model.model.wires.MovablePin; import net.mograsim.logic.model.model.wires.Pin; @@ -15,7 +15,7 @@ public class DeserializedSubmodelComponent extends SubmodelComponent * If a DeserializedSubmodelComponent is part of another SubmodelComponent, when it it serialized, it should not return its internal * structure, but rather the component ID used to create it. * - * @see SubmodelComponentSerializer#deserialize(ViewModelModifiable, SubmodelComponentParams, String, String, JsonElement) + * @see SubmodelComponentSerializer#deserialize(LogicModelModifiable, SubmodelComponentParams, String, String, JsonElement) * SubmodelComponentSerializer.deserialize(...) * @see SubmodelComponentSerializer#serialize(SubmodelComponent, java.util.function.Function) SubmodelComponentSerializer.serialize(...) */ @@ -25,7 +25,7 @@ public class DeserializedSubmodelComponent extends SubmodelComponent */ public final JsonElement paramsForSerializingOverride; - public DeserializedSubmodelComponent(ViewModelModifiable model, String name, String idForSerializingOverride, + public DeserializedSubmodelComponent(LogicModelModifiable model, String name, String idForSerializingOverride, JsonElement paramsForSerializingOverride) { super(model, name); @@ -51,7 +51,7 @@ public class DeserializedSubmodelComponent extends SubmodelComponent super.setHighLevelStateHandler(handler); } - public ViewModelModifiable getSubmodelModifiable() + public LogicModelModifiable getSubmodelModifiable() { return submodelModifiable; } diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/serializing/IndirectModelComponentCreator.java b/net.mograsim.logic.model/src/net/mograsim/logic/model/serializing/IndirectModelComponentCreator.java index b6585742..fce47c17 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/serializing/IndirectModelComponentCreator.java +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/serializing/IndirectModelComponentCreator.java @@ -12,7 +12,7 @@ import com.google.gson.JsonElement; import com.google.gson.JsonNull; import com.google.gson.JsonObject; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.components.ModelComponent; import net.mograsim.logic.model.model.components.submodels.SubmodelComponent; import net.mograsim.logic.model.util.JsonHandler; @@ -76,22 +76,22 @@ public class IndirectModelComponentCreator componentSuppliers.put(id, componentSupplier); } - public static ModelComponent createComponent(ViewModelModifiable model, String id) + public static ModelComponent createComponent(LogicModelModifiable model, String id) { return createComponent(model, id, (String) null); } - public static ModelComponent createComponent(ViewModelModifiable model, String id, String name) + public static ModelComponent createComponent(LogicModelModifiable model, String id, String name) { return createComponent(model, id, JsonNull.INSTANCE, name); } - public static ModelComponent createComponent(ViewModelModifiable model, String id, JsonElement params) + public static ModelComponent createComponent(LogicModelModifiable model, String id, JsonElement params) { return createComponent(model, id, params, null); } - public static ModelComponent createComponent(ViewModelModifiable model, String id, JsonElement params, String name) + public static ModelComponent createComponent(LogicModelModifiable model, String id, JsonElement params, String name) { if (id == null) throw new NullPointerException("Component ID is null"); @@ -184,7 +184,7 @@ public class IndirectModelComponentCreator return id.matches("jsonfile:(.+)|(resloader:([^:]+):)?(jsonres|class):[^:]+"); } - private static SubmodelComponent loadComponentFromJsonObject(ViewModelModifiable model, String id, String name, JsonObject jsonContents) + private static SubmodelComponent loadComponentFromJsonObject(LogicModelModifiable model, String id, String name, JsonObject jsonContents) { componentCache.putIfAbsent(id, jsonContents); SerializablePojo jsonContentsAsSerializablePojo = JsonHandler.parser.fromJson(jsonContents, SerializablePojo.class); @@ -217,6 +217,6 @@ public class IndirectModelComponentCreator public static interface ComponentSupplier { - public ModelComponent create(ViewModelModifiable model, JsonElement params, String name); + public ModelComponent create(LogicModelModifiable model, JsonElement params, String name); } } \ No newline at end of file diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/serializing/LegacySubmodelComponentSerializer.java b/net.mograsim.logic.model/src/net/mograsim/logic/model/serializing/LegacySubmodelComponentSerializer.java index f456aad2..37b05a90 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/serializing/LegacySubmodelComponentSerializer.java +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/serializing/LegacySubmodelComponentSerializer.java @@ -9,7 +9,7 @@ import java.util.function.Function; import com.google.gson.JsonElement; import net.haspamelodica.swt.helper.swtobjectwrappers.Point; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.components.ModelComponent; import net.mograsim.logic.model.model.components.submodels.SubmodelComponent; import net.mograsim.logic.model.model.wires.ModelWire; @@ -37,23 +37,23 @@ public final class LegacySubmodelComponentSerializer // convenience methods /** - * Like {@link #deserialize(ViewModelModifiable, LegacySubmodelComponentParams)}, but first reading the + * Like {@link #deserialize(LogicModelModifiable, LegacySubmodelComponentParams)}, but first reading the * {@link LegacySubmodelComponentParams} from the given file path. * * @author Daniel Kirschten */ - public static SubmodelComponent deserialize(ViewModelModifiable model, String sourcePath) throws IOException + public static SubmodelComponent deserialize(LogicModelModifiable model, String sourcePath) throws IOException { return deserialize(model, JsonHandler.readJson(sourcePath, LegacySubmodelComponentParams.class)); } /** - * Like {@link #deserialize(ViewModelModifiable, LegacySubmodelComponentParams, String, JsonElement)}, but first reading the + * Like {@link #deserialize(LogicModelModifiable, LegacySubmodelComponentParams, String, JsonElement)}, but first reading the * {@link LegacySubmodelComponentParams} from the given file path. * * @author Daniel Kirschten */ - public static SubmodelComponent deserialize(ViewModelModifiable model, String sourcePath, String idForSerializingOverride, + public static SubmodelComponent deserialize(LogicModelModifiable model, String sourcePath, String idForSerializingOverride, JsonElement paramsForSerializingOverride) throws IOException { return deserialize(model, JsonHandler.readJson(sourcePath, LegacySubmodelComponentParams.class), idForSerializingOverride, @@ -61,23 +61,23 @@ public final class LegacySubmodelComponentSerializer } /** - * Like {@link #deserialize(ViewModelModifiable, LegacySubmodelComponentParams, String)}, but first reading the + * Like {@link #deserialize(LogicModelModifiable, LegacySubmodelComponentParams, String)}, but first reading the * {@link LegacySubmodelComponentParams} from the given file path. * * @author Daniel Kirschten */ - public static SubmodelComponent deserialize(ViewModelModifiable model, String sourcePath, String name) throws IOException + public static SubmodelComponent deserialize(LogicModelModifiable model, String sourcePath, String name) throws IOException { return deserialize(model, JsonHandler.readJson(sourcePath, LegacySubmodelComponentParams.class), name); } /** - * Like {@link #deserialize(ViewModelModifiable, LegacySubmodelComponentParams, String, String, JsonElement)}, but first reading the + * Like {@link #deserialize(LogicModelModifiable, LegacySubmodelComponentParams, String, String, JsonElement)}, but first reading the * {@link LegacySubmodelComponentParams} from the given file path. * * @author Daniel Kirschten */ - public static SubmodelComponent deserialize(ViewModelModifiable model, String sourcePath, String name, String idForSerializingOverride, + public static SubmodelComponent deserialize(LogicModelModifiable model, String sourcePath, String name, String idForSerializingOverride, JsonElement paramsForSerializingOverride) throws IOException { return deserialize(model, JsonHandler.readJson(sourcePath, LegacySubmodelComponentParams.class), name, idForSerializingOverride, @@ -85,34 +85,34 @@ public final class LegacySubmodelComponentSerializer } /** - * {@link #deserialize(ViewModelModifiable, LegacySubmodelComponentParams, String, String, JsonElement)} with no + * {@link #deserialize(LogicModelModifiable, LegacySubmodelComponentParams, String, String, JsonElement)} with no * idForSerializingOverride set and using the default name. * * @author Daniel Kirschten */ - public static SubmodelComponent deserialize(ViewModelModifiable model, LegacySubmodelComponentParams params) + public static SubmodelComponent deserialize(LogicModelModifiable model, LegacySubmodelComponentParams params) { return deserialize(model, params, null, null, null); } /** - * {@link #deserialize(ViewModelModifiable, LegacySubmodelComponentParams, String, String, JsonElement)} using the default name. + * {@link #deserialize(LogicModelModifiable, LegacySubmodelComponentParams, String, String, JsonElement)} using the default name. * * @author Daniel Kirschten */ - public static SubmodelComponent deserialize(ViewModelModifiable model, LegacySubmodelComponentParams params, + public static SubmodelComponent deserialize(LogicModelModifiable model, LegacySubmodelComponentParams params, String idForSerializingOverride, JsonElement paramsForSerializingOverride) { return deserialize(model, params, null, idForSerializingOverride, paramsForSerializingOverride); } /** - * {@link #deserialize(ViewModelModifiable, LegacySubmodelComponentParams, String, String, JsonElement)} with no + * {@link #deserialize(LogicModelModifiable, LegacySubmodelComponentParams, String, String, JsonElement)} with no * idForSerializingOverride set. * * @author Daniel Kirschten */ - public static SubmodelComponent deserialize(ViewModelModifiable model, LegacySubmodelComponentParams params, String name) + public static SubmodelComponent deserialize(LogicModelModifiable model, LegacySubmodelComponentParams params, String name) { return deserialize(model, params, name, null, null); } @@ -164,7 +164,7 @@ public final class LegacySubmodelComponentSerializer * @author Daniel Kirschten */ @SuppressWarnings("unused") // for ModelWire being created - public static SubmodelComponent deserialize(ViewModelModifiable model, LegacySubmodelComponentParams params, String name, + public static SubmodelComponent deserialize(LogicModelModifiable model, LegacySubmodelComponentParams params, String name, String idForSerializingOverride, JsonElement paramsForSerializingOverride) { DeserializedSubmodelComponent comp = new DeserializedSubmodelComponent(model, name, idForSerializingOverride, @@ -176,7 +176,7 @@ public final class LegacySubmodelComponentSerializer comp.addSubmodelInterface(new MovablePin(comp, iPinParams.name, iPinParams.logicWidth, PinUsage.TRISTATE, iPinParams.location.x, iPinParams.location.y)); LegacySubmodelParameters submodelParams = params.submodel; - ViewModelModifiable submodelModifiable = comp.getSubmodelModifiable(); + LogicModelModifiable submodelModifiable = comp.getSubmodelModifiable(); Map componentsByName = submodelModifiable.getComponentsByName(); ModelComponent[] components = new ModelComponent[submodelParams.subComps.length]; for (int i = 0; i < components.length; i++) @@ -206,7 +206,7 @@ public final class LegacySubmodelComponentSerializer * Subcomponents are serialized in the following way:
* If a subcomponent is a SubmodelComponent which has been deserialized, and it has an * {@link DeserializedSubmodelComponent#idForSerializingOverride idForSerializingOverride} set (e.g. non-null; see - * {@link #deserialize(ViewModelModifiable, LegacySubmodelComponentParams, String, String, JsonElement) deserialize(...)}), this ID and + * {@link #deserialize(LogicModelModifiable, LegacySubmodelComponentParams, String, String, JsonElement) deserialize(...)}), this ID and * the component's {@link DeserializedSubmodelComponent#paramsForSerializingOverride paramsForSerializingOverride} are written.
* If this case doesn't apply (e.g. if the subcomponent is not a SubmodelComponent; or it is a * SubmodelComponent, but hasn't been deserialized; or it has no diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/serializing/ViewModelParams.java b/net.mograsim.logic.model/src/net/mograsim/logic/model/serializing/LogicModelParams.java similarity index 86% rename from net.mograsim.logic.model/src/net/mograsim/logic/model/serializing/ViewModelParams.java rename to net.mograsim.logic.model/src/net/mograsim/logic/model/serializing/LogicModelParams.java index 6f4f82c3..187d82c5 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/serializing/ViewModelParams.java +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/serializing/LogicModelParams.java @@ -5,12 +5,12 @@ import com.google.gson.JsonElement; import net.haspamelodica.swt.helper.swtobjectwrappers.Point; import net.mograsim.logic.model.util.Version; -public class ViewModelParams extends SerializablePojo +public class LogicModelParams extends SerializablePojo { public ComponentParams[] components; public WireParams[] wires; - public ViewModelParams(Version version) + public LogicModelParams(Version version) { super(version); } diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/serializing/ViewModelSerializer.java b/net.mograsim.logic.model/src/net/mograsim/logic/model/serializing/LogicModelSerializer.java similarity index 68% rename from net.mograsim.logic.model/src/net/mograsim/logic/model/serializing/ViewModelSerializer.java rename to net.mograsim.logic.model/src/net/mograsim/logic/model/serializing/LogicModelSerializer.java index 443fe050..c3b70bdf 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/serializing/ViewModelSerializer.java +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/serializing/LogicModelSerializer.java @@ -12,97 +12,97 @@ import java.util.Set; import com.google.gson.JsonElement; import net.haspamelodica.swt.helper.swtobjectwrappers.Point; -import net.mograsim.logic.model.model.ViewModel; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModel; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.components.ModelComponent; import net.mograsim.logic.model.model.components.submodels.SubmodelComponent; import net.mograsim.logic.model.model.wires.ModelWire; -import net.mograsim.logic.model.serializing.ViewModelParams.ComponentParams; -import net.mograsim.logic.model.serializing.ViewModelParams.WireParams; -import net.mograsim.logic.model.serializing.ViewModelParams.WireParams.PinParams; +import net.mograsim.logic.model.serializing.LogicModelParams.ComponentParams; +import net.mograsim.logic.model.serializing.LogicModelParams.WireParams; +import net.mograsim.logic.model.serializing.LogicModelParams.WireParams.PinParams; import net.mograsim.logic.model.util.JsonHandler; import net.mograsim.logic.model.util.Version; -public class ViewModelSerializer +public class LogicModelSerializer { public static final Version CURRENT_JSON_VERSION = Version.parseSemver("0.1.1"); // convenience methods /** - * Like {@link #deserialize(ViewModelParams)}, but first reading the {@link ViewModelParams} from the given file path. + * Like {@link #deserialize(LogicModelParams)}, but first reading the {@link LogicModelParams} from the given file path. * * @author Daniel Kirschten */ - public static ViewModelModifiable deserialize(String sourcePath) throws IOException + public static LogicModelModifiable deserialize(String sourcePath) throws IOException { - return deserialize(JsonHandler.readJson(sourcePath, ViewModelParams.class)); + return deserialize(JsonHandler.readJson(sourcePath, LogicModelParams.class)); } /** - * Like {@link #deserialize(ViewModelModifiable, ViewModelParams)}, but first reading the {@link ViewModelParams} from the given file + * Like {@link #deserialize(LogicModelModifiable, LogicModelParams)}, but first reading the {@link LogicModelParams} from the given file * path. * * @author Daniel Kirschten */ - public static void deserialize(ViewModelModifiable model, String sourcePath) throws IOException + public static void deserialize(LogicModelModifiable model, String sourcePath) throws IOException { - deserialize(model, JsonHandler.readJson(sourcePath, ViewModelParams.class)); + deserialize(model, JsonHandler.readJson(sourcePath, LogicModelParams.class)); } /** - * Like {@link #deserialize(ViewModelModifiable, ViewModelParams)}, but using a newly created {@link ViewModelModifiable}. + * Like {@link #deserialize(LogicModelModifiable, LogicModelParams)}, but using a newly created {@link LogicModelModifiable}. * * @author Daniel Kirschten */ - public static ViewModelModifiable deserialize(ViewModelParams params) + public static LogicModelModifiable deserialize(LogicModelParams params) { - ViewModelModifiable model = new ViewModelModifiable(); + LogicModelModifiable model = new LogicModelModifiable(); deserialize(model, params); return model; } /** - * Like {@link #serialize(ViewModel)}, but instead of returning the generated {@link ViewModelParams} they are written to a file at the + * Like {@link #serialize(LogicModel)}, but instead of returning the generated {@link LogicModelParams} they are written to a file at the * given path. * * @author Daniel Kirschten */ - public static void serialize(ViewModel model, String targetPath) throws IOException + public static void serialize(LogicModel model, String targetPath) throws IOException { JsonHandler.writeJson(serialize(model), targetPath); } /** - * Like {@link #serialize(ViewModel, IdentifierGetter)}, but instead of returning the generated {@link ViewModelParams} they are written + * Like {@link #serialize(LogicModel, IdentifierGetter)}, but instead of returning the generated {@link LogicModelParams} they are written * to a file at the given path. * * @author Daniel Kirschten */ - public static void serialize(ViewModel model, IdentifyParams idParams, String targetPath) throws IOException + public static void serialize(LogicModel model, IdentifyParams idParams, String targetPath) throws IOException { JsonHandler.writeJson(serialize(model, idParams), targetPath); } /** - * {@link #serialize(ViewModel, IdentifierGetter)} using a default {@link IdentifierGetter} (see IdentifierGetter's + * {@link #serialize(LogicModel, IdentifierGetter)} using a default {@link IdentifierGetter} (see IdentifierGetter's * {@link IdentifierGetter#IdentifierGetter() default constructor}) * * @author Daniel Kirschten */ - public static ViewModelParams serialize(ViewModel model) + public static LogicModelParams serialize(LogicModel model) { return serialize(model, new IdentifyParams()); } // "core" methods /** - * Deserializes components and wires from the specified {@link ViewModelParams} and adds them to the given {@link ViewModelModifiable}. + * Deserializes components and wires from the specified {@link LogicModelParams} and adds them to the given {@link LogicModelModifiable}. * * @author Fabian Stemmler * @author Daniel Kirschten */ @SuppressWarnings("unused") // for ModelWire being created - public static void deserialize(ViewModelModifiable model, ViewModelParams params) + public static void deserialize(LogicModelModifiable model, LogicModelParams params) { Map componentsByName = model.getComponentsByName(); ModelComponent[] components = new ModelComponent[params.components.length]; @@ -122,11 +122,11 @@ public class ViewModelSerializer } /** - * Returns {@link ViewModelModifiable}, which describe the components and wires in the given {@link ViewModel}.
+ * Returns {@link LogicModelModifiable}, which describe the components and wires in the given {@link LogicModel}.
* Components are serialized in the following way:
* If a component is a SubmodelComponent which has been deserialized, and it has an * {@link DeserializedSubmodelComponent#idForSerializingOverride idForSerializingOverride} set (e.g. non-null; see - * {@link SubmodelComponentSerializer#deserialize(ViewModelModifiable, SubmodelComponentParams, String, String, JsonElement) + * {@link SubmodelComponentSerializer#deserialize(LogicModelModifiable, SubmodelComponentParams, String, String, JsonElement) * SubmodelComponentSerializer.deserialize(...)}), this ID and the component's * {@link DeserializedSubmodelComponent#paramsForSerializingOverride paramsForSerializingOverride} are written.
* If this case doesn't apply (e.g. if the component is not a SubmodelComponent; or it is a SubmodelComponent, @@ -137,9 +137,9 @@ public class ViewModelSerializer * @author Fabian Stemmler * @author Daniel Kirschten */ - public static ViewModelParams serialize(ViewModel model, IdentifyParams idParams) + public static LogicModelParams serialize(LogicModel model, IdentifyParams idParams) { - ViewModelParams modelParams = new ViewModelParams(CURRENT_JSON_VERSION); + LogicModelParams modelParams = new LogicModelParams(CURRENT_JSON_VERSION); Map components = new HashMap<>(model.getComponentsByName()); components.remove(SubmodelComponent.SUBMODEL_INTERFACE_NAME); diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/serializing/SubmodelComponentParams.java b/net.mograsim.logic.model/src/net/mograsim/logic/model/serializing/SubmodelComponentParams.java index 1cb5fcbc..97b3c7c1 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/serializing/SubmodelComponentParams.java +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/serializing/SubmodelComponentParams.java @@ -16,7 +16,7 @@ public class SubmodelComponentParams extends SerializablePojo public double width, height; public InterfacePinParams[] interfacePins; public double innerScale; - public ViewModelParams submodel; + public LogicModelParams submodel; // functionality that needs to be expressed in Java code public String symbolRendererSnippetID; diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/serializing/SubmodelComponentSerializer.java b/net.mograsim.logic.model/src/net/mograsim/logic/model/serializing/SubmodelComponentSerializer.java index d09ed4a4..ce770ac8 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/serializing/SubmodelComponentSerializer.java +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/serializing/SubmodelComponentSerializer.java @@ -6,7 +6,7 @@ import java.util.Comparator; import com.google.gson.JsonElement; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.components.submodels.SubmodelComponent; import net.mograsim.logic.model.model.wires.MovablePin; import net.mograsim.logic.model.model.wires.Pin; @@ -32,23 +32,23 @@ public final class SubmodelComponentSerializer // convenience methods /** - * Like {@link #deserialize(ViewModelModifiable, SubmodelComponentParams)}, but first reading the {@link SubmodelComponentParams} from + * Like {@link #deserialize(LogicModelModifiable, SubmodelComponentParams)}, but first reading the {@link SubmodelComponentParams} from * the given file path. * * @author Daniel Kirschten */ - public static SubmodelComponent deserialize(ViewModelModifiable model, String sourcePath) throws IOException + public static SubmodelComponent deserialize(LogicModelModifiable model, String sourcePath) throws IOException { return deserialize(model, JsonHandler.readJson(sourcePath, SubmodelComponentParams.class)); } /** - * Like {@link #deserialize(ViewModelModifiable, SubmodelComponentParams, String, JsonElement)}, but first reading the + * Like {@link #deserialize(LogicModelModifiable, SubmodelComponentParams, String, JsonElement)}, but first reading the * {@link SubmodelComponentParams} from the given file path. * * @author Daniel Kirschten */ - public static SubmodelComponent deserialize(ViewModelModifiable model, String sourcePath, String idForSerializingOverride, + public static SubmodelComponent deserialize(LogicModelModifiable model, String sourcePath, String idForSerializingOverride, JsonElement paramsForSerializingOverride) throws IOException { return deserialize(model, JsonHandler.readJson(sourcePath, SubmodelComponentParams.class), idForSerializingOverride, @@ -56,23 +56,23 @@ public final class SubmodelComponentSerializer } /** - * Like {@link #deserialize(ViewModelModifiable, SubmodelComponentParams, String)}, but first reading the + * Like {@link #deserialize(LogicModelModifiable, SubmodelComponentParams, String)}, but first reading the * {@link SubmodelComponentParams} from the given file path. * * @author Daniel Kirschten */ - public static SubmodelComponent deserialize(ViewModelModifiable model, String sourcePath, String name) throws IOException + public static SubmodelComponent deserialize(LogicModelModifiable model, String sourcePath, String name) throws IOException { return deserialize(model, JsonHandler.readJson(sourcePath, SubmodelComponentParams.class), name); } /** - * Like {@link #deserialize(ViewModelModifiable, SubmodelComponentParams, String, String, JsonElement)}, but first reading the + * Like {@link #deserialize(LogicModelModifiable, SubmodelComponentParams, String, String, JsonElement)}, but first reading the * {@link SubmodelComponentParams} from the given file path. * * @author Daniel Kirschten */ - public static SubmodelComponent deserialize(ViewModelModifiable model, String sourcePath, String name, String idForSerializingOverride, + public static SubmodelComponent deserialize(LogicModelModifiable model, String sourcePath, String name, String idForSerializingOverride, JsonElement paramsForSerializingOverride) throws IOException { return deserialize(model, JsonHandler.readJson(sourcePath, SubmodelComponentParams.class), name, idForSerializingOverride, @@ -80,34 +80,34 @@ public final class SubmodelComponentSerializer } /** - * {@link #deserialize(ViewModelModifiable, SubmodelComponentParams, String, String, JsonElement)} with no + * {@link #deserialize(LogicModelModifiable, SubmodelComponentParams, String, String, JsonElement)} with no * idForSerializingOverride set and using the default name. * * @author Daniel Kirschten */ - public static SubmodelComponent deserialize(ViewModelModifiable model, SubmodelComponentParams params) + public static SubmodelComponent deserialize(LogicModelModifiable model, SubmodelComponentParams params) { return deserialize(model, params, null, null, null); } /** - * {@link #deserialize(ViewModelModifiable, SubmodelComponentParams, String, String, JsonElement)} using the default name. + * {@link #deserialize(LogicModelModifiable, SubmodelComponentParams, String, String, JsonElement)} using the default name. * * @author Daniel Kirschten */ - public static SubmodelComponent deserialize(ViewModelModifiable model, SubmodelComponentParams params, String idForSerializingOverride, + public static SubmodelComponent deserialize(LogicModelModifiable model, SubmodelComponentParams params, String idForSerializingOverride, JsonElement paramsForSerializingOverride) { return deserialize(model, params, null, idForSerializingOverride, paramsForSerializingOverride); } /** - * {@link #deserialize(ViewModelModifiable, SubmodelComponentParams, String, String, JsonElement)} with no + * {@link #deserialize(LogicModelModifiable, SubmodelComponentParams, String, String, JsonElement)} with no * idForSerializingOverride set. * * @author Daniel Kirschten */ - public static SubmodelComponent deserialize(ViewModelModifiable model, SubmodelComponentParams params, String name) + public static SubmodelComponent deserialize(LogicModelModifiable model, SubmodelComponentParams params, String name) { return deserialize(model, params, name, null, null); } @@ -159,7 +159,7 @@ public final class SubmodelComponentSerializer * @author Daniel Kirschten */ @SuppressWarnings("unused") // for ModelWire being created - public static SubmodelComponent deserialize(ViewModelModifiable model, SubmodelComponentParams params, String name, + public static SubmodelComponent deserialize(LogicModelModifiable model, SubmodelComponentParams params, String name, String idForSerializingOverride, JsonElement paramsForSerializingOverride) { Version version = params.version; @@ -174,8 +174,8 @@ public final class SubmodelComponentSerializer // TRISTATE because we don't have a better choice comp.addSubmodelInterface(new MovablePin(comp, iPinParams.name, iPinParams.logicWidth, hasUsageSerialized ? iPinParams.usage : PinUsage.TRISTATE, iPinParams.location.x, iPinParams.location.y)); - ViewModelModifiable submodelModifiable = comp.getSubmodelModifiable(); - ViewModelSerializer.deserialize(comp.getSubmodelModifiable(), params.submodel); + LogicModelModifiable submodelModifiable = comp.getSubmodelModifiable(); + LogicModelSerializer.deserialize(comp.getSubmodelModifiable(), params.submodel); comp.setSymbolRenderer(SubmodelComponentSnippetSuppliers.symbolRendererSupplier.getSnippetSupplier(params.symbolRendererSnippetID) .create(comp, params.symbolRendererParams)); comp.setOutlineRenderer(SubmodelComponentSnippetSuppliers.outlineRendererSupplier @@ -187,8 +187,8 @@ public final class SubmodelComponentSerializer /** * Returns {@link SubmodelComponentParams}, which describe this {@link SubmodelComponent}.
- * See {@link ViewModelSerializer#serialize(net.mograsim.logic.model.model.ViewModel, IdentifierGetter) - * ViewModelSerializer.serialize(...)} for how subcomponents are serialized.
+ * See {@link LogicModelSerializer#serialize(net.mograsim.logic.model.model.LogicModel, IdentifierGetter) + * LogicModelSerializer.serialize(...)} for how subcomponents are serialized.
* CodeSnippets are serialized using the ID defined by idGetter and the params obtained by the respective * getParamsForSerializing methods ({@link Renderer#getParamsForSerializing()}). * @@ -199,7 +199,7 @@ public final class SubmodelComponentSerializer { SubmodelComponentParams params = new SubmodelComponentParams(JSON_VERSION_CURRENT_SERIALIZING); params.innerScale = comp.getSubmodelScale(); - params.submodel = ViewModelSerializer.serialize(comp.submodel, idParams); + params.submodel = LogicModelSerializer.serialize(comp.submodel, idParams); params.width = comp.getWidth(); params.height = comp.getHeight(); diff --git a/net.mograsim.logic.model/src/net/mograsim/logic/model/util/ModellingTool.java b/net.mograsim.logic.model/src/net/mograsim/logic/model/util/ModellingTool.java index 06ce3ca6..58a86ea0 100644 --- a/net.mograsim.logic.model/src/net/mograsim/logic/model/util/ModellingTool.java +++ b/net.mograsim.logic.model/src/net/mograsim/logic/model/util/ModellingTool.java @@ -1,6 +1,6 @@ package net.mograsim.logic.model.util; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.components.ModelComponent; import net.mograsim.logic.model.model.wires.ModelWire; import net.mograsim.logic.model.model.wires.Pin; @@ -8,9 +8,9 @@ import net.mograsim.logic.model.model.wires.ModelWireCrossPoint; public class ModellingTool { - private ViewModelModifiable model; + private LogicModelModifiable model; - ModellingTool(ViewModelModifiable model) + ModellingTool(LogicModelModifiable model) { this.model = model; } @@ -105,7 +105,7 @@ public class ModellingTool return new ModelWire(model, name, a, b); } - public static ModellingTool createFor(ViewModelModifiable model) + public static ModellingTool createFor(LogicModelModifiable model) { return new ModellingTool(model); } diff --git a/net.mograsim.machine/src/net/mograsim/machine/Machine.java b/net.mograsim.machine/src/net/mograsim/machine/Machine.java index ef91fd44..372c1886 100644 --- a/net.mograsim.machine/src/net/mograsim/machine/Machine.java +++ b/net.mograsim.machine/src/net/mograsim/machine/Machine.java @@ -3,14 +3,14 @@ package net.mograsim.machine; import net.mograsim.logic.core.components.CoreClock; import net.mograsim.logic.core.timeline.Timeline; import net.mograsim.logic.core.types.BitVector; -import net.mograsim.logic.model.model.ViewModel; +import net.mograsim.logic.model.model.LogicModel; public interface Machine { MachineDefinition getDefinition(); void reset(); - ViewModel getModel(); + LogicModel getModel(); CoreClock getClock(); diff --git a/net.mograsim.machine/src/net/mograsim/machine/standard/memory/ModelMemoryWA.java b/net.mograsim.machine/src/net/mograsim/machine/standard/memory/ModelMemoryWA.java index 8f40ceda..78bd16f4 100644 --- a/net.mograsim.machine/src/net/mograsim/machine/standard/memory/ModelMemoryWA.java +++ b/net.mograsim.machine/src/net/mograsim/machine/standard/memory/ModelMemoryWA.java @@ -2,7 +2,7 @@ package net.mograsim.machine.standard.memory; import net.haspamelodica.swt.helper.gcs.GeneralGC; import net.haspamelodica.swt.helper.swtobjectwrappers.Rectangle; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.components.ModelComponent; import net.mograsim.logic.model.model.components.atomic.ModelAndGate; import net.mograsim.logic.model.model.wires.Pin; @@ -26,7 +26,7 @@ public class ModelMemoryWA extends ModelComponent private Renderer symbolRenderer; private Renderer outlineRenderer; - public ModelMemoryWA(ViewModelModifiable model, MainMemoryDefinition definition, String name) + public ModelMemoryWA(LogicModelModifiable model, MainMemoryDefinition definition, String name) { super(model, name); this.definition = definition; diff --git a/net.mograsim.plugin.core/src/net/mograsim/plugin/SimulationPreview.java b/net.mograsim.plugin.core/src/net/mograsim/plugin/SimulationPreview.java index bff6d616..5fcc1688 100644 --- a/net.mograsim.plugin.core/src/net/mograsim/plugin/SimulationPreview.java +++ b/net.mograsim.plugin.core/src/net/mograsim/plugin/SimulationPreview.java @@ -9,7 +9,7 @@ import net.haspamelodica.swt.helper.swtobjectwrappers.Point; import net.mograsim.logic.core.timeline.Timeline; import net.mograsim.logic.model.LogicExecuter; import net.mograsim.logic.model.LogicUICanvas; -import net.mograsim.logic.model.model.ViewModelModifiable; +import net.mograsim.logic.model.model.LogicModelModifiable; import net.mograsim.logic.model.model.components.atomic.ModelManualSwitch; import net.mograsim.logic.model.model.components.atomic.ModelNotGate; import net.mograsim.logic.model.model.components.atomic.ModelOrGate; @@ -36,7 +36,7 @@ public class SimulationPreview implements IThemePreview // TODO this will change the global preferences; so if another LogicUICanvas redraws, it will use the "new" colors too. Preferences.setPreferences(currentThemePreferences); - ViewModelModifiable model = new ViewModelModifiable(); + LogicModelModifiable model = new LogicModelModifiable(); CoreModelParameters params = new CoreModelParameters(); params.gateProcessTime = 50; params.wireTravelTime = 10; -- 2.17.1