A proposal for resolving the loading problem of json files
[Mograsim.git] / net.mograsim.logic.model.am2900 / components / GUIdlatch4.json
index c42e6d0..3bc4df7 100644 (file)
@@ -1,4 +1,3 @@
-mograsim version: 0.1.3
 {
   "width": 35.0,
   "height": 50.0,
@@ -6,140 +5,149 @@ mograsim version: 0.1.3
     {
       "location": {
         "x": 0.0,
-        "y": 35.0
+        "y": 45.0
       },
-      "name": "D4",
-      "logicWidth": 1
+      "name": "C",
+      "logicWidth": 1,
+      "usage": "INPUT"
     },
     {
       "location": {
-        "x": 35.0,
+        "x": 0.0,
         "y": 5.0
       },
-      "name": "Q1",
-      "logicWidth": 1
+      "name": "D1",
+      "logicWidth": 1,
+      "usage": "INPUT"
     },
     {
       "location": {
-        "x": 35.0,
+        "x": 0.0,
         "y": 15.0
       },
-      "name": "Q2",
-      "logicWidth": 1
+      "name": "D2",
+      "logicWidth": 1,
+      "usage": "INPUT"
     },
     {
       "location": {
-        "x": 35.0,
+        "x": 0.0,
         "y": 25.0
       },
-      "name": "Q3",
-      "logicWidth": 1
+      "name": "D3",
+      "logicWidth": 1,
+      "usage": "INPUT"
     },
     {
       "location": {
         "x": 0.0,
-        "y": 45.0
+        "y": 35.0
       },
-      "name": "C",
-      "logicWidth": 1
+      "name": "D4",
+      "logicWidth": 1,
+      "usage": "INPUT"
     },
     {
       "location": {
         "x": 35.0,
-        "y": 35.0
+        "y": 5.0
       },
-      "name": "Q4",
-      "logicWidth": 1
+      "name": "Q1",
+      "logicWidth": 1,
+      "usage": "OUTPUT"
     },
     {
       "location": {
-        "x": 0.0,
-        "y": 5.0
+        "x": 35.0,
+        "y": 15.0
       },
-      "name": "D1",
-      "logicWidth": 1
+      "name": "Q2",
+      "logicWidth": 1,
+      "usage": "OUTPUT"
     },
     {
       "location": {
-        "x": 0.0,
-        "y": 15.0
+        "x": 35.0,
+        "y": 25.0
       },
-      "name": "D2",
-      "logicWidth": 1
+      "name": "Q3",
+      "logicWidth": 1,
+      "usage": "OUTPUT"
     },
     {
       "location": {
-        "x": 0.0,
-        "y": 25.0
+        "x": 35.0,
+        "y": 35.0
       },
-      "name": "D3",
-      "logicWidth": 1
+      "name": "Q4",
+      "logicWidth": 1,
+      "usage": "OUTPUT"
     }
   ],
+  "innerScale": 0.4,
   "submodel": {
-    "innerScale": 0.4,
-    "subComps": [
+    "components": [
       {
+        "id": "GUIdlatch",
+        "name": "GUIdlatch#0",
         "pos": {
-          "x": 14.0,
-          "y": 71.5
-        },
-        "id": "WireCrossPoint",
-        "name": "WireCrossPoint#1",
-        "params": 1
+          "x": 30.0,
+          "y": 7.5
+        }
       },
       {
+        "id": "GUIdlatch",
+        "name": "GUIdlatch#1",
         "pos": {
-          "x": 14.0,
-          "y": 46.5
-        },
-        "id": "WireCrossPoint",
-        "name": "WireCrossPoint#0",
-        "params": 1
+          "x": 30.0,
+          "y": 32.5
+        }
       },
       {
+        "id": "GUIdlatch",
+        "name": "GUIdlatch#2",
         "pos": {
-          "x": 14.0,
-          "y": 96.5
-        },
-        "id": "WireCrossPoint",
-        "name": "WireCrossPoint#2",
-        "params": 1
+          "x": 30.0,
+          "y": 57.5
+        }
       },
       {
+        "id": "GUIdlatch",
+        "name": "GUIdlatch#3",
         "pos": {
           "x": 30.0,
-          "y": 32.5
-        },
-        "id": "GUIdlatch",
-        "name": "GUIdlatch#1"
+          "y": 82.5
+        }
       },
       {
+        "id": "WireCrossPoint",
+        "name": "WireCrossPoint#0",
         "pos": {
-          "x": 30.0,
-          "y": 7.5
+          "x": 14.0,
+          "y": 46.5
         },
-        "id": "GUIdlatch",
-        "name": "GUIdlatch#0"
+        "params": 1
       },
       {
+        "id": "WireCrossPoint",
+        "name": "WireCrossPoint#1",
         "pos": {
-          "x": 30.0,
-          "y": 82.5
+          "x": 14.0,
+          "y": 71.5
         },
-        "id": "GUIdlatch",
-        "name": "GUIdlatch#3"
+        "params": 1
       },
       {
+        "id": "WireCrossPoint",
+        "name": "WireCrossPoint#2",
         "pos": {
-          "x": 30.0,
-          "y": 57.5
+          "x": 14.0,
+          "y": 96.5
         },
-        "id": "GUIdlatch",
-        "name": "GUIdlatch#2"
+        "params": 1
       }
     ],
-    "innerWires": [
+    "wires": [
       {
         "pin1": {
           "compName": "_submodelinterface",
@@ -149,6 +157,7 @@ mograsim version: 0.1.3
           "compName": "WireCrossPoint#2",
           "pinName": ""
         },
+        "name": "unnamedWire#0",
         "path": [
           {
             "x": 15.0,
@@ -165,6 +174,67 @@ mograsim version: 0.1.3
           "compName": "GUIdlatch#3",
           "pinName": "E"
         },
+        "name": "unnamedWire#1",
+        "path": []
+      },
+      {
+        "pin1": {
+          "compName": "_submodelinterface",
+          "pinName": "D4"
+        },
+        "pin2": {
+          "compName": "GUIdlatch#3",
+          "pinName": "D"
+        },
+        "name": "unnamedWire#10",
+        "path": []
+      },
+      {
+        "pin1": {
+          "compName": "GUIdlatch#0",
+          "pinName": "Q"
+        },
+        "pin2": {
+          "compName": "_submodelinterface",
+          "pinName": "Q1"
+        },
+        "name": "unnamedWire#11",
+        "path": []
+      },
+      {
+        "pin1": {
+          "compName": "GUIdlatch#1",
+          "pinName": "Q"
+        },
+        "pin2": {
+          "compName": "_submodelinterface",
+          "pinName": "Q2"
+        },
+        "name": "unnamedWire#12",
+        "path": []
+      },
+      {
+        "pin1": {
+          "compName": "GUIdlatch#2",
+          "pinName": "Q"
+        },
+        "pin2": {
+          "compName": "_submodelinterface",
+          "pinName": "Q3"
+        },
+        "name": "unnamedWire#13",
+        "path": []
+      },
+      {
+        "pin1": {
+          "compName": "GUIdlatch#3",
+          "pinName": "Q"
+        },
+        "pin2": {
+          "compName": "_submodelinterface",
+          "pinName": "Q4"
+        },
+        "name": "unnamedWire#14",
         "path": []
       },
       {
@@ -176,6 +246,7 @@ mograsim version: 0.1.3
           "compName": "WireCrossPoint#1",
           "pinName": ""
         },
+        "name": "unnamedWire#2",
         "path": []
       },
       {
@@ -187,6 +258,7 @@ mograsim version: 0.1.3
           "compName": "GUIdlatch#2",
           "pinName": "E"
         },
+        "name": "unnamedWire#3",
         "path": []
       },
       {
@@ -198,6 +270,7 @@ mograsim version: 0.1.3
           "compName": "WireCrossPoint#0",
           "pinName": ""
         },
+        "name": "unnamedWire#4",
         "path": []
       },
       {
@@ -209,6 +282,7 @@ mograsim version: 0.1.3
           "compName": "GUIdlatch#1",
           "pinName": "E"
         },
+        "name": "unnamedWire#5",
         "path": []
       },
       {
@@ -220,6 +294,7 @@ mograsim version: 0.1.3
           "compName": "GUIdlatch#0",
           "pinName": "E"
         },
+        "name": "unnamedWire#6",
         "path": [
           {
             "x": 15.0,
@@ -236,6 +311,7 @@ mograsim version: 0.1.3
           "compName": "GUIdlatch#0",
           "pinName": "D"
         },
+        "name": "unnamedWire#7",
         "path": []
       },
       {
@@ -247,6 +323,7 @@ mograsim version: 0.1.3
           "compName": "GUIdlatch#1",
           "pinName": "D"
         },
+        "name": "unnamedWire#8",
         "path": []
       },
       {
@@ -258,64 +335,11 @@ mograsim version: 0.1.3
           "compName": "GUIdlatch#2",
           "pinName": "D"
         },
-        "path": []
-      },
-      {
-        "pin1": {
-          "compName": "_submodelinterface",
-          "pinName": "D4"
-        },
-        "pin2": {
-          "compName": "GUIdlatch#3",
-          "pinName": "D"
-        },
-        "path": []
-      },
-      {
-        "pin1": {
-          "compName": "GUIdlatch#0",
-          "pinName": "Q"
-        },
-        "pin2": {
-          "compName": "_submodelinterface",
-          "pinName": "Q1"
-        },
-        "path": []
-      },
-      {
-        "pin1": {
-          "compName": "GUIdlatch#1",
-          "pinName": "Q"
-        },
-        "pin2": {
-          "compName": "_submodelinterface",
-          "pinName": "Q2"
-        },
-        "path": []
-      },
-      {
-        "pin1": {
-          "compName": "GUIdlatch#2",
-          "pinName": "Q"
-        },
-        "pin2": {
-          "compName": "_submodelinterface",
-          "pinName": "Q3"
-        },
-        "path": []
-      },
-      {
-        "pin1": {
-          "compName": "GUIdlatch#3",
-          "pinName": "Q"
-        },
-        "pin2": {
-          "compName": "_submodelinterface",
-          "pinName": "Q4"
-        },
+        "name": "unnamedWire#9",
         "path": []
       }
-    ]
+    ],
+    "version": "0.1.1"
   },
   "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
@@ -324,5 +348,58 @@ mograsim version: 0.1.3
     "horizontalComponentCenter": 17.5,
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
-  }
+  },
+  "outlineRendererSnippetID": "default",
+  "highLevelStateHandlerSnippetID": "standard",
+  "highLevelStateHandlerParams": {
+    "subcomponentHighLevelStates": {},
+    "atomicHighLevelStates": {
+      "q1": {
+        "id": "delegating",
+        "params": {
+          "delegateTarget": "GUIdlatch#0",
+          "subStateID": "q"
+        }
+      },
+      "q2": {
+        "id": "delegating",
+        "params": {
+          "delegateTarget": "GUIdlatch#1",
+          "subStateID": "q"
+        }
+      },
+      "q": {
+        "id": "bitVectorSplitting",
+        "params": {
+          "vectorPartTargets": [
+            "q1",
+            "q2",
+            "q3",
+            "q4"
+          ],
+          "vectorPartLengthes": [
+            1,
+            1,
+            1,
+            1
+          ]
+        }
+      },
+      "q3": {
+        "id": "delegating",
+        "params": {
+          "delegateTarget": "GUIdlatch#2",
+          "subStateID": "q"
+        }
+      },
+      "q4": {
+        "id": "delegating",
+        "params": {
+          "delegateTarget": "GUIdlatch#3",
+          "subStateID": "q"
+        }
+      }
+    }
+  },
+  "version": "0.1.5"
 }
\ No newline at end of file