Browse Source

support TwoDistanceBase ThreeDistanceMean

melon.yin 2 years ago
parent
commit
1f4f8af399

+ 835 - 0
assets/items.json

@@ -1,4 +1,839 @@
 [
+  {
+    "Name": "Qp/Qs",
+    "Description": "Qp/Qs",
+    "BriefAnnotation": "",
+    "MeasureTypeName": "MultiQpQs",
+    "Categories": ["CARD"],
+    "Calculator": { "AvailableOutputs": [{ "Name": "Ratio", "Description": "Ratio", "Unit": 0, "IsWorking": true }] },
+    "MultiMethodItems": [
+      {
+        "Name": "RVOT/LVOT",
+        "IsWorking": true,
+        "ChildItems": [
+          {
+            "Name": "Qp",
+            "Description": "Qp",
+            "IsWorking": false,
+            "ChildItems": [
+              {
+                "Name": "SV Diam",
+                "Description": "RVOT Diam",
+                "IsWorking": false,
+                "ChildItems": [],
+                "Calculator": { "AvailableOutputs": [{ "Name": "Distance", "Description": "Distance", "Unit": 11, "IsWorking": true }] },
+                "MeasureTypeName": "Distance"
+              },
+              {
+                "Name": "TA",
+                "Description": "RVOT VTI",
+                "IsWorking": false,
+                "ChildItems": [
+                  {
+                    "Name": "Auto",
+                    "Description": "Auto",
+                    "IsWorking": false,
+                    "ChildItems": [],
+                    "Calculator": {
+                      "AvailableOutputs": [
+                        { "Name": "Placeholder", "Description": "RVOT Trace", "Unit": 0, "IsWorking": true },
+                        { "Name": "TAMAX", "Description": "Mean Vel(Max Mode)", "Unit": 70 },
+                        { "Name": "TAMEAN", "Description": "Mean Vel(Mean Mode)", "Unit": 70 },
+                        { "Name": "PS", "Description": "PS", "Unit": 70 },
+                        { "Name": "ED", "Description": "ED", "Unit": 70 },
+                        { "Name": "MD", "Description": "MD", "Unit": 70 },
+                        { "Name": "HR", "Description": "HR", "Unit": 132 },
+                        { "Name": "Acceleration", "Description": "Acceleration", "Unit": 80 },
+                        { "Name": "AT", "Description": "AT", "Unit": 27 },
+                        { "Name": "PS/ED", "Description": "PS/ED", "Unit": 0 },
+                        { "Name": "ED/PS", "Description": "ED/PS", "Unit": 0 },
+                        { "Name": "PI", "Description": "PI", "Unit": 0 },
+                        { "Name": "PI(MD)", "Description": "PI(MD)", "Unit": 0 },
+                        { "Name": "RI", "Description": "RI", "Unit": 0 },
+                        { "Name": "RI(MD)", "Description": "RI(MD)", "Unit": 0 },
+                        { "Name": "Max PG", "Description": "PG Rel", "Unit": 110 },
+                        { "Name": "Vmax", "Description": "Vmax", "Unit": 70 },
+                        { "Name": "Vmean", "Description": "Vmean", "Unit": 70 },
+                        { "Name": "Peak PG", "Description": "Peak PG", "Unit": 110 },
+                        { "Name": "VTI", "Description": "RVOT VTI", "Unit": 10 },
+                        { "Name": "VTI(Mean)", "Description": "VTI(Mean)", "Unit": 10 },
+                        { "Name": "MPG", "Description": "Mean PG(Max Mode)", "Unit": 110 },
+                        { "Name": "MMPG", "Description": "Mean PG(Mean Mode)", "Unit": 110 },
+                        { "Name": "Ti Env", "Description": "E. Time", "Unit": 27 },
+                        { "Name": "AT/DT", "Description": "AT/DT", "Unit": 0 },
+                        { "Name": "AT/ET", "Description": "AT/ET", "Unit": 0 },
+                        { "Name": "Vel E", "Description": "Vel E", "Unit": 70 },
+                        { "Name": "Vel A", "Description": "Vel A", "Unit": 70 },
+                        { "Name": "V E/A", "Description": "V E/A", "Unit": 0 },
+                        { "Name": "DT", "Description": "DT", "Unit": 27 },
+                        { "Name": "PHT", "Description": "PHT", "Unit": 27 },
+                        { "Name": "VA", "Description": "VA", "Unit": 50 },
+                        { "Name": "A Dur", "Description": "A Dur", "Unit": 27 }
+                      ]
+                    },
+                    "MeasureTypeName": "AutoDopplerTrace"
+                  },
+                  {
+                    "Name": "Semiauto",
+                    "Description": "Semiauto",
+                    "IsWorking": false,
+                    "ChildItems": [],
+                    "Calculator": {
+                      "AvailableOutputs": [
+                        { "Name": "Placeholder", "Description": "RVOT Trace", "Unit": 0, "IsWorking": true },
+                        { "Name": "TAMAX", "Description": "Mean Vel(Max Mode)", "Unit": 70 },
+                        { "Name": "TAMEAN", "Description": "Mean Vel(Mean Mode)", "Unit": 70 },
+                        { "Name": "PS", "Description": "PS", "Unit": 70 },
+                        { "Name": "ED", "Description": "ED", "Unit": 70 },
+                        { "Name": "MD", "Description": "MD", "Unit": 70 },
+                        { "Name": "HR", "Description": "HR", "Unit": 132 },
+                        { "Name": "Acceleration", "Description": "Acceleration", "Unit": 80 },
+                        { "Name": "AT", "Description": "AT", "Unit": 27 },
+                        { "Name": "PS/ED", "Description": "PS/ED", "Unit": 0 },
+                        { "Name": "ED/PS", "Description": "ED/PS", "Unit": 0 },
+                        { "Name": "PI", "Description": "PI", "Unit": 0 },
+                        { "Name": "PI(MD)", "Description": "PI(MD)", "Unit": 0 },
+                        { "Name": "RI", "Description": "RI", "Unit": 0 },
+                        { "Name": "RI(MD)", "Description": "RI(MD)", "Unit": 0 },
+                        { "Name": "Max PG", "Description": "PG Rel", "Unit": 110 },
+                        { "Name": "Vmax", "Description": "Vmax", "Unit": 70 },
+                        { "Name": "Vmean", "Description": "Vmean", "Unit": 70 },
+                        { "Name": "Peak PG", "Description": "Peak PG", "Unit": 110 },
+                        { "Name": "VTI", "Description": "RVOT VTI", "Unit": 10 },
+                        { "Name": "VTI(Mean)", "Description": "VTI(Mean)", "Unit": 10 },
+                        { "Name": "MPG", "Description": "Mean PG(Max Mode)", "Unit": 110 },
+                        { "Name": "MMPG", "Description": "Mean PG(Mean Mode)", "Unit": 110 },
+                        { "Name": "Ti Env", "Description": "E. Time", "Unit": 27 },
+                        { "Name": "AT/DT", "Description": "AT/DT", "Unit": 0 },
+                        { "Name": "AT/ET", "Description": "AT/ET", "Unit": 0 },
+                        { "Name": "Vel E", "Description": "Vel E", "Unit": 70 },
+                        { "Name": "Vel A", "Description": "Vel A", "Unit": 70 },
+                        { "Name": "V E/A", "Description": "V E/A", "Unit": 0 },
+                        { "Name": "DT", "Description": "DT", "Unit": 27 },
+                        { "Name": "PHT", "Description": "PHT", "Unit": 27 },
+                        { "Name": "VA", "Description": "VA", "Unit": 50 },
+                        { "Name": "A Dur", "Description": "A Dur", "Unit": 27 }
+                      ]
+                    },
+                    "MeasureTypeName": "SemiautoTrace"
+                  },
+                  {
+                    "Name": "Manual",
+                    "Description": "Manual",
+                    "IsWorking": true,
+                    "ChildItems": [],
+                    "Calculator": {
+                      "AvailableOutputs": [
+                        { "Name": "Placeholder", "Description": "RVOT Trace", "Unit": 0, "IsWorking": true },
+                        { "Name": "TAMAX", "Description": "Mean Vel(Max Mode)", "Unit": 70 },
+                        { "Name": "TAMEAN", "Description": "Mean Vel(Mean Mode)", "Unit": 70 },
+                        { "Name": "PS", "Description": "PS", "Unit": 70 },
+                        { "Name": "ED", "Description": "ED", "Unit": 70 },
+                        { "Name": "MD", "Description": "MD", "Unit": 70 },
+                        { "Name": "HR", "Description": "HR", "Unit": 132 },
+                        { "Name": "Acceleration", "Description": "Acceleration", "Unit": 80 },
+                        { "Name": "AT", "Description": "AT", "Unit": 27 },
+                        { "Name": "PS/ED", "Description": "PS/ED", "Unit": 0 },
+                        { "Name": "ED/PS", "Description": "ED/PS", "Unit": 0 },
+                        { "Name": "PI", "Description": "PI", "Unit": 0 },
+                        { "Name": "PI(MD)", "Description": "PI(MD)", "Unit": 0 },
+                        { "Name": "RI", "Description": "RI", "Unit": 0 },
+                        { "Name": "RI(MD)", "Description": "RI(MD)", "Unit": 0 },
+                        { "Name": "Max PG", "Description": "PG Rel", "Unit": 110 },
+                        { "Name": "Vmax", "Description": "Vmax", "Unit": 70 },
+                        { "Name": "Vmean", "Description": "Vmean", "Unit": 70 },
+                        { "Name": "Peak PG", "Description": "Peak PG", "Unit": 110 },
+                        { "Name": "VTI", "Description": "RVOT VTI", "Unit": 10 },
+                        { "Name": "VTI(Mean)", "Description": "VTI(Mean)", "Unit": 10 },
+                        { "Name": "MPG", "Description": "Mean PG(Max Mode)", "Unit": 110 },
+                        { "Name": "MMPG", "Description": "Mean PG(Mean Mode)", "Unit": 110 },
+                        { "Name": "Ti Env", "Description": "E. Time", "Unit": 27 },
+                        { "Name": "AT/DT", "Description": "AT/DT", "Unit": 0 },
+                        { "Name": "AT/ET", "Description": "AT/ET", "Unit": 0 },
+                        { "Name": "Vel E", "Description": "Vel E", "Unit": 70 },
+                        { "Name": "Vel A", "Description": "Vel A", "Unit": 70 },
+                        { "Name": "V E/A", "Description": "V E/A", "Unit": 0 },
+                        { "Name": "DT", "Description": "DT", "Unit": 27 },
+                        { "Name": "PHT", "Description": "PHT", "Unit": 27 },
+                        { "Name": "VA", "Description": "VA", "Unit": 50 },
+                        { "Name": "A Dur", "Description": "A Dur", "Unit": 27 }
+                      ]
+                    },
+                    "MeasureTypeName": "DopplerTrace"
+                  }
+                ],
+                "Calculator": {
+                  "AvailableOutputs": [
+                    { "Name": "Placeholder", "Description": "RVOT Trace", "Unit": 0, "IsWorking": true },
+                    { "Name": "TAMAX", "Description": "Mean Vel(Max Mode)", "Unit": 70 },
+                    { "Name": "TAMEAN", "Description": "Mean Vel(Mean Mode)", "Unit": 70 },
+                    { "Name": "PS", "Description": "PS", "Unit": 70 },
+                    { "Name": "ED", "Description": "ED", "Unit": 70 },
+                    { "Name": "MD", "Description": "MD", "Unit": 70 },
+                    { "Name": "HR", "Description": "HR", "Unit": 132 },
+                    { "Name": "Acceleration", "Description": "Acceleration", "Unit": 80 },
+                    { "Name": "AT", "Description": "AT", "Unit": 27 },
+                    { "Name": "PS/ED", "Description": "PS/ED", "Unit": 0 },
+                    { "Name": "ED/PS", "Description": "ED/PS", "Unit": 0 },
+                    { "Name": "PI", "Description": "PI", "Unit": 0 },
+                    { "Name": "PI(MD)", "Description": "PI(MD)", "Unit": 0 },
+                    { "Name": "RI", "Description": "RI", "Unit": 0 },
+                    { "Name": "RI(MD)", "Description": "RI(MD)", "Unit": 0 },
+                    { "Name": "Max PG", "Description": "PG Rel", "Unit": 110 },
+                    { "Name": "Vmax", "Description": "Vmax", "Unit": 70 },
+                    { "Name": "Vmean", "Description": "Vmean", "Unit": 70 },
+                    { "Name": "Peak PG", "Description": "Peak PG", "Unit": 110 },
+                    { "Name": "VTI", "Description": "RVOT VTI", "Unit": 10 },
+                    { "Name": "VTI(Mean)", "Description": "VTI(Mean)", "Unit": 10 },
+                    { "Name": "MPG", "Description": "Mean PG(Max Mode)", "Unit": 110 },
+                    { "Name": "MMPG", "Description": "Mean PG(Mean Mode)", "Unit": 110 },
+                    { "Name": "Ti Env", "Description": "E. Time", "Unit": 27 },
+                    { "Name": "Vel E", "Description": "Vel E", "Unit": 70 },
+                    { "Name": "Vel A", "Description": "Vel A", "Unit": 70 },
+                    { "Name": "V E/A", "Description": "V E/A", "Unit": 0 },
+                    { "Name": "DT", "Description": "DT", "Unit": 27 },
+                    { "Name": "PHT", "Description": "PHT", "Unit": 27 },
+                    { "Name": "VA", "Description": "VA", "Unit": 50 },
+                    { "Name": "A Dur", "Description": "A Dur", "Unit": 27 },
+                    { "Name": "AT/DT", "Description": "AT/DT", "Unit": 0 },
+                    { "Name": "AT/ET", "Description": "AT/ET", "Unit": 0 }
+                  ]
+                },
+                "MeasureTypeName": "SemiManualTrace"
+              }
+            ],
+            "Calculator": {
+              "AvailableOutputs": [
+                { "Name": "SV", "Description": "SV", "Unit": 62, "IsWorking": true },
+                { "Name": "SI", "Description": "SI", "Unit": 141 },
+                { "Name": "CO", "Description": "CO", "Unit": 93 },
+                { "Name": "CI", "Description": "CI", "Unit": 155 },
+                { "Name": "CSA", "Description": "CSA", "Unit": 50 }
+              ]
+            },
+            "MeasureTypeName": "Sv"
+          },
+          {
+            "Name": "Qs",
+            "Description": "Qs",
+            "IsWorking": false,
+            "ChildItems": [
+              {
+                "Name": "SV Diam",
+                "Description": "LVOT Diam",
+                "IsWorking": false,
+                "ChildItems": [],
+                "Calculator": { "AvailableOutputs": [{ "Name": "Distance", "Description": "Distance", "Unit": 11, "IsWorking": true }] },
+                "MeasureTypeName": "Distance"
+              },
+              {
+                "Name": "TA",
+                "Description": "LVOT VTI",
+                "IsWorking": false,
+                "ChildItems": [
+                  {
+                    "Name": "Auto",
+                    "Description": "Auto",
+                    "IsWorking": false,
+                    "ChildItems": [],
+                    "Calculator": {
+                      "AvailableOutputs": [
+                        { "Name": "Placeholder", "Description": "LVOT Trace", "Unit": 0, "IsWorking": true },
+                        { "Name": "TAMAX", "Description": "Mean Vel(Max Mode)", "Unit": 70 },
+                        { "Name": "TAMEAN", "Description": "Mean Vel(Mean Mode)", "Unit": 70 },
+                        { "Name": "PS", "Description": "PS", "Unit": 70 },
+                        { "Name": "ED", "Description": "ED", "Unit": 70 },
+                        { "Name": "MD", "Description": "MD", "Unit": 70 },
+                        { "Name": "HR", "Description": "HR", "Unit": 132 },
+                        { "Name": "Acceleration", "Description": "Acceleration", "Unit": 80 },
+                        { "Name": "AT", "Description": "AT", "Unit": 27 },
+                        { "Name": "PS/ED", "Description": "PS/ED", "Unit": 0 },
+                        { "Name": "ED/PS", "Description": "ED/PS", "Unit": 0 },
+                        { "Name": "PI", "Description": "PI", "Unit": 0 },
+                        { "Name": "PI(MD)", "Description": "PI(MD)", "Unit": 0 },
+                        { "Name": "RI", "Description": "RI", "Unit": 0 },
+                        { "Name": "RI(MD)", "Description": "RI(MD)", "Unit": 0 },
+                        { "Name": "Max PG", "Description": "PG Rel", "Unit": 110 },
+                        { "Name": "Vmax", "Description": "Vmax", "Unit": 70 },
+                        { "Name": "Vmean", "Description": "Vmean", "Unit": 70 },
+                        { "Name": "Peak PG", "Description": "Peak PG", "Unit": 110 },
+                        { "Name": "VTI", "Description": "LVOT VTI", "Unit": 10 },
+                        { "Name": "VTI(Mean)", "Description": "VTI(Mean)", "Unit": 10 },
+                        { "Name": "MPG", "Description": "Mean PG(Max Mode)", "Unit": 110 },
+                        { "Name": "MMPG", "Description": "Mean PG(Mean Mode)", "Unit": 110 },
+                        { "Name": "Ti Env", "Description": "E. Time", "Unit": 27 },
+                        { "Name": "AT/DT", "Description": "AT/DT", "Unit": 0 },
+                        { "Name": "AT/ET", "Description": "AT/ET", "Unit": 0 },
+                        { "Name": "Vel E", "Description": "Vel E", "Unit": 70 },
+                        { "Name": "Vel A", "Description": "Vel A", "Unit": 70 },
+                        { "Name": "V E/A", "Description": "V E/A", "Unit": 0 },
+                        { "Name": "DT", "Description": "DT", "Unit": 27 },
+                        { "Name": "PHT", "Description": "PHT", "Unit": 27 },
+                        { "Name": "VA", "Description": "VA", "Unit": 50 },
+                        { "Name": "A Dur", "Description": "A Dur", "Unit": 27 }
+                      ]
+                    },
+                    "MeasureTypeName": "AutoDopplerTrace"
+                  },
+                  {
+                    "Name": "Semiauto",
+                    "Description": "Semiauto",
+                    "IsWorking": false,
+                    "ChildItems": [],
+                    "Calculator": {
+                      "AvailableOutputs": [
+                        { "Name": "Placeholder", "Description": "LVOT Trace", "Unit": 0, "IsWorking": true },
+                        { "Name": "TAMAX", "Description": "Mean Vel(Max Mode)", "Unit": 70 },
+                        { "Name": "TAMEAN", "Description": "Mean Vel(Mean Mode)", "Unit": 70 },
+                        { "Name": "PS", "Description": "PS", "Unit": 70 },
+                        { "Name": "ED", "Description": "ED", "Unit": 70 },
+                        { "Name": "MD", "Description": "MD", "Unit": 70 },
+                        { "Name": "HR", "Description": "HR", "Unit": 132 },
+                        { "Name": "Acceleration", "Description": "Acceleration", "Unit": 80 },
+                        { "Name": "AT", "Description": "AT", "Unit": 27 },
+                        { "Name": "PS/ED", "Description": "PS/ED", "Unit": 0 },
+                        { "Name": "ED/PS", "Description": "ED/PS", "Unit": 0 },
+                        { "Name": "PI", "Description": "PI", "Unit": 0 },
+                        { "Name": "PI(MD)", "Description": "PI(MD)", "Unit": 0 },
+                        { "Name": "RI", "Description": "RI", "Unit": 0 },
+                        { "Name": "RI(MD)", "Description": "RI(MD)", "Unit": 0 },
+                        { "Name": "Max PG", "Description": "PG Rel", "Unit": 110 },
+                        { "Name": "Vmax", "Description": "Vmax", "Unit": 70 },
+                        { "Name": "Vmean", "Description": "Vmean", "Unit": 70 },
+                        { "Name": "Peak PG", "Description": "Peak PG", "Unit": 110 },
+                        { "Name": "VTI", "Description": "LVOT VTI", "Unit": 10 },
+                        { "Name": "VTI(Mean)", "Description": "VTI(Mean)", "Unit": 10 },
+                        { "Name": "MPG", "Description": "Mean PG(Max Mode)", "Unit": 110 },
+                        { "Name": "MMPG", "Description": "Mean PG(Mean Mode)", "Unit": 110 },
+                        { "Name": "Ti Env", "Description": "E. Time", "Unit": 27 },
+                        { "Name": "AT/DT", "Description": "AT/DT", "Unit": 0 },
+                        { "Name": "AT/ET", "Description": "AT/ET", "Unit": 0 },
+                        { "Name": "Vel E", "Description": "Vel E", "Unit": 70 },
+                        { "Name": "Vel A", "Description": "Vel A", "Unit": 70 },
+                        { "Name": "V E/A", "Description": "V E/A", "Unit": 0 },
+                        { "Name": "DT", "Description": "DT", "Unit": 27 },
+                        { "Name": "PHT", "Description": "PHT", "Unit": 27 },
+                        { "Name": "VA", "Description": "VA", "Unit": 50 },
+                        { "Name": "A Dur", "Description": "A Dur", "Unit": 27 }
+                      ]
+                    },
+                    "MeasureTypeName": "SemiautoTrace"
+                  },
+                  {
+                    "Name": "Manual",
+                    "Description": "Manual",
+                    "IsWorking": true,
+                    "ChildItems": [],
+                    "Calculator": {
+                      "AvailableOutputs": [
+                        { "Name": "Placeholder", "Description": "LVOT Trace", "Unit": 0, "IsWorking": true },
+                        { "Name": "TAMAX", "Description": "Mean Vel(Max Mode)", "Unit": 70 },
+                        { "Name": "TAMEAN", "Description": "Mean Vel(Mean Mode)", "Unit": 70 },
+                        { "Name": "PS", "Description": "PS", "Unit": 70 },
+                        { "Name": "ED", "Description": "ED", "Unit": 70 },
+                        { "Name": "MD", "Description": "MD", "Unit": 70 },
+                        { "Name": "HR", "Description": "HR", "Unit": 132 },
+                        { "Name": "Acceleration", "Description": "Acceleration", "Unit": 80 },
+                        { "Name": "AT", "Description": "AT", "Unit": 27 },
+                        { "Name": "PS/ED", "Description": "PS/ED", "Unit": 0 },
+                        { "Name": "ED/PS", "Description": "ED/PS", "Unit": 0 },
+                        { "Name": "PI", "Description": "PI", "Unit": 0 },
+                        { "Name": "PI(MD)", "Description": "PI(MD)", "Unit": 0 },
+                        { "Name": "RI", "Description": "RI", "Unit": 0 },
+                        { "Name": "RI(MD)", "Description": "RI(MD)", "Unit": 0 },
+                        { "Name": "Max PG", "Description": "PG Rel", "Unit": 110 },
+                        { "Name": "Vmax", "Description": "Vmax", "Unit": 70 },
+                        { "Name": "Vmean", "Description": "Vmean", "Unit": 70 },
+                        { "Name": "Peak PG", "Description": "Peak PG", "Unit": 110 },
+                        { "Name": "VTI", "Description": "LVOT VTI", "Unit": 10 },
+                        { "Name": "VTI(Mean)", "Description": "VTI(Mean)", "Unit": 10 },
+                        { "Name": "MPG", "Description": "Mean PG(Max Mode)", "Unit": 110 },
+                        { "Name": "MMPG", "Description": "Mean PG(Mean Mode)", "Unit": 110 },
+                        { "Name": "Ti Env", "Description": "E. Time", "Unit": 27 },
+                        { "Name": "AT/DT", "Description": "AT/DT", "Unit": 0 },
+                        { "Name": "AT/ET", "Description": "AT/ET", "Unit": 0 },
+                        { "Name": "Vel E", "Description": "Vel E", "Unit": 70 },
+                        { "Name": "Vel A", "Description": "Vel A", "Unit": 70 },
+                        { "Name": "V E/A", "Description": "V E/A", "Unit": 0 },
+                        { "Name": "DT", "Description": "DT", "Unit": 27 },
+                        { "Name": "PHT", "Description": "PHT", "Unit": 27 },
+                        { "Name": "VA", "Description": "VA", "Unit": 50 },
+                        { "Name": "A Dur", "Description": "A Dur", "Unit": 27 }
+                      ]
+                    },
+                    "MeasureTypeName": "DopplerTrace"
+                  }
+                ],
+                "Calculator": {
+                  "AvailableOutputs": [
+                    { "Name": "Placeholder", "Description": "LVOT Trace", "Unit": 0, "IsWorking": true },
+                    { "Name": "TAMAX", "Description": "Mean Vel(Max Mode)", "Unit": 70 },
+                    { "Name": "TAMEAN", "Description": "Mean Vel(Mean Mode)", "Unit": 70 },
+                    { "Name": "PS", "Description": "PS", "Unit": 70 },
+                    { "Name": "ED", "Description": "ED", "Unit": 70 },
+                    { "Name": "MD", "Description": "MD", "Unit": 70 },
+                    { "Name": "HR", "Description": "HR", "Unit": 132 },
+                    { "Name": "Acceleration", "Description": "Acceleration", "Unit": 80 },
+                    { "Name": "AT", "Description": "AT", "Unit": 27 },
+                    { "Name": "PS/ED", "Description": "PS/ED", "Unit": 0 },
+                    { "Name": "ED/PS", "Description": "ED/PS", "Unit": 0 },
+                    { "Name": "PI", "Description": "PI", "Unit": 0 },
+                    { "Name": "PI(MD)", "Description": "PI(MD)", "Unit": 0 },
+                    { "Name": "RI", "Description": "RI", "Unit": 0 },
+                    { "Name": "RI(MD)", "Description": "RI(MD)", "Unit": 0 },
+                    { "Name": "Max PG", "Description": "PG Rel", "Unit": 110 },
+                    { "Name": "Vmax", "Description": "Vmax", "Unit": 70 },
+                    { "Name": "Vmean", "Description": "Vmean", "Unit": 70 },
+                    { "Name": "Peak PG", "Description": "Peak PG", "Unit": 110 },
+                    { "Name": "VTI", "Description": "LVOT VTI", "Unit": 10 },
+                    { "Name": "VTI(Mean)", "Description": "VTI(Mean)", "Unit": 10 },
+                    { "Name": "MPG", "Description": "Mean PG(Max Mode)", "Unit": 110 },
+                    { "Name": "MMPG", "Description": "Mean PG(Mean Mode)", "Unit": 110 },
+                    { "Name": "Ti Env", "Description": "E. Time", "Unit": 27 },
+                    { "Name": "Vel E", "Description": "Vel E", "Unit": 70 },
+                    { "Name": "Vel A", "Description": "Vel A", "Unit": 70 },
+                    { "Name": "V E/A", "Description": "V E/A", "Unit": 0 },
+                    { "Name": "DT", "Description": "DT", "Unit": 27 },
+                    { "Name": "PHT", "Description": "PHT", "Unit": 27 },
+                    { "Name": "VA", "Description": "VA", "Unit": 50 },
+                    { "Name": "A Dur", "Description": "A Dur", "Unit": 27 },
+                    { "Name": "AT/DT", "Description": "AT/DT", "Unit": 0 },
+                    { "Name": "AT/ET", "Description": "AT/ET", "Unit": 0 }
+                  ]
+                },
+                "MeasureTypeName": "SemiManualTrace"
+              }
+            ],
+            "Calculator": {
+              "AvailableOutputs": [
+                { "Name": "SV", "Description": "SV", "Unit": 62, "IsWorking": true },
+                { "Name": "SI", "Description": "SI", "Unit": 141 },
+                { "Name": "CO", "Description": "CO", "Unit": 93 },
+                { "Name": "CI", "Description": "CI", "Unit": 155 },
+                { "Name": "CSA", "Description": "CSA", "Unit": 50 }
+              ]
+            },
+            "MeasureTypeName": "Sv"
+          }
+        ],
+        "Calculator": { "AvailableOutputs": [{ "Name": "Ratio", "Description": "Ratio", "Unit": 0, "IsWorking": true }] },
+        "MeasureTypeName": "QpQs"
+      },
+      {
+        "Name": "Pulmonic/Systemic",
+        "IsWorking": false,
+        "ChildItems": [
+          {
+            "Name": "Qp",
+            "Description": "Qp",
+            "IsWorking": false,
+            "ChildItems": [
+              {
+                "Name": "SV Diam",
+                "Description": "Pulmonic Diam",
+                "IsWorking": false,
+                "ChildItems": [],
+                "Calculator": { "AvailableOutputs": [{ "Name": "Distance", "Description": "Distance", "Unit": 11, "IsWorking": true }] },
+                "MeasureTypeName": "Distance"
+              },
+              {
+                "Name": "TA",
+                "Description": "Pulmonic VTI",
+                "IsWorking": false,
+                "ChildItems": [
+                  {
+                    "Name": "Auto",
+                    "Description": "Auto",
+                    "IsWorking": false,
+                    "ChildItems": [],
+                    "Calculator": {
+                      "AvailableOutputs": [
+                        { "Name": "Placeholder", "Description": "Pulmonic Trace", "Unit": 0, "IsWorking": true },
+                        { "Name": "TAMAX", "Description": "Mean Vel(Max Mode)", "Unit": 70 },
+                        { "Name": "TAMEAN", "Description": "Mean Vel(Mean Mode)", "Unit": 70 },
+                        { "Name": "PS", "Description": "PS", "Unit": 70 },
+                        { "Name": "ED", "Description": "ED", "Unit": 70 },
+                        { "Name": "MD", "Description": "MD", "Unit": 70 },
+                        { "Name": "HR", "Description": "HR", "Unit": 132 },
+                        { "Name": "Acceleration", "Description": "Acceleration", "Unit": 80 },
+                        { "Name": "AT", "Description": "AT", "Unit": 27 },
+                        { "Name": "PS/ED", "Description": "PS/ED", "Unit": 0 },
+                        { "Name": "ED/PS", "Description": "ED/PS", "Unit": 0 },
+                        { "Name": "PI", "Description": "PI", "Unit": 0 },
+                        { "Name": "PI(MD)", "Description": "PI(MD)", "Unit": 0 },
+                        { "Name": "RI", "Description": "RI", "Unit": 0 },
+                        { "Name": "RI(MD)", "Description": "RI(MD)", "Unit": 0 },
+                        { "Name": "Max PG", "Description": "PG Rel", "Unit": 110 },
+                        { "Name": "Vmax", "Description": "Vmax", "Unit": 70 },
+                        { "Name": "Vmean", "Description": "Vmean", "Unit": 70 },
+                        { "Name": "Peak PG", "Description": "Peak PG", "Unit": 110 },
+                        { "Name": "VTI", "Description": "Pulmonic VTI", "Unit": 10 },
+                        { "Name": "VTI(Mean)", "Description": "VTI(Mean)", "Unit": 10 },
+                        { "Name": "MPG", "Description": "Mean PG(Max Mode)", "Unit": 110 },
+                        { "Name": "MMPG", "Description": "Mean PG(Mean Mode)", "Unit": 110 },
+                        { "Name": "Ti Env", "Description": "E. Time", "Unit": 27 },
+                        { "Name": "AT/DT", "Description": "AT/DT", "Unit": 0 },
+                        { "Name": "AT/ET", "Description": "AT/ET", "Unit": 0 },
+                        { "Name": "Vel E", "Description": "Vel E", "Unit": 70 },
+                        { "Name": "Vel A", "Description": "Vel A", "Unit": 70 },
+                        { "Name": "V E/A", "Description": "V E/A", "Unit": 0 },
+                        { "Name": "DT", "Description": "DT", "Unit": 27 },
+                        { "Name": "PHT", "Description": "PHT", "Unit": 27 },
+                        { "Name": "VA", "Description": "VA", "Unit": 50 },
+                        { "Name": "A Dur", "Description": "A Dur", "Unit": 27 }
+                      ]
+                    },
+                    "MeasureTypeName": "AutoDopplerTrace"
+                  },
+                  {
+                    "Name": "Semiauto",
+                    "Description": "Semiauto",
+                    "IsWorking": false,
+                    "ChildItems": [],
+                    "Calculator": {
+                      "AvailableOutputs": [
+                        { "Name": "Placeholder", "Description": "Pulmonic Trace", "Unit": 0, "IsWorking": true },
+                        { "Name": "TAMAX", "Description": "Mean Vel(Max Mode)", "Unit": 70 },
+                        { "Name": "TAMEAN", "Description": "Mean Vel(Mean Mode)", "Unit": 70 },
+                        { "Name": "PS", "Description": "PS", "Unit": 70 },
+                        { "Name": "ED", "Description": "ED", "Unit": 70 },
+                        { "Name": "MD", "Description": "MD", "Unit": 70 },
+                        { "Name": "HR", "Description": "HR", "Unit": 132 },
+                        { "Name": "Acceleration", "Description": "Acceleration", "Unit": 80 },
+                        { "Name": "AT", "Description": "AT", "Unit": 27 },
+                        { "Name": "PS/ED", "Description": "PS/ED", "Unit": 0 },
+                        { "Name": "ED/PS", "Description": "ED/PS", "Unit": 0 },
+                        { "Name": "PI", "Description": "PI", "Unit": 0 },
+                        { "Name": "PI(MD)", "Description": "PI(MD)", "Unit": 0 },
+                        { "Name": "RI", "Description": "RI", "Unit": 0 },
+                        { "Name": "RI(MD)", "Description": "RI(MD)", "Unit": 0 },
+                        { "Name": "Max PG", "Description": "PG Rel", "Unit": 110 },
+                        { "Name": "Vmax", "Description": "Vmax", "Unit": 70 },
+                        { "Name": "Vmean", "Description": "Vmean", "Unit": 70 },
+                        { "Name": "Peak PG", "Description": "Peak PG", "Unit": 110 },
+                        { "Name": "VTI", "Description": "Pulmonic VTI", "Unit": 10 },
+                        { "Name": "VTI(Mean)", "Description": "VTI(Mean)", "Unit": 10 },
+                        { "Name": "MPG", "Description": "Mean PG(Max Mode)", "Unit": 110 },
+                        { "Name": "MMPG", "Description": "Mean PG(Mean Mode)", "Unit": 110 },
+                        { "Name": "Ti Env", "Description": "E. Time", "Unit": 27 },
+                        { "Name": "AT/DT", "Description": "AT/DT", "Unit": 0 },
+                        { "Name": "AT/ET", "Description": "AT/ET", "Unit": 0 },
+                        { "Name": "Vel E", "Description": "Vel E", "Unit": 70 },
+                        { "Name": "Vel A", "Description": "Vel A", "Unit": 70 },
+                        { "Name": "V E/A", "Description": "V E/A", "Unit": 0 },
+                        { "Name": "DT", "Description": "DT", "Unit": 27 },
+                        { "Name": "PHT", "Description": "PHT", "Unit": 27 },
+                        { "Name": "VA", "Description": "VA", "Unit": 50 },
+                        { "Name": "A Dur", "Description": "A Dur", "Unit": 27 }
+                      ]
+                    },
+                    "MeasureTypeName": "SemiautoTrace"
+                  },
+                  {
+                    "Name": "Manual",
+                    "Description": "Manual",
+                    "IsWorking": true,
+                    "ChildItems": [],
+                    "Calculator": {
+                      "AvailableOutputs": [
+                        { "Name": "Placeholder", "Description": "Pulmonic Trace", "Unit": 0, "IsWorking": true },
+                        { "Name": "TAMAX", "Description": "Mean Vel(Max Mode)", "Unit": 70 },
+                        { "Name": "TAMEAN", "Description": "Mean Vel(Mean Mode)", "Unit": 70 },
+                        { "Name": "PS", "Description": "PS", "Unit": 70 },
+                        { "Name": "ED", "Description": "ED", "Unit": 70 },
+                        { "Name": "MD", "Description": "MD", "Unit": 70 },
+                        { "Name": "HR", "Description": "HR", "Unit": 132 },
+                        { "Name": "Acceleration", "Description": "Acceleration", "Unit": 80 },
+                        { "Name": "AT", "Description": "AT", "Unit": 27 },
+                        { "Name": "PS/ED", "Description": "PS/ED", "Unit": 0 },
+                        { "Name": "ED/PS", "Description": "ED/PS", "Unit": 0 },
+                        { "Name": "PI", "Description": "PI", "Unit": 0 },
+                        { "Name": "PI(MD)", "Description": "PI(MD)", "Unit": 0 },
+                        { "Name": "RI", "Description": "RI", "Unit": 0 },
+                        { "Name": "RI(MD)", "Description": "RI(MD)", "Unit": 0 },
+                        { "Name": "Max PG", "Description": "PG Rel", "Unit": 110 },
+                        { "Name": "Vmax", "Description": "Vmax", "Unit": 70 },
+                        { "Name": "Vmean", "Description": "Vmean", "Unit": 70 },
+                        { "Name": "Peak PG", "Description": "Peak PG", "Unit": 110 },
+                        { "Name": "VTI", "Description": "Pulmonic VTI", "Unit": 10 },
+                        { "Name": "VTI(Mean)", "Description": "VTI(Mean)", "Unit": 10 },
+                        { "Name": "MPG", "Description": "Mean PG(Max Mode)", "Unit": 110 },
+                        { "Name": "MMPG", "Description": "Mean PG(Mean Mode)", "Unit": 110 },
+                        { "Name": "Ti Env", "Description": "E. Time", "Unit": 27 },
+                        { "Name": "AT/DT", "Description": "AT/DT", "Unit": 0 },
+                        { "Name": "AT/ET", "Description": "AT/ET", "Unit": 0 },
+                        { "Name": "Vel E", "Description": "Vel E", "Unit": 70 },
+                        { "Name": "Vel A", "Description": "Vel A", "Unit": 70 },
+                        { "Name": "V E/A", "Description": "V E/A", "Unit": 0 },
+                        { "Name": "DT", "Description": "DT", "Unit": 27 },
+                        { "Name": "PHT", "Description": "PHT", "Unit": 27 },
+                        { "Name": "VA", "Description": "VA", "Unit": 50 },
+                        { "Name": "A Dur", "Description": "A Dur", "Unit": 27 }
+                      ]
+                    },
+                    "MeasureTypeName": "DopplerTrace"
+                  }
+                ],
+                "Calculator": {
+                  "AvailableOutputs": [
+                    { "Name": "Placeholder", "Description": "Pulmonic Trace", "Unit": 0, "IsWorking": true },
+                    { "Name": "TAMAX", "Description": "Mean Vel(Max Mode)", "Unit": 70 },
+                    { "Name": "TAMEAN", "Description": "Mean Vel(Mean Mode)", "Unit": 70 },
+                    { "Name": "PS", "Description": "PS", "Unit": 70 },
+                    { "Name": "ED", "Description": "ED", "Unit": 70 },
+                    { "Name": "MD", "Description": "MD", "Unit": 70 },
+                    { "Name": "HR", "Description": "HR", "Unit": 132 },
+                    { "Name": "Acceleration", "Description": "Acceleration", "Unit": 80 },
+                    { "Name": "AT", "Description": "AT", "Unit": 27 },
+                    { "Name": "PS/ED", "Description": "PS/ED", "Unit": 0 },
+                    { "Name": "ED/PS", "Description": "ED/PS", "Unit": 0 },
+                    { "Name": "PI", "Description": "PI", "Unit": 0 },
+                    { "Name": "PI(MD)", "Description": "PI(MD)", "Unit": 0 },
+                    { "Name": "RI", "Description": "RI", "Unit": 0 },
+                    { "Name": "RI(MD)", "Description": "RI(MD)", "Unit": 0 },
+                    { "Name": "Max PG", "Description": "PG Rel", "Unit": 110 },
+                    { "Name": "Vmax", "Description": "Vmax", "Unit": 70 },
+                    { "Name": "Vmean", "Description": "Vmean", "Unit": 70 },
+                    { "Name": "Peak PG", "Description": "Peak PG", "Unit": 110 },
+                    { "Name": "VTI", "Description": "Pulmonic VTI", "Unit": 10 },
+                    { "Name": "VTI(Mean)", "Description": "VTI(Mean)", "Unit": 10 },
+                    { "Name": "MPG", "Description": "Mean PG(Max Mode)", "Unit": 110 },
+                    { "Name": "MMPG", "Description": "Mean PG(Mean Mode)", "Unit": 110 },
+                    { "Name": "Ti Env", "Description": "E. Time", "Unit": 27 },
+                    { "Name": "Vel E", "Description": "Vel E", "Unit": 70 },
+                    { "Name": "Vel A", "Description": "Vel A", "Unit": 70 },
+                    { "Name": "V E/A", "Description": "V E/A", "Unit": 0 },
+                    { "Name": "DT", "Description": "DT", "Unit": 27 },
+                    { "Name": "PHT", "Description": "PHT", "Unit": 27 },
+                    { "Name": "VA", "Description": "VA", "Unit": 50 },
+                    { "Name": "A Dur", "Description": "A Dur", "Unit": 27 },
+                    { "Name": "AT/DT", "Description": "AT/DT", "Unit": 0 },
+                    { "Name": "AT/ET", "Description": "AT/ET", "Unit": 0 }
+                  ]
+                },
+                "MeasureTypeName": "SemiManualTrace"
+              }
+            ],
+            "Calculator": {
+              "AvailableOutputs": [
+                { "Name": "SV", "Description": "SV", "Unit": 62, "IsWorking": true },
+                { "Name": "SI", "Description": "SI", "Unit": 141 },
+                { "Name": "CO", "Description": "CO", "Unit": 93 },
+                { "Name": "CI", "Description": "CI", "Unit": 155 },
+                { "Name": "CSA", "Description": "CSA", "Unit": 50 }
+              ]
+            },
+            "MeasureTypeName": "Sv"
+          },
+          {
+            "Name": "Qs",
+            "Description": "Qs",
+            "IsWorking": false,
+            "ChildItems": [
+              {
+                "Name": "SV Diam",
+                "Description": "Systemic Diam",
+                "IsWorking": false,
+                "ChildItems": [],
+                "Calculator": { "AvailableOutputs": [{ "Name": "Distance", "Description": "Distance", "Unit": 11, "IsWorking": true }] },
+                "MeasureTypeName": "Distance"
+              },
+              {
+                "Name": "TA",
+                "Description": "Systemic VTI",
+                "IsWorking": false,
+                "ChildItems": [
+                  {
+                    "Name": "Auto",
+                    "Description": "Auto",
+                    "IsWorking": false,
+                    "ChildItems": [],
+                    "Calculator": {
+                      "AvailableOutputs": [
+                        { "Name": "Placeholder", "Description": "Systemic Trace", "Unit": 0, "IsWorking": true },
+                        { "Name": "TAMAX", "Description": "Mean Vel(Max Mode)", "Unit": 70 },
+                        { "Name": "TAMEAN", "Description": "Mean Vel(Mean Mode)", "Unit": 70 },
+                        { "Name": "PS", "Description": "PS", "Unit": 70 },
+                        { "Name": "ED", "Description": "ED", "Unit": 70 },
+                        { "Name": "MD", "Description": "MD", "Unit": 70 },
+                        { "Name": "HR", "Description": "HR", "Unit": 132 },
+                        { "Name": "Acceleration", "Description": "Acceleration", "Unit": 80 },
+                        { "Name": "AT", "Description": "AT", "Unit": 27 },
+                        { "Name": "PS/ED", "Description": "PS/ED", "Unit": 0 },
+                        { "Name": "ED/PS", "Description": "ED/PS", "Unit": 0 },
+                        { "Name": "PI", "Description": "PI", "Unit": 0 },
+                        { "Name": "PI(MD)", "Description": "PI(MD)", "Unit": 0 },
+                        { "Name": "RI", "Description": "RI", "Unit": 0 },
+                        { "Name": "RI(MD)", "Description": "RI(MD)", "Unit": 0 },
+                        { "Name": "Max PG", "Description": "PG Rel", "Unit": 110 },
+                        { "Name": "Vmax", "Description": "Vmax", "Unit": 70 },
+                        { "Name": "Vmean", "Description": "Vmean", "Unit": 70 },
+                        { "Name": "Peak PG", "Description": "Peak PG", "Unit": 110 },
+                        { "Name": "VTI", "Description": "Systemic VTI", "Unit": 10 },
+                        { "Name": "VTI(Mean)", "Description": "VTI(Mean)", "Unit": 10 },
+                        { "Name": "MPG", "Description": "Mean PG(Max Mode)", "Unit": 110 },
+                        { "Name": "MMPG", "Description": "Mean PG(Mean Mode)", "Unit": 110 },
+                        { "Name": "Ti Env", "Description": "E. Time", "Unit": 27 },
+                        { "Name": "AT/DT", "Description": "AT/DT", "Unit": 0 },
+                        { "Name": "AT/ET", "Description": "AT/ET", "Unit": 0 },
+                        { "Name": "Vel E", "Description": "Vel E", "Unit": 70 },
+                        { "Name": "Vel A", "Description": "Vel A", "Unit": 70 },
+                        { "Name": "V E/A", "Description": "V E/A", "Unit": 0 },
+                        { "Name": "DT", "Description": "DT", "Unit": 27 },
+                        { "Name": "PHT", "Description": "PHT", "Unit": 27 },
+                        { "Name": "VA", "Description": "VA", "Unit": 50 },
+                        { "Name": "A Dur", "Description": "A Dur", "Unit": 27 }
+                      ]
+                    },
+                    "MeasureTypeName": "AutoDopplerTrace"
+                  },
+                  {
+                    "Name": "Semiauto",
+                    "Description": "Semiauto",
+                    "IsWorking": false,
+                    "ChildItems": [],
+                    "Calculator": {
+                      "AvailableOutputs": [
+                        { "Name": "Placeholder", "Description": "Systemic Trace", "Unit": 0, "IsWorking": true },
+                        { "Name": "TAMAX", "Description": "Mean Vel(Max Mode)", "Unit": 70 },
+                        { "Name": "TAMEAN", "Description": "Mean Vel(Mean Mode)", "Unit": 70 },
+                        { "Name": "PS", "Description": "PS", "Unit": 70 },
+                        { "Name": "ED", "Description": "ED", "Unit": 70 },
+                        { "Name": "MD", "Description": "MD", "Unit": 70 },
+                        { "Name": "HR", "Description": "HR", "Unit": 132 },
+                        { "Name": "Acceleration", "Description": "Acceleration", "Unit": 80 },
+                        { "Name": "AT", "Description": "AT", "Unit": 27 },
+                        { "Name": "PS/ED", "Description": "PS/ED", "Unit": 0 },
+                        { "Name": "ED/PS", "Description": "ED/PS", "Unit": 0 },
+                        { "Name": "PI", "Description": "PI", "Unit": 0 },
+                        { "Name": "PI(MD)", "Description": "PI(MD)", "Unit": 0 },
+                        { "Name": "RI", "Description": "RI", "Unit": 0 },
+                        { "Name": "RI(MD)", "Description": "RI(MD)", "Unit": 0 },
+                        { "Name": "Max PG", "Description": "PG Rel", "Unit": 110 },
+                        { "Name": "Vmax", "Description": "Vmax", "Unit": 70 },
+                        { "Name": "Vmean", "Description": "Vmean", "Unit": 70 },
+                        { "Name": "Peak PG", "Description": "Peak PG", "Unit": 110 },
+                        { "Name": "VTI", "Description": "Systemic VTI", "Unit": 10 },
+                        { "Name": "VTI(Mean)", "Description": "VTI(Mean)", "Unit": 10 },
+                        { "Name": "MPG", "Description": "Mean PG(Max Mode)", "Unit": 110 },
+                        { "Name": "MMPG", "Description": "Mean PG(Mean Mode)", "Unit": 110 },
+                        { "Name": "Ti Env", "Description": "E. Time", "Unit": 27 },
+                        { "Name": "AT/DT", "Description": "AT/DT", "Unit": 0 },
+                        { "Name": "AT/ET", "Description": "AT/ET", "Unit": 0 },
+                        { "Name": "Vel E", "Description": "Vel E", "Unit": 70 },
+                        { "Name": "Vel A", "Description": "Vel A", "Unit": 70 },
+                        { "Name": "V E/A", "Description": "V E/A", "Unit": 0 },
+                        { "Name": "DT", "Description": "DT", "Unit": 27 },
+                        { "Name": "PHT", "Description": "PHT", "Unit": 27 },
+                        { "Name": "VA", "Description": "VA", "Unit": 50 },
+                        { "Name": "A Dur", "Description": "A Dur", "Unit": 27 }
+                      ]
+                    },
+                    "MeasureTypeName": "SemiautoTrace"
+                  },
+                  {
+                    "Name": "Manual",
+                    "Description": "Manual",
+                    "IsWorking": true,
+                    "ChildItems": [],
+                    "Calculator": {
+                      "AvailableOutputs": [
+                        { "Name": "Placeholder", "Description": "Systemic Trace", "Unit": 0, "IsWorking": true },
+                        { "Name": "TAMAX", "Description": "Mean Vel(Max Mode)", "Unit": 70 },
+                        { "Name": "TAMEAN", "Description": "Mean Vel(Mean Mode)", "Unit": 70 },
+                        { "Name": "PS", "Description": "PS", "Unit": 70 },
+                        { "Name": "ED", "Description": "ED", "Unit": 70 },
+                        { "Name": "MD", "Description": "MD", "Unit": 70 },
+                        { "Name": "HR", "Description": "HR", "Unit": 132 },
+                        { "Name": "Acceleration", "Description": "Acceleration", "Unit": 80 },
+                        { "Name": "AT", "Description": "AT", "Unit": 27 },
+                        { "Name": "PS/ED", "Description": "PS/ED", "Unit": 0 },
+                        { "Name": "ED/PS", "Description": "ED/PS", "Unit": 0 },
+                        { "Name": "PI", "Description": "PI", "Unit": 0 },
+                        { "Name": "PI(MD)", "Description": "PI(MD)", "Unit": 0 },
+                        { "Name": "RI", "Description": "RI", "Unit": 0 },
+                        { "Name": "RI(MD)", "Description": "RI(MD)", "Unit": 0 },
+                        { "Name": "Max PG", "Description": "PG Rel", "Unit": 110 },
+                        { "Name": "Vmax", "Description": "Vmax", "Unit": 70 },
+                        { "Name": "Vmean", "Description": "Vmean", "Unit": 70 },
+                        { "Name": "Peak PG", "Description": "Peak PG", "Unit": 110 },
+                        { "Name": "VTI", "Description": "Systemic VTI", "Unit": 10 },
+                        { "Name": "VTI(Mean)", "Description": "VTI(Mean)", "Unit": 10 },
+                        { "Name": "MPG", "Description": "Mean PG(Max Mode)", "Unit": 110 },
+                        { "Name": "MMPG", "Description": "Mean PG(Mean Mode)", "Unit": 110 },
+                        { "Name": "Ti Env", "Description": "E. Time", "Unit": 27 },
+                        { "Name": "AT/DT", "Description": "AT/DT", "Unit": 0 },
+                        { "Name": "AT/ET", "Description": "AT/ET", "Unit": 0 },
+                        { "Name": "Vel E", "Description": "Vel E", "Unit": 70 },
+                        { "Name": "Vel A", "Description": "Vel A", "Unit": 70 },
+                        { "Name": "V E/A", "Description": "V E/A", "Unit": 0 },
+                        { "Name": "DT", "Description": "DT", "Unit": 27 },
+                        { "Name": "PHT", "Description": "PHT", "Unit": 27 },
+                        { "Name": "VA", "Description": "VA", "Unit": 50 },
+                        { "Name": "A Dur", "Description": "A Dur", "Unit": 27 }
+                      ]
+                    },
+                    "MeasureTypeName": "DopplerTrace"
+                  }
+                ],
+                "Calculator": {
+                  "AvailableOutputs": [
+                    { "Name": "Placeholder", "Description": "Systemic Trace", "Unit": 0, "IsWorking": true },
+                    { "Name": "TAMAX", "Description": "Mean Vel(Max Mode)", "Unit": 70 },
+                    { "Name": "TAMEAN", "Description": "Mean Vel(Mean Mode)", "Unit": 70 },
+                    { "Name": "PS", "Description": "PS", "Unit": 70 },
+                    { "Name": "ED", "Description": "ED", "Unit": 70 },
+                    { "Name": "MD", "Description": "MD", "Unit": 70 },
+                    { "Name": "HR", "Description": "HR", "Unit": 132 },
+                    { "Name": "Acceleration", "Description": "Acceleration", "Unit": 80 },
+                    { "Name": "AT", "Description": "AT", "Unit": 27 },
+                    { "Name": "PS/ED", "Description": "PS/ED", "Unit": 0 },
+                    { "Name": "ED/PS", "Description": "ED/PS", "Unit": 0 },
+                    { "Name": "PI", "Description": "PI", "Unit": 0 },
+                    { "Name": "PI(MD)", "Description": "PI(MD)", "Unit": 0 },
+                    { "Name": "RI", "Description": "RI", "Unit": 0 },
+                    { "Name": "RI(MD)", "Description": "RI(MD)", "Unit": 0 },
+                    { "Name": "Max PG", "Description": "PG Rel", "Unit": 110 },
+                    { "Name": "Vmax", "Description": "Vmax", "Unit": 70 },
+                    { "Name": "Vmean", "Description": "Vmean", "Unit": 70 },
+                    { "Name": "Peak PG", "Description": "Peak PG", "Unit": 110 },
+                    { "Name": "VTI", "Description": "Systemic VTI", "Unit": 10 },
+                    { "Name": "VTI(Mean)", "Description": "VTI(Mean)", "Unit": 10 },
+                    { "Name": "MPG", "Description": "Mean PG(Max Mode)", "Unit": 110 },
+                    { "Name": "MMPG", "Description": "Mean PG(Mean Mode)", "Unit": 110 },
+                    { "Name": "Ti Env", "Description": "E. Time", "Unit": 27 },
+                    { "Name": "Vel E", "Description": "Vel E", "Unit": 70 },
+                    { "Name": "Vel A", "Description": "Vel A", "Unit": 70 },
+                    { "Name": "V E/A", "Description": "V E/A", "Unit": 0 },
+                    { "Name": "DT", "Description": "DT", "Unit": 27 },
+                    { "Name": "PHT", "Description": "PHT", "Unit": 27 },
+                    { "Name": "VA", "Description": "VA", "Unit": 50 },
+                    { "Name": "A Dur", "Description": "A Dur", "Unit": 27 },
+                    { "Name": "AT/DT", "Description": "AT/DT", "Unit": 0 },
+                    { "Name": "AT/ET", "Description": "AT/ET", "Unit": 0 }
+                  ]
+                },
+                "MeasureTypeName": "SemiManualTrace"
+              }
+            ],
+            "Calculator": {
+              "AvailableOutputs": [
+                { "Name": "SV", "Description": "SV", "Unit": 62, "IsWorking": true },
+                { "Name": "SI", "Description": "SI", "Unit": 141 },
+                { "Name": "CO", "Description": "CO", "Unit": 93 },
+                { "Name": "CI", "Description": "CI", "Unit": 155 },
+                { "Name": "CSA", "Description": "CSA", "Unit": 50 }
+              ]
+            },
+            "MeasureTypeName": "Sv"
+          }
+        ],
+        "Calculator": { "AvailableOutputs": [{ "Name": "Ratio", "Description": "Ratio", "Unit": 0, "IsWorking": true }] },
+        "MeasureTypeName": "QpQs"
+      }
+    ],
+    "MethodChildItems": []
+  },
   {
     "Name": "M_Distance",
     "Description": "SV D",

+ 29 - 12
lib/interfaces/process/items/types.dart

@@ -5,7 +5,7 @@
 class MeasureTypes {
   MeasureTypes._();
 
-  /* Location [begin] */
+/* Location [begin] */
   /// 深度
   static const Depth = "Depth";
 
@@ -14,9 +14,9 @@ class MeasureTypes {
 
   /// 速度
   static const Velocity = "Velocity";
-  /* Location [end] */
+/* Location [end] */
 
-  /* Angle [begin] */
+/* Angle [begin] */
   /// 角度
   static const Angle = "Angle";
 
@@ -27,9 +27,9 @@ class MeasureTypes {
   static const Ray = "Ray";
   static const HipOneRay = "HipOneRay";
   static const HipTwoRay = "HipTwoRay";
-  /* Angle [end] */
+/* Angle [end] */
 
-  /* Length [begin] */
+/* Length [begin] */
   /// 距离
   static const Distance = "Distance";
 
@@ -41,9 +41,9 @@ class MeasureTypes {
   static const DepthToBaseLine = "DepthToBaseLine";
   static const AutoVesselDiam = "AutoVesselDiam";
   static const MultipleVesselDiam = "MultipleVesselDiam";
-  /* Length [end]*/
+/* Length [end]*/
 
-  /* Area Perimeter [begin] */
+/* Area Perimeter [begin] */
   /// 周长/面积
   static const AreaPerimeter = "AreaPerimeter";
 
@@ -54,9 +54,9 @@ class MeasureTypes {
   static const AreaPerimeterTrace = "AreaPerimeterTrace";
 
   static const Pht = "Pht";
-  /* Area Perimeter [end] */
+/* Area Perimeter [end] */
 
-  /* Volume  [begin] */
+/* Volume  [begin] */
   /// 体积
   static const Volume = "Volume";
   static const VolumeOneDistance = "VolumeOneDistance";
@@ -67,9 +67,9 @@ class MeasureTypes {
 
   static const AutoBladder = "AutoBladder";
   static const Bladder = "Bladder";
-  /* Volume  [end] */
+/* Volume  [end] */
 
-  /* Ratio & Stenosis  [begin] */
+/* Ratio & Stenosis  [begin] */
   /// 狭窄率
   static const Stenosis = "Stenosis";
   static const StenosisTwoArea = "StenosisTwoArea";
@@ -85,10 +85,27 @@ class MeasureTypes {
   static const AbRatioTwoVerticalDistance = "AbRatioTwoVerticalDistance";
   static const AbRatioTwoTimeSpan = "AbRatioTwoTimeSpan";
   static const AbRatioTwoSlope = "AbRatioTwoSlope";
-  /* Ratio & Stenosis  [end] */
+/* Ratio & Stenosis  [end] */
+
+/* Three StraightLine  [begin] */
+  static const ThreeDistanceMean = "ThreeDistanceMean";
+  static const ThreeDistanceMax = "ThreeDistanceMax";
+/* Three StraightLine  [end] */
+
+/* Two StraightLine  [begin] */
+  static const TwoDistanceBase = "TwoDistanceBase";
+  static const TwoVerticalDistance = "TwoVerticalDistance";
 
   /// 残余尿
   static const ResidualUrine = "ResidualUrine";
+  static const EfCube = "EfCube";
+  static const EfTeich = "EfTeich";
+  static const IvsThck = "IvsThck";
+  static const TwoDistanceAverage = "TwoDistanceAverage";
+  static const MVcf = "MVcf";
+  static const Ef = "Ef";
+  static const FS = "FS";
+/* Two StraightLine  [end] */
 
   static const TimeSpan = "TimeSpan";
 }

+ 1 - 0
lib/measure_page_test.dart

@@ -363,6 +363,7 @@ class _MeasureLeftBoardState extends State<_MeasureLeftBoard> {
   static final C_SUPPORTED_M_ITEMS = <String>[
     MeasureTerms.MVerticalDistance,
     MeasureTerms.Timespan,
+    "Qp/Qs",
   ];
 
   late final List<String> passeItems;

+ 16 - 0
lib/process/calcuators/calculator.dart

@@ -3,6 +3,7 @@ import 'package:fis_measure/interfaces/process/calculators/calculator.dart';
 import 'package:fis_measure/interfaces/process/calculators/output.dart';
 import 'package:fis_measure/interfaces/process/calculators/values.dart';
 import 'package:fis_measure/interfaces/process/items/item.dart';
+import 'package:fis_measure/process/items/item.dart';
 import 'package:fis_measure/process/items/item_feature.dart';
 import 'package:flutter/foundation.dart';
 import 'package:vid/us/vid_us_unit.dart';
@@ -74,4 +75,19 @@ abstract class Calculator<T extends IMeasureItem, TValue>
     }
     return fractionalDigits;
   }
+
+  @protected
+  double? pickChildFloatValue(MeasureItem item) {
+    if (item.calculator == null) return null;
+    ValueBase? value;
+    if (item.measuredFeatures.isNotEmpty) {
+      value = item.measuredFeatures.first.value;
+    } else if (item.feature != null) {
+      value = item.feature!.value;
+    }
+    if (value != null) {
+      return (value as FloatValue).value ?? 0;
+    }
+    return null;
+  }
 }

+ 12 - 0
lib/process/calcuators/ellipse.dart

@@ -0,0 +1,12 @@
+import 'package:fis_measure/process/primitives/ellipse.dart';
+
+import 'calculator.dart';
+
+class VolumeEllipseCal extends Calculator<Ellipse, double> {
+  VolumeEllipseCal(Ellipse ref) : super(ref);
+
+  @override
+  void calculate() {
+    // TODO: implement calculate
+  }
+}

+ 24 - 0
lib/process/calcuators/formulas/obstetrics.dart

@@ -0,0 +1,24 @@
+import 'package:fis_measure/utils/number.dart';
+
+class ObstetricsFormulas {
+  ObstetricsFormulas._();
+
+  /// (D1 + D2 + D3)/3.0
+  ///
+  /// return Unit cm
+  ///
+  /// [d1] Unit cm
+  ///
+  /// [d2] Unit cm
+  ///
+  /// [d3] Unit cm
+  static double gsMean(double d1, double d2, double d3) {
+    double mean = double.nan;
+    if (!NumUtil.almostEquals(d1, 0) &&
+        !NumUtil.almostEquals(d2, 0) &&
+        !NumUtil.almostEquals(d3, 0)) {
+      mean = (d1 + d2 + d3) / 3;
+    }
+    return mean;
+  }
+}

+ 17 - 20
lib/process/calcuators/volume.dart → lib/process/calcuators/three_distance.dart

@@ -1,11 +1,13 @@
 import 'package:fis_measure/interfaces/process/calculators/output.dart';
 import 'package:fis_measure/interfaces/process/calculators/values.dart';
 import 'package:fis_measure/process/calcuators/formulas/general.dart';
+import 'package:fis_measure/process/items/item.dart';
 import 'package:fis_measure/process/primitives/combos/lwh_straightline.dart';
 import 'package:fis_measure/process/primitives/ellipse.dart';
 import 'package:fis_measure/process/primitives/straightline.dart';
 
 import 'calculator.dart';
+import 'formulas/obstetrics.dart';
 
 class VolumeThreeDistanceCal extends Calculator<LWHStraightLine, double> {
   VolumeThreeDistanceCal(LWHStraightLine ref) : super(ref);
@@ -14,9 +16,9 @@ class VolumeThreeDistanceCal extends Calculator<LWHStraightLine, double> {
   void calculate() {
     if (ref.feature == null) return;
 
-    final l = _pickChildValue(ref.l);
-    final w = _pickChildValue(ref.w);
-    final h = _pickChildValue(ref.h);
+    final l = pickChildFloatValue(ref.l);
+    final w = pickChildFloatValue(ref.w);
+    final h = pickChildFloatValue(ref.h);
 
     final feature = ref.feature!;
     final viewport = feature.hostVisualArea!.viewport!;
@@ -31,27 +33,22 @@ class VolumeThreeDistanceCal extends Calculator<LWHStraightLine, double> {
       updateFloatValue(value);
     }
   }
-
-  double? _pickChildValue(StraightLine item) {
-    if (item.calculator == null) return null;
-    ValueBase? value;
-    if (item.measuredFeatures.isNotEmpty) {
-      value = item.measuredFeatures.first.value;
-    } else if (item.feature != null) {
-      value = item.feature!.value;
-    }
-    if (value != null) {
-      return (value as FloatValue).value ?? 0;
-    }
-    return null;
-  }
 }
 
-class VolumeEllipseCal extends Calculator<Ellipse, double> {
-  VolumeEllipseCal(Ellipse ref) : super(ref);
+class ThreeDistMeanCalculator extends Calculator<LWHStraightLine, double> {
+  ThreeDistMeanCalculator(LWHStraightLine ref) : super(ref);
 
   @override
   void calculate() {
-    // TODO: implement calculate
+    if (ref.feature == null) return;
+
+    final l = pickChildFloatValue(ref.l);
+    final w = pickChildFloatValue(ref.w);
+    final h = pickChildFloatValue(ref.h);
+
+    if (l != null && w != null && h != null) {
+      final value = ObstetricsFormulas.gsMean(l, w, h);
+      updateFloatValue(value);
+    }
   }
 }

+ 10 - 5
lib/process/calcuators/residual_urine.dart → lib/process/calcuators/two_distance.dart

@@ -1,14 +1,19 @@
-import 'package:fis_measure/interfaces/process/calculators/output.dart';
 import 'package:fis_measure/interfaces/process/calculators/values.dart';
-import 'package:fis_measure/process/calcuators/formulas/Urology.dart';
-import 'package:fis_measure/process/calcuators/formulas/general.dart';
-import 'package:fis_measure/process/primitives/combos/two_area.dart';
+import 'package:fis_measure/process/calcuators/formulas/urology.dart';
 import 'package:fis_measure/process/primitives/combos/two_straightline.dart';
 import 'package:fis_measure/process/primitives/straightline.dart';
-import 'package:fis_measure/process/primitives/trace.dart';
 
 import 'calculator.dart';
 
+class TwoDistanceCalBase extends Calculator<TwoStraightLine, double> {
+  TwoDistanceCalBase(TwoStraightLine ref) : super(ref);
+
+  @override
+  void calculate() {
+    // TODO: implement calculate
+  }
+}
+
 class ResidualUrineCal extends Calculator<TwoStraightLine, double> {
   ResidualUrineCal(TwoStraightLine ref) : super(ref);
 

+ 6 - 0
lib/process/items/factory.dart

@@ -80,6 +80,8 @@ class MeasureItemFactory {
     _singleton._register(MeasureTypes.AbRatioTwoArea, TwoArea.crateABRatio);
 
     // Two StraightLine
+    _singleton._register(
+        MeasureTypes.TwoDistanceBase, TwoStraightLine.createTwoDistanceBase);
     _singleton._register(MeasureTypes.ResidualUrine, TwoStraightLine.createRUV);
     _singleton._register(MeasureTypes.StenosisTwoDistance,
         TwoStraightLine.createStenosisTwoDistance);
@@ -101,5 +103,9 @@ class MeasureItemFactory {
         MeasureTypes.AreaPerimeterSpline, Spline.createAreaPerimeter);
     _singleton._register(
         MeasureTypes.AreaPerimeterTrace, Trace.createAreaPerimeter);
+
+    //Threee straight line types
+    _singleton._register(
+        MeasureTypes.ThreeDistanceMean, LWHStraightLine.createMean);
   }
 }

+ 13 - 1
lib/process/primitives/combos/lwh_straightline.dart

@@ -4,7 +4,7 @@ import 'package:fis_measure/interfaces/process/items/item.dart';
 import 'package:fis_measure/interfaces/process/items/item_metas.dart';
 import 'package:fis_measure/interfaces/process/items/types.dart';
 import 'package:fis_measure/interfaces/process/workspace/point_info.dart';
-import 'package:fis_measure/process/calcuators/volume.dart';
+import 'package:fis_measure/process/calcuators/three_distance.dart';
 import 'package:fis_measure/process/items/item_feature.dart';
 import 'package:fis_measure/process/items/top_item.dart';
 import 'package:fis_measure/process/items/top_item_feature.dart';
@@ -56,6 +56,8 @@ class LWHStraightLine extends TopMeasureItem<LWHStraightlineFeature> {
   @override
   void onCancelingOnce() {}
 
+  //ThreeDistMeanCalculator
+
   static LWHStraightLine createVolume(ItemMeta meta, [IMeasureItem? parent]) {
     if (meta.measureType != MeasureTypes.VolumeThreeDistance) {
       throw ArgumentError();
@@ -65,6 +67,16 @@ class LWHStraightLine extends TopMeasureItem<LWHStraightlineFeature> {
 
     return lwh;
   }
+
+  static LWHStraightLine createMean(ItemMeta meta, [IMeasureItem? parent]) {
+    if (meta.measureType != MeasureTypes.ThreeDistanceMean) {
+      throw ArgumentError();
+    }
+    var lwh = LWHStraightLine(meta);
+    lwh.calculator = ThreeDistMeanCalculator(lwh);
+
+    return lwh;
+  }
 }
 
 class LWHStraightlineFeature extends TopMeasureItemFeature {

+ 1 - 1
lib/process/primitives/combos/two_area.dart

@@ -6,7 +6,7 @@ import 'package:fis_measure/interfaces/process/items/types.dart';
 import 'package:fis_measure/interfaces/process/workspace/point_info.dart';
 import 'package:fis_measure/process/calcuators/a_b_ratio.dart';
 import 'package:fis_measure/process/calcuators/stenosis.dart';
-import 'package:fis_measure/process/calcuators/volume.dart';
+import 'package:fis_measure/process/calcuators/three_distance.dart';
 import 'package:fis_measure/process/items/item_feature.dart';
 import 'package:fis_measure/process/items/top_item.dart';
 import 'package:fis_measure/process/items/top_item_feature.dart';

+ 10 - 2
lib/process/primitives/combos/two_straightline.dart

@@ -5,9 +5,9 @@ import 'package:fis_measure/interfaces/process/items/item_metas.dart';
 import 'package:fis_measure/interfaces/process/items/types.dart';
 import 'package:fis_measure/interfaces/process/workspace/point_info.dart';
 import 'package:fis_measure/process/calcuators/a_b_ratio.dart';
-import 'package:fis_measure/process/calcuators/residual_urine.dart';
 import 'package:fis_measure/process/calcuators/stenosis.dart';
-import 'package:fis_measure/process/calcuators/volume.dart';
+import 'package:fis_measure/process/calcuators/three_distance.dart';
+import 'package:fis_measure/process/calcuators/two_distance.dart';
 import 'package:fis_measure/process/items/item.dart';
 import 'package:fis_measure/process/items/item_feature.dart';
 import 'package:fis_measure/process/items/top_item.dart';
@@ -61,6 +61,14 @@ class TwoStraightLine extends TwoLengthAbstract<TwoStraightLineFeature> {
   @override
   void onCancelingOnce() {}
 
+  static TwoStraightLine createTwoDistanceBase(ItemMeta meta,
+      [IMeasureItem? parent]) {
+    var twoStraightline = TwoStraightLine(meta);
+    twoStraightline.calculator = TwoDistanceCalBase(twoStraightline);
+
+    return twoStraightline;
+  }
+
   static TwoStraightLine createRUV(ItemMeta meta, [IMeasureItem? parent]) {
     var twoStraightline = TwoStraightLine(meta);
     twoStraightline.calculator = ResidualUrineCal(twoStraightline);

+ 2 - 1
lib/process/primitives/ellipse.dart

@@ -6,8 +6,9 @@ import 'package:fis_measure/interfaces/process/items/item.dart';
 import 'package:fis_measure/interfaces/process/items/item_metas.dart';
 import 'package:fis_measure/interfaces/process/workspace/point_info.dart';
 import 'package:fis_measure/process/calcuators/area_perimeter.dart';
+import 'package:fis_measure/process/calcuators/ellipse.dart';
 import 'package:fis_measure/process/calcuators/formulas/general.dart';
-import 'package:fis_measure/process/calcuators/volume.dart';
+import 'package:fis_measure/process/calcuators/three_distance.dart';
 import 'package:fis_measure/utils/canvas.dart';
 import 'package:path_drawing/path_drawing.dart';
 import '../items/item.dart';

+ 12 - 0
lib/utils/number.dart

@@ -1,9 +1,21 @@
 /// 数值工具类
 class NumUtil {
+  NumUtil._();
+
   /// 对double四舍五入
   static double roundDouble(double value, [int digits = 2]) {
     final digitsStr = value.toStringAsFixed(digits);
     final result = double.parse(digitsStr);
     return result;
   }
+
+  /// 在一定精度上几乎相等
+  static bool almostEquals(
+    double num1,
+    double num2, [
+    double precision = 0.000001,
+  ]) {
+    if (num1.isNaN && num2.isNaN) return true;
+    return (num1 - num2).abs() <= precision;
+  }
 }

+ 2 - 2
pubspec.lock

@@ -140,8 +140,8 @@ packages:
     dependency: "direct main"
     description:
       path: "."
-      ref: c9c937f
-      resolved-ref: c9c937f7346e09f2ceab5056b348f4e5f8861cb3
+      ref: "517df84"
+      resolved-ref: "517df84fa08734bf07d5ecbef1fd9cbe4cd48a9f"
       url: "http://git.ius.plus:88/Project-Wing/fis_lib_i18n.git"
     source: git
     version: "0.0.1"