@memoarchitect/ontology 0.13.2 → 0.15.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -3
- package/examples/connected-patient-monitor/memo.identity.yaml +34 -0
- package/examples/connected-patient-monitor/memo.package.yaml +3 -1
- package/examples/connected-patient-monitor/model/catalog/connected_patient_monitor.sysml +17 -12
- package/examples/connected-patient-monitor/model/{catalog → methodology}/project.sysml +4 -5
- package/examples/embedded-infusion-pump/memo.package.yaml +3 -1
- package/examples/embedded-infusion-pump/model/catalog/embedded_infusion_pump.sysml +6 -6
- package/examples/embedded-infusion-pump/model/{catalog → methodology}/project.sysml +4 -5
- package/examples/functional-logical-physical/memo.identity.yaml +28 -0
- package/examples/functional-logical-physical/memo.package.yaml +3 -1
- package/examples/functional-logical-physical/model/catalog/functional_logical_physical.sysml +5 -5
- package/examples/functional-logical-physical/model/{catalog → methodology}/project.sysml +4 -5
- package/examples/gpca-pump/analysis/Samples/01-model-overview.ipynb +40 -139
- package/examples/gpca-pump/analysis/Samples/02-architecture-hotspots.ipynb +38 -290
- package/examples/gpca-pump/analysis/Samples/03-model-quality.ipynb +47 -217
- package/examples/gpca-pump/analysis/Samples/04-change-impact-explorer.ipynb +50 -191
- package/examples/gpca-pump/analysis/Samples/05-model-charts.ipynb +42 -181
- package/examples/gpca-pump/analysis/Samples/06-ownership-graph.ipynb +40 -164
- package/examples/gpca-pump/analysis/Samples/07-model-inventory-table.ipynb +51 -172
- package/examples/gpca-pump/analysis/Samples/README.md +15 -9
- package/examples/gpca-pump/analysis/memo_model.py +243 -0
- package/examples/gpca-pump/memo.identity.yaml +521 -26
- package/examples/gpca-pump/memo.package.yaml +3 -1
- package/examples/gpca-pump/methodology/gpca_profiles.sysml +56 -47
- package/examples/gpca-pump/model/catalog/gpca_analysis.sysml +51 -78
- package/examples/gpca-pump/model/catalog/gpca_architecture.sysml +359 -357
- package/examples/gpca-pump/model/catalog/gpca_behavior_actions.sysml +9 -9
- package/examples/gpca-pump/model/catalog/gpca_behavior_modes.sysml +56 -69
- package/examples/gpca-pump/model/catalog/gpca_behavior_subsystems.sysml +44 -59
- package/examples/gpca-pump/model/catalog/gpca_context.sysml +23 -35
- package/examples/gpca-pump/model/catalog/gpca_cybersecurity.sysml +33 -40
- package/examples/gpca-pump/model/catalog/gpca_formal_behavior.sysml +62 -63
- package/examples/gpca-pump/model/catalog/gpca_interfaces.sysml +362 -483
- package/examples/gpca-pump/model/catalog/gpca_operational.sysml +45 -70
- package/examples/gpca-pump/model/catalog/gpca_physical.sysml +6 -12
- package/examples/gpca-pump/model/catalog/gpca_requirements.sysml +173 -169
- package/examples/gpca-pump/model/catalog/gpca_risk.sysml +139 -225
- package/examples/gpca-pump/model/catalog/gpca_standards.sysml +43 -47
- package/examples/gpca-pump/model/catalog/gpca_system.sysml +68 -65
- package/examples/gpca-pump/model/catalog/gpca_trace.sysml +147 -116
- package/examples/gpca-pump/model/catalog/gpca_verification.sysml +65 -90
- package/examples/gpca-pump/model/catalog/viewpoints/context/views/context_system_context_view.sysml +4 -6
- package/examples/gpca-pump/model/catalog/viewpoints/cybersecurity/views/cybersecurity_cybersecurity_view.sysml +4 -6
- package/examples/gpca-pump/model/catalog/viewpoints/cybersecurity/views/document_cyber_assessment_view.sysml +4 -6
- package/examples/gpca-pump/model/catalog/viewpoints/cybersecurity/views/document_threat_model_view.sysml +4 -6
- package/examples/gpca-pump/model/catalog/viewpoints/functional/views/functional_function_allocation_view.sysml +2 -4
- package/examples/gpca-pump/model/catalog/viewpoints/functional/views/functional_function_browser_view.sysml +7 -6
- package/examples/gpca-pump/model/catalog/viewpoints/logical/views/behavior_action_flow_view.sysml +4 -6
- package/examples/gpca-pump/model/catalog/viewpoints/logical/views/document_architecture_description_view.sysml +4 -6
- package/examples/gpca-pump/model/catalog/viewpoints/logical/views/logical_device_interconnect_view.sysml +3 -5
- package/examples/gpca-pump/model/catalog/viewpoints/logical/views/logical_logical_architecture_view.sysml +4 -6
- package/examples/gpca-pump/model/catalog/viewpoints/logical/views/logical_mode_state_view.sysml +4 -6
- package/examples/gpca-pump/model/catalog/viewpoints/logical/views/logical_system_decomposition_view.sysml +3 -5
- package/examples/gpca-pump/model/catalog/viewpoints/operational/views/operational_scenario_sequence_view.sysml +3 -5
- package/examples/gpca-pump/model/catalog/viewpoints/operational/views/operational_use_case_view.sysml +4 -6
- package/examples/gpca-pump/model/catalog/viewpoints/physical/views/physical_physical_bom_view.sysml +2 -4
- package/examples/gpca-pump/model/catalog/viewpoints/requirements/views/document_dhf_index_view.sysml +3 -5
- package/examples/gpca-pump/model/catalog/viewpoints/requirements/views/requirements_requirements_trace_view.sysml +2 -4
- package/examples/gpca-pump/model/catalog/viewpoints/risk/views/document_hazard_analysis_view.sysml +4 -6
- package/examples/gpca-pump/model/catalog/viewpoints/risk/views/document_rmf_view.sysml +4 -6
- package/examples/gpca-pump/model/catalog/viewpoints/risk/views/risk_fmea_view.sysml +2 -4
- package/examples/gpca-pump/model/catalog/viewpoints/risk/views/risk_risk_chain_view.sysml +4 -6
- package/examples/gpca-pump/model/catalog/viewpoints/software/views/document_sdd_view.sysml +4 -6
- package/examples/gpca-pump/model/catalog/viewpoints/software/views/software_software_architecture_view.sysml +3 -5
- package/examples/gpca-pump/model/catalog/viewpoints/usability/views/document_usability_view.sysml +4 -6
- package/examples/gpca-pump/model/catalog/viewpoints/verification/views/document_vv_view.sysml +3 -5
- package/examples/gpca-pump/model/catalog/viewpoints/verification/views/verification_verification_coverage_view.sysml +2 -4
- package/examples/gpca-pump/model/{catalog → methodology}/project.sysml +8 -6
- package/examples/ivd-laboratory-system/memo.package.yaml +3 -1
- package/examples/ivd-laboratory-system/model/catalog/ivd_laboratory_system.sysml +12 -9
- package/examples/ivd-laboratory-system/model/{catalog → methodology}/project.sysml +4 -5
- package/examples/manual-surgical-instrument/memo.package.yaml +3 -1
- package/examples/manual-surgical-instrument/model/catalog/manual_surgical_instrument.sysml +2 -6
- package/examples/manual-surgical-instrument/model/{catalog → methodology}/project.sysml +4 -5
- package/examples/multidimensional-layers/memo.package.yaml +3 -1
- package/examples/multidimensional-layers/model/catalog/multidimensional_layers.sysml +2 -4
- package/examples/multidimensional-layers/model/{catalog → methodology}/project.sysml +4 -5
- package/examples/nested-architecture-dsm/memo.identity.yaml +93 -0
- package/examples/nested-architecture-dsm/memo.package.yaml +3 -1
- package/examples/nested-architecture-dsm/model/catalog/architecture/functional/functions.sysml +30 -30
- package/examples/nested-architecture-dsm/model/catalog/architecture/logical/structure.sysml +28 -28
- package/examples/nested-architecture-dsm/model/catalog/architecture/operational/context.sysml +2 -4
- package/examples/nested-architecture-dsm/model/catalog/assurance/requirements/needs.sysml +4 -4
- package/examples/nested-architecture-dsm/model/catalog/assurance/requirements/requirements.sysml +7 -7
- package/examples/nested-architecture-dsm/model/catalog/assurance/verification_validation/verification_validation.sysml +8 -8
- package/examples/nested-architecture-dsm/model/{catalog → methodology}/project.sysml +4 -5
- package/examples/reusable-instrument/memo.package.yaml +3 -1
- package/examples/reusable-instrument/model/catalog/reusable_instrument.sysml +7 -7
- package/examples/reusable-instrument/model/{catalog → methodology}/project.sysml +4 -5
- package/examples/robot-cell-family/README.md +34 -0
- package/examples/robot-cell-family/memo.identity.yaml +142 -0
- package/examples/robot-cell-family/memo.package.yaml +7 -0
- package/examples/robot-cell-family/model/methodology/project.sysml +30 -0
- package/examples/robot-cell-family/model/shared/shared.sysml +53 -0
- package/examples/robot-cell-family/model/sos/chains.sysml +36 -0
- package/examples/robot-cell-family/model/sos/icds.sysml +29 -0
- package/examples/robot-cell-family/model/sos/sos.sysml +31 -0
- package/examples/robot-cell-family/model/sos/use_cases.sysml +25 -0
- package/examples/robot-cell-family/model/systems/manipulation/manipulation_system.sysml +35 -0
- package/examples/robot-cell-family/model/systems/navigation/navigation_system.sysml +46 -0
- package/examples/robot-cell-family/model/systems/perception/perception_system.sysml +37 -0
- package/examples/robot-platform/memo.package.yaml +3 -0
- package/examples/robot-platform/model/platform.sysml +15 -0
- package/examples/ros-mobile-robot/README.md +5 -4
- package/examples/ros-mobile-robot/memo.identity.yaml +94 -0
- package/examples/ros-mobile-robot/memo.package.yaml +3 -1
- package/examples/ros-mobile-robot/model/catalog/ros_mobile_robot.sysml +26 -29
- package/examples/ros-mobile-robot/model/{catalog → methodology}/project.sysml +8 -14
- package/examples/software-only-medical-device/memo.package.yaml +3 -1
- package/examples/software-only-medical-device/model/catalog/software_only_medical_device.sysml +9 -10
- package/examples/software-only-medical-device/model/{catalog → methodology}/project.sysml +8 -9
- package/examples/surgical-closure-workflow/memo.package.yaml +3 -1
- package/examples/surgical-closure-workflow/model/catalog/surgical_closure_workflow.sysml +23 -26
- package/examples/surgical-closure-workflow/model/{catalog → methodology}/project.sysml +7 -5
- package/examples/surgical-robot/memo.package.yaml +3 -1
- package/examples/surgical-robot/model/catalog/surgical_robot.sysml +14 -12
- package/examples/surgical-robot/model/{catalog → methodology}/project.sysml +4 -5
- package/examples/sysml-diagram-samples/README.md +1 -0
- package/examples/sysml-diagram-samples/memo.identity.yaml +459 -0
- package/examples/sysml-diagram-samples/memo.package.yaml +3 -1
- package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/viewpoint.sysml +10 -20
- package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/action_flow_view.sysml +5 -5
- package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/browser_view.sysml +10 -13
- package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/context_view.sysml +11 -7
- package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/diagram_samples.sysml +63 -8
- package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/drill_down_view.sysml +88 -0
- package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/functional_flow_view.sysml +25 -25
- package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/grid_view.sysml +6 -6
- package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/interconnection_view.sysml +15 -17
- package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/operational_behaviour_view.sysml +21 -21
- package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/package_view.sysml +7 -7
- package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/requirements_view.sysml +5 -5
- package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/sequence_view.sysml +14 -14
- package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/state_transition_view.sysml +16 -17
- package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/tree_view.sysml +9 -9
- package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/use_case_view.sysml +7 -14
- package/examples/sysml-diagram-samples/model/{catalog → methodology}/project.sysml +5 -5
- package/examples/sysml-diagram-samples/model/sysml_v2_activity_example.sysml +1 -1
- package/examples/temperature-alarm/memo.identity.yaml +6 -0
- package/examples/temperature-alarm/memo.package.yaml +3 -1
- package/examples/temperature-alarm/model/catalog/temperature_alarm.sysml +43 -21
- package/examples/temperature-alarm/model/{catalog → methodology}/project.sysml +4 -5
- package/examples/ui-screen-regions/memo.identity.yaml +33 -0
- package/examples/ui-screen-regions/memo.package.yaml +3 -1
- package/examples/ui-screen-regions/model/catalog/architecture/functional/functions.sysml +12 -12
- package/examples/ui-screen-regions/model/catalog/architecture/implementation/ui.sysml +18 -18
- package/examples/ui-screen-regions/model/catalog/artifacts/assets/catalog.sysml +6 -6
- package/examples/ui-screen-regions/model/catalog/artifacts/reviews/comments.sysml +3 -3
- package/examples/ui-screen-regions/model/catalog/artifacts/reviews/notes.sysml +1 -1
- package/examples/ui-screen-regions/model/catalog/artifacts/reviews/rationales.sysml +1 -1
- package/examples/ui-screen-regions/model/catalog/assurance/human_factors/human_factors.sysml +10 -10
- package/examples/ui-screen-regions/model/catalog/assurance/requirements/needs.sysml +1 -1
- package/examples/ui-screen-regions/model/catalog/assurance/requirements/requirements.sysml +12 -12
- package/examples/ui-screen-regions/model/catalog/assurance/safety_risk/risk.sysml +15 -15
- package/examples/ui-screen-regions/model/catalog/assurance/verification_validation/verification_validation.sysml +6 -6
- package/examples/ui-screen-regions/model/catalog/viewpoints/functional/views/ui_functional_tree.sysml +1 -2
- package/examples/ui-screen-regions/model/catalog/viewpoints/requirements/views/ui_requirements_trace.sysml +1 -2
- package/examples/ui-screen-regions/model/catalog/viewpoints/risk/views/ui_risk_chain.sysml +1 -2
- package/examples/ui-screen-regions/model/{catalog → methodology}/project.sysml +4 -5
- package/extensions/README.md +65 -16
- package/extensions/aadl/memo.package.yaml +1 -1
- package/extensions/aadl/src/aadl_extension.sysml +5 -2
- package/extensions/aadl/src/correspondence/memo_aadl_correspondence.sysml +29 -50
- package/extensions/clinical/memo.package.yaml +1 -1
- package/extensions/clinical/src/clinical_extension.sysml +2 -0
- package/extensions/cloud/memo.package.yaml +1 -1
- package/extensions/container/memo.package.yaml +1 -1
- package/extensions/messaging/memo.package.yaml +1 -1
- package/extensions/messaging/src/messaging_extension.sysml +2 -2
- package/extensions/ros/memo.package.yaml +1 -1
- package/extensions/ros/src/ros_extension.sysml +25 -24
- package/extensions/template/memo.package.yaml +1 -1
- package/extensions/template/model/extension.sysml +25 -0
- package/memo.manifest.yaml +1 -7
- package/methodologies/default/memo.package.yaml +1 -1
- package/methodologies/gpca/memo.package.yaml +1 -1
- package/ontology/memo.package.yaml +1 -1
- package/package.json +6 -4
- package/profile/memo.package.yaml +1 -1
- package/src/architecture/decisions/memo_decisions.sysml +9 -2
- package/src/architecture/functional/behavior/memo_behavior.sysml +27 -7
- package/src/architecture/functional/functions/memo_functions.sysml +45 -31
- package/src/architecture/functional/memo_architecture_functional.sysml +14 -0
- package/src/architecture/implementation/memo_architecture_implementation.sysml +21 -0
- package/src/architecture/implementation/software/runtime/memo_software_runtime.sysml +7 -0
- package/src/architecture/implementation/software/structure/memo_software_structure.sysml +58 -17
- package/src/architecture/implementation/ui/memo_ui.sysml +1 -1
- package/src/architecture/logical/interfaces/memo_interfaces.sysml +67 -58
- package/src/architecture/logical/memo_architecture_logical.sysml +13 -0
- package/src/architecture/logical/structure/memo_logical_structure.sysml +27 -8
- package/src/architecture/operational/context/stakeholders/memo_stakeholders.sysml +4 -1
- package/src/architecture/operational/memo_architecture_operational.sysml +19 -0
- package/src/architecture/operational/scenarios/memo_scenarios.sysml +9 -8
- package/src/architecture/operational/structure/memo_operational.sysml +5 -2
- package/src/architecture/operational/use_cases/memo_use_cases.sysml +16 -8
- package/src/architecture/realization/deployment/memo_deployment.sysml +30 -10
- package/src/architecture/realization/memo_architecture_realization.sysml +13 -0
- package/src/architecture/realization/physical/memo_physical_architecture.sysml +61 -0
- package/src/architecture/variability/memo_variability.sysml +87 -0
- package/src/artifacts/configuration_management/memo_configuration_management.sysml +95 -3
- package/src/artifacts/core/memo_controlled_artifacts.sysml +4 -2
- package/src/artifacts/standards/cfr_21_820.sysml +12 -24
- package/src/artifacts/standards/fda_cybersecurity_2023.sysml +13 -20
- package/src/artifacts/standards/iec_60601_1.sysml +16 -32
- package/src/artifacts/standards/iec_60601_1_2.sysml +5 -10
- package/src/artifacts/standards/iec_60812.sysml +4 -8
- package/src/artifacts/standards/iec_62304.sysml +607 -47
- package/src/artifacts/standards/iec_62366_1.sysml +12 -24
- package/src/artifacts/standards/iec_81001_5_1.sysml +8 -16
- package/src/artifacts/standards/iso_13485.sysml +12 -24
- package/src/artifacts/standards/iso_14971.sysml +118 -20
- package/src/artifacts/standards/iso_iec_ieee_42010.sysml +3 -6
- package/src/artifacts/standards/memo_artifacts_standards_traceability.sysml +14 -4
- package/src/artifacts/templates/dhf/fda-cybersecurity/postmarket-surveillance.md +1 -2
- package/src/artifacts/templates/dhf/fda-cybersecurity/vuln-assessment.md +1 -2
- package/src/artifacts/templates/dhf/iec-62304/sad.md +1 -2
- package/src/artifacts/templates/dhf/iec-62304/sbom.md +1 -2
- package/src/artifacts/templates/dhf/iec-62304/sdp.md +1 -2
- package/src/artifacts/templates/dhf/iec-62304/soup.md +3 -5
- package/src/artifacts/templates/dhf/system/sad.md +1 -1
- package/src/artifacts/templates/dhf/system/standards-checklist.md +2 -2
- package/src/artifacts/templates/dhf/system/standards-traceability.md +1 -1
- package/src/assurance/cybersecurity/memo_cybersecurity.sysml +339 -13
- package/src/assurance/human_factors/memo_human_factors.sysml +6 -2
- package/src/assurance/safety_risk/analysis/memo_fmea.sysml +7 -3
- package/src/assurance/safety_risk/memo_risk.sysml +39 -1
- package/src/core/common/memo_common.sysml +51 -68
- package/src/core/enumerations/memo_enumerations.sysml +93 -9
- package/src/core/relationships/memo_relationships.sysml +17 -11
- package/src/core/relationships/memo_workspace_membership.sysml +284 -0
- package/src/core/semantics/semantics.sysml +58 -0
- package/src/core/terminology/terminology.sysml +7 -0
- package/src/memo_namespaces.sysml +6 -0
- package/src/methodology/archetypes/memo_archetypes.sysml +8 -16
- package/src/methodology/core/memo_core.sysml +85 -29
- package/src/methodology/profiles/memo_profiles.sysml +217 -61
- package/src/methodology/workflow/memo_workflow.sysml +28 -0
- package/src/rules/closure/closure_rules.sysml +250 -4
- package/src/rules/crosslayer/cross_layer_rules.sysml +11 -0
- package/src/rules/ontology/ontology_invariants.sysml +288 -48
- package/src/rules/quantitative/quantitative_rules.sysml +4 -0
- package/src/viewpoints/catalog/memo_viewpoint_catalog.sysml +28 -28
- package/src/viewpoints/clinical/clinical_viewpoint.sysml +2 -3
- package/src/viewpoints/context/context_viewpoint.sysml +2 -3
- package/src/viewpoints/context/views/system_context_view/system_context_view.sysml +3 -5
- package/src/viewpoints/cybersecurity/cybersecurity_viewpoint.sysml +2 -3
- package/src/viewpoints/definitions/memo_view_layout.sysml +150 -0
- package/src/viewpoints/definitions/memo_viewpoint_definitions.sysml +0 -4
- package/src/viewpoints/functional/functional_viewpoint.sysml +2 -3
- package/src/viewpoints/functional/views/function_allocation_view/function_allocation_view.sysml +2 -4
- package/src/viewpoints/functional/views/system_functional_tree_view/system_functional_tree_view.sysml +2 -4
- package/src/viewpoints/logical/logical_viewpoint.sysml +2 -3
- package/src/viewpoints/logical/views/logical_architecture_view/logical_architecture_view.sysml +2 -4
- package/src/viewpoints/operational/operational_viewpoint.sysml +2 -3
- package/src/viewpoints/operational/views/use_case_view/use_case_view.sysml +3 -5
- package/src/viewpoints/physical/physical_viewpoint.sysml +2 -3
- package/src/viewpoints/physical/views/network_topology_view/network_topology_view.sysml +2 -4
- package/src/viewpoints/physical/views/physical_bom_view/physical_bom_view.sysml +2 -4
- package/src/viewpoints/rendering/memo_rendering.sysml +50 -98
- package/src/viewpoints/requirements/requirements_viewpoint.sysml +2 -3
- package/src/viewpoints/requirements/views/requirements_traceability_view/requirements_traceability_view.sysml +2 -4
- package/src/viewpoints/risk/risk_viewpoint.sysml +2 -3
- package/src/viewpoints/risk/views/risk_chain_view/risk_chain_view.sysml +2 -4
- package/src/viewpoints/software/software_viewpoint.sysml +2 -3
- package/src/viewpoints/software/views/software_architecture_view/software_architecture_view.sysml +3 -5
- package/src/viewpoints/stakeholders_concerns/memo_stakeholders_concerns.sysml +11 -29
- package/src/viewpoints/ui_layout/ui_layout_viewpoint.sysml +2 -3
- package/src/viewpoints/ui_layout/views/screen_layout_view/screen_layout_view.sysml +1 -1
- package/src/viewpoints/usability/usability_viewpoint.sysml +2 -3
- package/src/viewpoints/verification/verification_viewpoint.sysml +2 -3
- package/src/viewpoints/verification/views/verification_coverage_view/verification_coverage_view.sysml +2 -4
- package/stage1/syside-67f92dc96ba75cd05b5c8d13.ids.gz +0 -0
- package/stage1/syside-67f92dc96ba75cd05b5c8d13.json.gz +0 -0
- package/templates/default/memo.package.yaml +6 -1
- package/templates/default/model/catalog/architecture/system.sysml +7 -3
- package/templates/default/model/{catalog → methodology}/project.sysml +3 -4
- package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/context_view.viewlayout +0 -47
- package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/interconnection_view.viewlayout +0 -94
- package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/operational_behaviour_view.viewlayout +0 -13
- package/examples/ui-screen-regions/model/catalog/relationships.sysml +0 -8
- package/extensions/aadl/src/methodology/aadl_methodology.sysml +0 -19
- package/extensions/clinical/src/methodology/clinical_methodology.sysml +0 -24
- package/extensions/cloud/src/methodology/cloud_methodology.sysml +0 -19
- package/extensions/container/src/methodology/container_methodology.sysml +0 -19
- package/extensions/messaging/src/methodology/messaging_methodology.sysml +0 -19
- package/extensions/ros/src/methodology/ros_methodology.sysml +0 -27
- package/extensions/template/src/extension.sysml +0 -39
- package/templates/connected-device/memo.package.yaml +0 -13
- package/templates/connected-device/model/catalog/architecture/system.sysml +0 -5
- package/templates/connected-device/model/catalog/artifacts/catalog.sysml +0 -5
- package/templates/connected-device/model/catalog/assurance/requirements.sysml +0 -7
- package/templates/connected-device/model/catalog/project.sysml +0 -30
- package/templates/connected-device/package.json +0 -8
- package/templates/connected-device/syside.toml +0 -13
- package/templates/infusion-pump/memo.package.yaml +0 -13
- package/templates/infusion-pump/model/catalog/architecture/system.sysml +0 -5
- package/templates/infusion-pump/model/catalog/artifacts/catalog.sysml +0 -5
- package/templates/infusion-pump/model/catalog/assurance/requirements.sysml +0 -7
- package/templates/infusion-pump/model/catalog/project.sysml +0 -30
- package/templates/infusion-pump/package.json +0 -8
- package/templates/infusion-pump/syside.toml +0 -13
- package/templates/monitoring-device/memo.package.yaml +0 -13
- package/templates/monitoring-device/model/catalog/architecture/system.sysml +0 -5
- package/templates/monitoring-device/model/catalog/artifacts/catalog.sysml +0 -5
- package/templates/monitoring-device/model/catalog/assurance/requirements.sysml +0 -7
- package/templates/monitoring-device/model/catalog/project.sysml +0 -30
- package/templates/monitoring-device/package.json +0 -8
- package/templates/monitoring-device/syside.toml +0 -13
- package/templates/samd/memo.package.yaml +0 -13
- package/templates/samd/model/catalog/architecture/system.sysml +0 -5
- package/templates/samd/model/catalog/artifacts/catalog.sysml +0 -5
- package/templates/samd/model/catalog/assurance/requirements.sysml +0 -7
- package/templates/samd/model/catalog/project.sysml +0 -30
- package/templates/samd/package.json +0 -8
- package/templates/samd/syside.toml +0 -13
|
@@ -2,10 +2,12 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
2
2
|
private import ScalarValues::*;
|
|
3
3
|
|
|
4
4
|
private import memo_architecture_logical_interfaces::*;
|
|
5
|
+
private import memo_architecture_logical_structure::*;
|
|
5
6
|
private import memo_architecture_realization_physical::*;
|
|
6
7
|
private import memo_architecture_functional_functions::*;
|
|
7
8
|
private import memo_core_common::*;
|
|
8
9
|
private import memo_examples_gpca_pump_gpca_architecture::*;
|
|
10
|
+
private import memo_examples_gpca_pump_gpca_physical::*;
|
|
9
11
|
private import memo_examples_gpca_pump_gpca_behavior_subsystems::*;
|
|
10
12
|
private import memo_core_enumerations::*;
|
|
11
13
|
private import memo_core_dimensions::*;
|
|
@@ -19,88 +21,91 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
19
21
|
attribute :>> interfaceType = "SensorDataInterface";
|
|
20
22
|
attribute :>> sensorDomain = "physiological and device state";
|
|
21
23
|
}
|
|
22
|
-
interface sensorInputInterface :
|
|
24
|
+
abstract interface sensorInputInterface : LogicalInterface {
|
|
23
25
|
@MemoIdentity { :>> providedId = "LI-005"; }
|
|
24
|
-
attribute :>> name = "SensorInputInterface";
|
|
25
26
|
attribute :>> interfaceKind = InterfaceKind::data;
|
|
26
27
|
attribute :>> direction = DirectionKind::input;
|
|
27
28
|
attribute :>> interactionPattern = "sensor feed";
|
|
28
29
|
attribute :>> protocolSemantics = "flow, air, occlusion, door, battery, cpu, memory, pump state";
|
|
29
30
|
}
|
|
30
|
-
interface actuatorCommandInterface :
|
|
31
|
+
abstract interface actuatorCommandInterface : LogicalInterface {
|
|
31
32
|
@MemoIdentity { :>> providedId = "LI-006"; }
|
|
32
|
-
attribute :>> name = "ActuatorCommandInterface";
|
|
33
33
|
attribute :>> interfaceKind = InterfaceKind::control;
|
|
34
34
|
attribute :>> direction = DirectionKind::output;
|
|
35
35
|
attribute :>> interactionPattern = "commanded flow and annunciation outputs";
|
|
36
36
|
attribute :>> protocolSemantics = "pump flow command, buzzer tone select, display content";
|
|
37
37
|
}
|
|
38
|
-
interface operatorEntryInterface :
|
|
38
|
+
abstract interface operatorEntryInterface : LogicalInterface {
|
|
39
39
|
@MemoIdentity { :>> providedId = "LI-007"; }
|
|
40
|
-
attribute :>> name = "OperatorEntryInterface";
|
|
41
40
|
attribute :>> interfaceKind = InterfaceKind::userInteraction;
|
|
42
41
|
attribute :>> direction = DirectionKind::input;
|
|
43
42
|
attribute :>> interactionPattern = "keypad entry with confirmation readback";
|
|
44
43
|
attribute :>> protocolSemantics = "prescription fields, alarm silence, start/stop commands";
|
|
45
44
|
}
|
|
46
|
-
interface eventLogInterface :
|
|
45
|
+
abstract interface eventLogInterface : LogicalInterface {
|
|
47
46
|
@MemoIdentity { :>> providedId = "LI-008"; }
|
|
48
|
-
attribute :>> name = "EventLogInterface";
|
|
49
47
|
attribute :>> interfaceKind = InterfaceKind::logging;
|
|
50
48
|
attribute :>> direction = DirectionKind::output;
|
|
51
49
|
attribute :>> interactionPattern = "append-only audit records";
|
|
52
50
|
attribute :>> protocolSemantics = "timestamped therapy, alarm, and configuration events";
|
|
53
51
|
}
|
|
54
|
-
interface hwSoftwareBus :
|
|
55
|
-
@MemoIdentity { :>> providedId = "PI-001"; }
|
|
56
|
-
attribute :>> name = "HW_SW_DataBus";
|
|
52
|
+
abstract interface hwSoftwareBus : PhysicalInterface {
|
|
53
|
+
@MemoIdentity { :>> providedId = "PI-001"; :>> label = "HW_SW_DataBus"; }
|
|
57
54
|
attribute :>> interfaceKind = InterfaceKind::digitalSignal;
|
|
55
|
+
attribute :>> signalingKind = SignalingKind::digital;
|
|
56
|
+
attribute :>> mediumKind = PhysicalMediumKind::electrical;
|
|
58
57
|
attribute :>> protocol = "immediate data port mapping";
|
|
59
|
-
attribute :>>
|
|
58
|
+
attribute :>> direction = DirectionKind::inputOutput;
|
|
60
59
|
attribute :>> bandwidth = "implementation-defined";
|
|
61
60
|
attribute :>> timingConstraint = "same execution step where required";
|
|
62
61
|
attribute :>> electricalStandard = "logical/AADL";
|
|
63
62
|
attribute :>> nominalVoltageV = 3.3;
|
|
64
63
|
attribute :>> nominalCurrentA = 0.02;
|
|
65
64
|
}
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
65
|
+
// Wired: the three physical interfaces whose controller-side connector is
|
|
66
|
+
// modelled (gpca_physical). The rest are abstract until their ends are.
|
|
67
|
+
interface pumpMotorDrive : PhysicalInterface connect portMotorDrive to pumpMotorAssembly.portFlowCommandIn {
|
|
68
|
+
@MemoIdentity { :>> providedId = "PI-002"; :>> label = "PumpMotorStepDrive"; }
|
|
69
69
|
attribute :>> interfaceKind = InterfaceKind::digitalSignal;
|
|
70
|
+
attribute :>> signalingKind = SignalingKind::pulse;
|
|
71
|
+
attribute :>> mediumKind = PhysicalMediumKind::electrical;
|
|
70
72
|
attribute :>> protocol = "step/direction pulse train";
|
|
71
|
-
attribute :>>
|
|
73
|
+
attribute :>> direction = DirectionKind::output;
|
|
72
74
|
attribute :>> timingConstraint = "step rate proportional to commanded flow";
|
|
73
75
|
attribute :>> electricalStandard = "3.3V CMOS";
|
|
74
76
|
attribute :>> nominalVoltageV = 3.3;
|
|
75
77
|
attribute :>> nominalCurrentA = 0.5;
|
|
76
|
-
attribute :>>
|
|
78
|
+
attribute :>> protocolSemantics = "step/dir with enable interlock";
|
|
77
79
|
}
|
|
78
|
-
interface bolusButtonLine :
|
|
79
|
-
@MemoIdentity { :>> providedId = "PI-003"; }
|
|
80
|
-
attribute :>> name = "BolusButtonInputLine";
|
|
80
|
+
interface bolusButtonLine : PhysicalInterface connect bolusButton.portPendantOut to portPatientPendant {
|
|
81
|
+
@MemoIdentity { :>> providedId = "PI-003"; :>> label = "BolusButtonInputLine"; }
|
|
81
82
|
attribute :>> interfaceKind = InterfaceKind::digitalSignal;
|
|
83
|
+
attribute :>> signalingKind = SignalingKind::discrete;
|
|
84
|
+
attribute :>> mediumKind = PhysicalMediumKind::electrical;
|
|
82
85
|
attribute :>> protocol = "debounced discrete input";
|
|
83
|
-
attribute :>>
|
|
86
|
+
attribute :>> direction = DirectionKind::input;
|
|
84
87
|
attribute :>> timingConstraint = "debounce 50 ms; stuck-high detection after 60 s";
|
|
85
88
|
attribute :>> electricalStandard = "3.3V CMOS, normally open";
|
|
86
89
|
attribute :>> nominalVoltageV = 3.3;
|
|
87
90
|
attribute :>> nominalCurrentA = 0.001;
|
|
88
91
|
}
|
|
89
|
-
interface occlusionAnalogLine :
|
|
90
|
-
@MemoIdentity { :>> providedId = "PI-004"; }
|
|
91
|
-
attribute :>> name = "OcclusionPressureAnalogLine";
|
|
92
|
+
interface occlusionAnalogLine : PhysicalInterface connect occlusionSensor.portOcclusionOut to portSensorHarness {
|
|
93
|
+
@MemoIdentity { :>> providedId = "PI-004"; :>> label = "OcclusionPressureAnalogLine"; }
|
|
92
94
|
attribute :>> interfaceKind = InterfaceKind::analogSignal;
|
|
93
|
-
attribute :>>
|
|
95
|
+
attribute :>> signalingKind = SignalingKind::analog;
|
|
96
|
+
attribute :>> mediumKind = PhysicalMediumKind::electrical;
|
|
97
|
+
attribute :>> direction = DirectionKind::input;
|
|
94
98
|
attribute :>> electricalStandard = "ratiometric 0.5-4.5V";
|
|
95
99
|
attribute :>> nominalVoltageV = 5.0;
|
|
96
100
|
attribute :>> nominalCurrentA = 0.01;
|
|
97
101
|
attribute :>> signalRange = "0 to 30 psi line pressure";
|
|
98
102
|
}
|
|
99
|
-
interface batteryMonitorLine :
|
|
100
|
-
@MemoIdentity { :>> providedId = "PI-005"; }
|
|
101
|
-
attribute :>> name = "BatteryVoltageMonitorLine";
|
|
103
|
+
abstract interface batteryMonitorLine : PhysicalInterface {
|
|
104
|
+
@MemoIdentity { :>> providedId = "PI-005"; :>> label = "BatteryVoltageMonitorLine"; }
|
|
102
105
|
attribute :>> interfaceKind = InterfaceKind::power;
|
|
103
|
-
attribute :>>
|
|
106
|
+
attribute :>> signalingKind = SignalingKind::analog;
|
|
107
|
+
attribute :>> mediumKind = PhysicalMediumKind::electrical;
|
|
108
|
+
attribute :>> direction = DirectionKind::input;
|
|
104
109
|
attribute :>> electricalStandard = "divided battery rail to ADC";
|
|
105
110
|
attribute :>> nominalVoltageV = 12.0;
|
|
106
111
|
attribute :>> nominalCurrentA = 0.001;
|
|
@@ -108,9 +113,8 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
108
113
|
}
|
|
109
114
|
|
|
110
115
|
// ── System-level interfaces (CriSys Ch.3, I 1-I 11) ─────────
|
|
111
|
-
interface siDataEntry :
|
|
112
|
-
@MemoIdentity { :>> providedId = "SI-001"; }
|
|
113
|
-
attribute :>> name = "DataEntryInterface";
|
|
116
|
+
abstract interface siDataEntry : LogicalInterface {
|
|
117
|
+
@MemoIdentity { :>> providedId = "SI-001"; :>> label = "DataEntryInterface"; }
|
|
114
118
|
attribute :>> interfaceKind = InterfaceKind::userInteraction;
|
|
115
119
|
attribute :>> direction = DirectionKind::input;
|
|
116
120
|
attribute :>> protocol = "CriSys I 1, I 2, I 3";
|
|
@@ -118,9 +122,8 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
118
122
|
attribute :>> interactionPattern = "clinician enter/edit/save with mode-gated commands";
|
|
119
123
|
@MemoIdentity { :>> sourceReference = "CITE-001: CriSys GPCA System Requirements (2013), §3.1 Data Entry Interface"; }
|
|
120
124
|
}
|
|
121
|
-
interface siBolusRequest :
|
|
122
|
-
@MemoIdentity { :>> providedId = "SI-002"; }
|
|
123
|
-
attribute :>> name = "BolusRequestInterface";
|
|
125
|
+
abstract interface siBolusRequest : LogicalInterface {
|
|
126
|
+
@MemoIdentity { :>> providedId = "SI-002"; :>> label = "BolusRequestInterface"; }
|
|
124
127
|
attribute :>> interfaceKind = InterfaceKind::userInteraction;
|
|
125
128
|
attribute :>> direction = DirectionKind::input;
|
|
126
129
|
attribute :>> protocol = "CriSys I 4";
|
|
@@ -128,9 +131,8 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
128
131
|
attribute :>> interactionPattern = "patient pendant button press";
|
|
129
132
|
@MemoIdentity { :>> sourceReference = "CITE-001: CriSys GPCA System Requirements (2013), §3.2 Bolus Request Interface"; }
|
|
130
133
|
}
|
|
131
|
-
interface siDrugFlow :
|
|
132
|
-
@MemoIdentity { :>> providedId = "SI-003"; }
|
|
133
|
-
attribute :>> name = "DrugFlowInterface";
|
|
134
|
+
abstract interface siDrugFlow : LogicalInterface {
|
|
135
|
+
@MemoIdentity { :>> providedId = "SI-003"; :>> label = "DrugFlowInterface"; }
|
|
134
136
|
attribute :>> interfaceKind = InterfaceKind::fluidic;
|
|
135
137
|
attribute :>> direction = DirectionKind::output;
|
|
136
138
|
attribute :>> protocol = "CriSys I 5, I 6";
|
|
@@ -138,9 +140,8 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
138
140
|
attribute :>> interactionPattern = "continuous fluid path while infusing";
|
|
139
141
|
@MemoIdentity { :>> sourceReference = "CITE-001: CriSys GPCA System Requirements (2013), §3.3 Drug Flow Interface"; }
|
|
140
142
|
}
|
|
141
|
-
interface siNotification :
|
|
142
|
-
@MemoIdentity { :>> providedId = "SI-004"; }
|
|
143
|
-
attribute :>> name = "NotificationInterface";
|
|
143
|
+
abstract interface siNotification : LogicalInterface {
|
|
144
|
+
@MemoIdentity { :>> providedId = "SI-004"; :>> label = "NotificationInterface"; }
|
|
144
145
|
attribute :>> interfaceKind = InterfaceKind::notification;
|
|
145
146
|
attribute :>> direction = DirectionKind::output;
|
|
146
147
|
attribute :>> protocol = "CriSys I 7, I 8";
|
|
@@ -148,9 +149,8 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
148
149
|
attribute :>> interactionPattern = "visual list with per-notification audio annunciation";
|
|
149
150
|
@MemoIdentity { :>> sourceReference = "CITE-001: CriSys GPCA System Requirements (2013), §3.4 Notification Interface"; }
|
|
150
151
|
}
|
|
151
|
-
interface siPharmacyDb :
|
|
152
|
-
@MemoIdentity { :>> providedId = "SI-005"; }
|
|
153
|
-
attribute :>> name = "HospitalPharmacyDatabaseInterface";
|
|
152
|
+
abstract interface siPharmacyDb : LogicalInterface {
|
|
153
|
+
@MemoIdentity { :>> providedId = "SI-005"; :>> label = "HospitalPharmacyDatabaseInterface"; }
|
|
154
154
|
attribute :>> interfaceKind = InterfaceKind::data;
|
|
155
155
|
attribute :>> direction = DirectionKind::inputOutput;
|
|
156
156
|
attribute :>> protocol = "CriSys I 9, I 10, I 11";
|
|
@@ -162,9 +162,8 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
162
162
|
// ── CriSys Ch.3 data dictionary (prog / hd / output families) ─
|
|
163
163
|
item ddPatientIDProg : InterfaceItem {
|
|
164
164
|
attribute :>> itemKind = InterfaceItemKind::data;
|
|
165
|
-
@MemoIdentity { :>> providedId = "DD-005"; }
|
|
166
|
-
|
|
167
|
-
attribute :>> description = "Identifier of the patient in the hospital; provided in the prescription and programmed by the clinician.";
|
|
165
|
+
@MemoIdentity { :>> providedId = "DD-005"; :>> label = "PatientID_prog"; }
|
|
166
|
+
doc /* Identifier of the patient in the hospital; provided in the prescription and programmed by the clinician. */
|
|
168
167
|
attribute :>> semantics = "Cannot be empty; alphanumeric without space.";
|
|
169
168
|
attribute :>> unit = "NA";
|
|
170
169
|
attribute :>> encoding = "String";
|
|
@@ -172,9 +171,8 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
172
171
|
}
|
|
173
172
|
item ddDrugNameProg : InterfaceItem {
|
|
174
173
|
attribute :>> itemKind = InterfaceItemKind::data;
|
|
175
|
-
@MemoIdentity { :>> providedId = "DD-006"; }
|
|
176
|
-
|
|
177
|
-
attribute :>> description = "Name of the drug prescribed for infusion.";
|
|
174
|
+
@MemoIdentity { :>> providedId = "DD-006"; :>> label = "DrugName_prog"; }
|
|
175
|
+
doc /* Name of the drug prescribed for infusion. */
|
|
178
176
|
attribute :>> semantics = "Cannot be empty; entered value must match DrugName_hd in the hospital pharmacy database.";
|
|
179
177
|
attribute :>> unit = "NA";
|
|
180
178
|
attribute :>> encoding = "String";
|
|
@@ -182,9 +180,8 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
182
180
|
}
|
|
183
181
|
item ddDrugConcentrationProg : InterfaceItem {
|
|
184
182
|
attribute :>> itemKind = InterfaceItemKind::data;
|
|
185
|
-
@MemoIdentity { :>> providedId = "DD-007"; }
|
|
186
|
-
|
|
187
|
-
attribute :>> description = "Concentration of the drug in the solution prescribed for infusion.";
|
|
183
|
+
@MemoIdentity { :>> providedId = "DD-007"; :>> label = "DrugConcentration_prog"; }
|
|
184
|
+
doc /* Concentration of the drug in the solution prescribed for infusion. */
|
|
188
185
|
attribute :>> semantics = "Must be between DrugConcentration_lo_hd and DrugConcentration_hi_hd for DrugName_prog in the hospital database.";
|
|
189
186
|
attribute :>> unit = "mg/ml";
|
|
190
187
|
attribute :>> minValue = "0";
|
|
@@ -194,9 +191,8 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
194
191
|
}
|
|
195
192
|
item ddVTBITotalProg : InterfaceItem {
|
|
196
193
|
attribute :>> itemKind = InterfaceItemKind::data;
|
|
197
|
-
@MemoIdentity { :>> providedId = "DD-008"; }
|
|
198
|
-
|
|
199
|
-
attribute :>> description = "Maximum total volume of the drug solution that can be infused for the prescription.";
|
|
194
|
+
@MemoIdentity { :>> providedId = "DD-008"; :>> label = "VTBI_total_prog"; }
|
|
195
|
+
doc /* Maximum total volume of the drug solution that can be infused for the prescription. */
|
|
200
196
|
attribute :>> semantics = "Must be between VTBI_lo_hd and VTBI_hi_hd for DrugName_prog in the hospital database.";
|
|
201
197
|
attribute :>> unit = "ml/hr";
|
|
202
198
|
attribute :>> minValue = "0";
|
|
@@ -206,9 +202,8 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
206
202
|
}
|
|
207
203
|
item ddDurationTotalProg : InterfaceItem {
|
|
208
204
|
attribute :>> itemKind = InterfaceItemKind::data;
|
|
209
|
-
@MemoIdentity { :>> providedId = "DD-009"; }
|
|
210
|
-
|
|
211
|
-
attribute :>> description = "Prescribed total duration of drug infusion across all delivery modes (BASAL, SQUARE BOLUS, PATIENT BOLUS).";
|
|
205
|
+
@MemoIdentity { :>> providedId = "DD-009"; :>> label = "Duration_total_prog"; }
|
|
206
|
+
doc /* Prescribed total duration of drug infusion across all delivery modes (BASAL, SQUARE BOLUS, PATIENT BOLUS). */
|
|
212
207
|
attribute :>> semantics = "Cannot be empty; should be >= 0.";
|
|
213
208
|
attribute :>> unit = "minutes";
|
|
214
209
|
attribute :>> minValue = "0";
|
|
@@ -218,9 +213,8 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
218
213
|
}
|
|
219
214
|
item ddFlowRateBasalProg : InterfaceItem {
|
|
220
215
|
attribute :>> itemKind = InterfaceItemKind::data;
|
|
221
|
-
@MemoIdentity { :>> providedId = "DD-010"; }
|
|
222
|
-
|
|
223
|
-
attribute :>> description = "Prescribed rate of flow of drug during BASAL delivery mode; default FlowRate_lo_hd.";
|
|
216
|
+
@MemoIdentity { :>> providedId = "DD-010"; :>> label = "FlowRate_basal_prog"; }
|
|
217
|
+
doc /* Prescribed rate of flow of drug during BASAL delivery mode; default FlowRate_lo_hd. */
|
|
224
218
|
attribute :>> semantics = "Between FlowRate_lo_hd and FlowRate_hi_hd for DrugName_prog; should be < VTBI_total_prog / Duration_total_prog.";
|
|
225
219
|
attribute :>> unit = "ml/hr";
|
|
226
220
|
attribute :>> minValue = "0";
|
|
@@ -230,9 +224,8 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
230
224
|
}
|
|
231
225
|
item ddFlowRateSbolusProg : InterfaceItem {
|
|
232
226
|
attribute :>> itemKind = InterfaceItemKind::data;
|
|
233
|
-
@MemoIdentity { :>> providedId = "DD-011"; }
|
|
234
|
-
|
|
235
|
-
attribute :>> description = "Prescribed flow rate of drug during SQUARE bolus delivery.";
|
|
227
|
+
@MemoIdentity { :>> providedId = "DD-011"; :>> label = "FlowRate_sbolus_prog"; }
|
|
228
|
+
doc /* Prescribed flow rate of drug during SQUARE bolus delivery. */
|
|
236
229
|
attribute :>> semantics = ">= 0; if Duration_sbolus_prog or Interval_sbolus_prog > 0, must be between FlowRate_lo_hd and FlowRate_hi_hd.";
|
|
237
230
|
attribute :>> unit = "ml/hr";
|
|
238
231
|
attribute :>> minValue = "0";
|
|
@@ -242,9 +235,8 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
242
235
|
}
|
|
243
236
|
item ddDurationSbolusProg : InterfaceItem {
|
|
244
237
|
attribute :>> itemKind = InterfaceItemKind::data;
|
|
245
|
-
@MemoIdentity { :>> providedId = "DD-012"; }
|
|
246
|
-
|
|
247
|
-
attribute :>> description = "Maximum duration of a single uninterrupted square bolus delivery.";
|
|
238
|
+
@MemoIdentity { :>> providedId = "DD-012"; :>> label = "Duration_sbolus_prog"; }
|
|
239
|
+
doc /* Maximum duration of a single uninterrupted square bolus delivery. */
|
|
248
240
|
attribute :>> semantics = ">= 0; if FlowRate_sbolus_prog or Interval_sbolus_prog > 0, must be < Interval_sbolus_prog and Duration_total_prog.";
|
|
249
241
|
attribute :>> unit = "minutes";
|
|
250
242
|
attribute :>> minValue = "0";
|
|
@@ -254,9 +246,8 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
254
246
|
}
|
|
255
247
|
item ddIntervalSbolusProg : InterfaceItem {
|
|
256
248
|
attribute :>> itemKind = InterfaceItemKind::data;
|
|
257
|
-
@MemoIdentity { :>> providedId = "DD-013"; }
|
|
258
|
-
|
|
259
|
-
attribute :>> description = "Minimum interval between two consecutive square bolus initiations; the first square bolus starts Interval_sbolus_prog minutes after infusion initiation.";
|
|
249
|
+
@MemoIdentity { :>> providedId = "DD-013"; :>> label = "Interval_sbolus_prog"; }
|
|
250
|
+
doc /* Minimum interval between two consecutive square bolus initiations; the first square bolus starts Interval_sbolus_prog minutes after infusion initiation. */
|
|
260
251
|
attribute :>> semantics = ">= 0; if FlowRate_sbolus_prog or Duration_sbolus_prog > 0, must be > Duration_sbolus_prog.";
|
|
261
252
|
attribute :>> unit = "minutes";
|
|
262
253
|
attribute :>> minValue = "0";
|
|
@@ -266,9 +257,8 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
266
257
|
}
|
|
267
258
|
item ddFlowRatePbolusProg : InterfaceItem {
|
|
268
259
|
attribute :>> itemKind = InterfaceItemKind::data;
|
|
269
|
-
@MemoIdentity { :>> providedId = "DD-014"; }
|
|
270
|
-
|
|
271
|
-
attribute :>> description = "Prescribed flow rate of drug during patient bolus delivery.";
|
|
260
|
+
@MemoIdentity { :>> providedId = "DD-014"; :>> label = "FlowRate_pbolus_prog"; }
|
|
261
|
+
doc /* Prescribed flow rate of drug during patient bolus delivery. */
|
|
272
262
|
attribute :>> semantics = ">= 0; if Duration_pbolus_prog or LockOutPeriod_pbolus_prog > 0, must be between FlowRate_lo_hd and FlowRate_hi_hd.";
|
|
273
263
|
attribute :>> unit = "ml/hr";
|
|
274
264
|
attribute :>> minValue = "0";
|
|
@@ -278,9 +268,8 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
278
268
|
}
|
|
279
269
|
item ddDurationPbolusProg : InterfaceItem {
|
|
280
270
|
attribute :>> itemKind = InterfaceItemKind::data;
|
|
281
|
-
@MemoIdentity { :>> providedId = "DD-015"; }
|
|
282
|
-
|
|
283
|
-
attribute :>> description = "Maximum duration of a single uninterrupted patient bolus delivery.";
|
|
271
|
+
@MemoIdentity { :>> providedId = "DD-015"; :>> label = "Duration_pbolus_prog"; }
|
|
272
|
+
doc /* Maximum duration of a single uninterrupted patient bolus delivery. */
|
|
284
273
|
attribute :>> semantics = ">= 0; if FlowRate_pbolus_prog or LockOutPeriod_pbolus_prog > 0, must be < LockOutPeriod_pbolus_prog and Duration_total_prog.";
|
|
285
274
|
attribute :>> unit = "minutes";
|
|
286
275
|
attribute :>> minValue = "0";
|
|
@@ -290,9 +279,8 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
290
279
|
}
|
|
291
280
|
item ddLockOutPeriodPbolusProg : InterfaceItem {
|
|
292
281
|
attribute :>> itemKind = InterfaceItemKind::data;
|
|
293
|
-
@MemoIdentity { :>> providedId = "DD-016"; }
|
|
294
|
-
|
|
295
|
-
attribute :>> description = "Minimum interval between two consecutive patient bolus initiations (the lockout period), irrespective of interruption or completion.";
|
|
282
|
+
@MemoIdentity { :>> providedId = "DD-016"; :>> label = "LockOutPeriod_pbolus_prog"; }
|
|
283
|
+
doc /* Minimum interval between two consecutive patient bolus initiations (the lockout period), irrespective of interruption or completion. */
|
|
296
284
|
attribute :>> semantics = ">= 0; if FlowRate_pbolus_prog or Duration_pbolus_prog > 0, must be > Duration_pbolus_prog.";
|
|
297
285
|
attribute :>> unit = "minutes";
|
|
298
286
|
attribute :>> minValue = "0";
|
|
@@ -302,9 +290,8 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
302
290
|
}
|
|
303
291
|
item ddNumberMaxPbolusProg : InterfaceItem {
|
|
304
292
|
attribute :>> itemKind = InterfaceItemKind::data;
|
|
305
|
-
@MemoIdentity { :>> providedId = "DD-017"; }
|
|
306
|
-
|
|
307
|
-
attribute :>> description = "Maximum total number of patient boluses that may be initiated during Duration_total_prog.";
|
|
293
|
+
@MemoIdentity { :>> providedId = "DD-017"; :>> label = "NumberMax_pbolus_prog"; }
|
|
294
|
+
doc /* Maximum total number of patient boluses that may be initiated during Duration_total_prog. */
|
|
308
295
|
attribute :>> semantics = ">= 0; must be <= NumberMax_pbolus_hd for DrugName_prog in the hospital database.";
|
|
309
296
|
attribute :>> unit = "per hour";
|
|
310
297
|
attribute :>> minValue = "0";
|
|
@@ -314,9 +301,8 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
314
301
|
}
|
|
315
302
|
item ddSystemStartProg : InterfaceItem {
|
|
316
303
|
attribute :>> itemKind = InterfaceItemKind::data;
|
|
317
|
-
@MemoIdentity { :>> providedId = "DD-018"; }
|
|
318
|
-
|
|
319
|
-
attribute :>> description = "Command to start the system.";
|
|
304
|
+
@MemoIdentity { :>> providedId = "DD-018"; :>> label = "System_start_prog"; }
|
|
305
|
+
doc /* Command to start the system. */
|
|
320
306
|
attribute :>> semantics = "Can be commanded only if the system is in OFF mode.";
|
|
321
307
|
attribute :>> unit = "NA";
|
|
322
308
|
attribute :>> encoding = "Boolean event";
|
|
@@ -324,9 +310,8 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
324
310
|
}
|
|
325
311
|
item ddSystemStopProg : InterfaceItem {
|
|
326
312
|
attribute :>> itemKind = InterfaceItemKind::data;
|
|
327
|
-
@MemoIdentity { :>> providedId = "DD-019"; }
|
|
328
|
-
|
|
329
|
-
attribute :>> description = "Command to stop the system.";
|
|
313
|
+
@MemoIdentity { :>> providedId = "DD-019"; :>> label = "System_stop_prog"; }
|
|
314
|
+
doc /* Command to stop the system. */
|
|
330
315
|
attribute :>> semantics = "Can be commanded only if the system is in ON mode.";
|
|
331
316
|
attribute :>> unit = "NA";
|
|
332
317
|
attribute :>> encoding = "Boolean event";
|
|
@@ -334,9 +319,8 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
334
319
|
}
|
|
335
320
|
item ddInfusionInitiateProg : InterfaceItem {
|
|
336
321
|
attribute :>> itemKind = InterfaceItemKind::data;
|
|
337
|
-
@MemoIdentity { :>> providedId = "DD-020"; }
|
|
338
|
-
|
|
339
|
-
attribute :>> description = "Command to initiate infusion of drug.";
|
|
322
|
+
@MemoIdentity { :>> providedId = "DD-020"; :>> label = "Infusion_initiate_prog"; }
|
|
323
|
+
doc /* Command to initiate infusion of drug. */
|
|
340
324
|
attribute :>> semantics = "Can be commanded only if the system is in ON mode.";
|
|
341
325
|
attribute :>> unit = "NA";
|
|
342
326
|
attribute :>> encoding = "Boolean event";
|
|
@@ -344,9 +328,8 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
344
328
|
}
|
|
345
329
|
item ddInfusionInhibitProg : InterfaceItem {
|
|
346
330
|
attribute :>> itemKind = InterfaceItemKind::data;
|
|
347
|
-
@MemoIdentity { :>> providedId = "DD-021"; }
|
|
348
|
-
|
|
349
|
-
attribute :>> description = "Command to inhibit infusion of drug.";
|
|
331
|
+
@MemoIdentity { :>> providedId = "DD-021"; :>> label = "Infusion_inhibit_prog"; }
|
|
332
|
+
doc /* Command to inhibit infusion of drug. */
|
|
350
333
|
attribute :>> semantics = "Can be commanded only if the system is in ON mode.";
|
|
351
334
|
attribute :>> unit = "NA";
|
|
352
335
|
attribute :>> encoding = "Boolean event";
|
|
@@ -354,9 +337,8 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
354
337
|
}
|
|
355
338
|
item ddSystemSaveProg : InterfaceItem {
|
|
356
339
|
attribute :>> itemKind = InterfaceItemKind::data;
|
|
357
|
-
@MemoIdentity { :>> providedId = "DD-022"; }
|
|
358
|
-
|
|
359
|
-
attribute :>> description = "Command to save the prescription and reservoir initial volume data.";
|
|
340
|
+
@MemoIdentity { :>> providedId = "DD-022"; :>> label = "System_save_prog"; }
|
|
341
|
+
doc /* Command to save the prescription and reservoir initial volume data. */
|
|
360
342
|
attribute :>> semantics = "Can be commanded only if the system is in ON mode.";
|
|
361
343
|
attribute :>> unit = "NA";
|
|
362
344
|
attribute :>> encoding = "Boolean event";
|
|
@@ -364,9 +346,8 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
364
346
|
}
|
|
365
347
|
item ddNotificationCancelProg : InterfaceItem {
|
|
366
348
|
attribute :>> itemKind = InterfaceItemKind::data;
|
|
367
|
-
@MemoIdentity { :>> providedId = "DD-023"; }
|
|
368
|
-
|
|
369
|
-
attribute :>> description = "Command to cancel a selected notification.";
|
|
349
|
+
@MemoIdentity { :>> providedId = "DD-023"; :>> label = "Notification_cancel_prog"; }
|
|
350
|
+
doc /* Command to cancel a selected notification. */
|
|
370
351
|
attribute :>> semantics = "Can be commanded only in ON mode and if a notification is selected.";
|
|
371
352
|
attribute :>> unit = "NA";
|
|
372
353
|
attribute :>> encoding = "Boolean event";
|
|
@@ -374,9 +355,8 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
374
355
|
}
|
|
375
356
|
item ddDisableAudioProg : InterfaceItem {
|
|
376
357
|
attribute :>> itemKind = InterfaceItemKind::data;
|
|
377
|
-
@MemoIdentity { :>> providedId = "DD-024"; }
|
|
378
|
-
|
|
379
|
-
attribute :>> description = "Command to disable audio notifications, permanently or temporarily.";
|
|
358
|
+
@MemoIdentity { :>> providedId = "DD-024"; :>> label = "Disable_audio_prog"; }
|
|
359
|
+
doc /* Command to disable audio notifications, permanently or temporarily. */
|
|
380
360
|
attribute :>> semantics = "Default FALSE.";
|
|
381
361
|
attribute :>> unit = "NA";
|
|
382
362
|
attribute :>> encoding = "PERM | TEMP | FALSE";
|
|
@@ -384,9 +364,8 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
384
364
|
}
|
|
385
365
|
item ddEnableAudioProg : InterfaceItem {
|
|
386
366
|
attribute :>> itemKind = InterfaceItemKind::data;
|
|
387
|
-
@MemoIdentity { :>> providedId = "DD-025"; }
|
|
388
|
-
|
|
389
|
-
attribute :>> description = "Command to enable audio notifications.";
|
|
367
|
+
@MemoIdentity { :>> providedId = "DD-025"; :>> label = "Enable_audio_prog"; }
|
|
368
|
+
doc /* Command to enable audio notifications. */
|
|
390
369
|
attribute :>> semantics = "Can be commanded only if audio is disabled.";
|
|
391
370
|
attribute :>> unit = "NA";
|
|
392
371
|
attribute :>> encoding = "Boolean event";
|
|
@@ -394,9 +373,8 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
394
373
|
}
|
|
395
374
|
item ddDataConfigProg : InterfaceItem {
|
|
396
375
|
attribute :>> itemKind = InterfaceItemKind::data;
|
|
397
|
-
@MemoIdentity { :>> providedId = "DD-026"; }
|
|
398
|
-
|
|
399
|
-
attribute :>> description = "Command to configure prescription data (printed as 'DataCofig_prog' in the source).";
|
|
376
|
+
@MemoIdentity { :>> providedId = "DD-026"; :>> label = "DataConfig_prog"; }
|
|
377
|
+
doc /* Command to configure prescription data (printed as 'DataCofig_prog' in the source). */
|
|
400
378
|
attribute :>> semantics = "Can be commanded only if the system is in ON mode.";
|
|
401
379
|
attribute :>> unit = "NA";
|
|
402
380
|
attribute :>> encoding = "Boolean event";
|
|
@@ -404,9 +382,8 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
404
382
|
}
|
|
405
383
|
item ddReservoirInitialVolumeProg : InterfaceItem {
|
|
406
384
|
attribute :>> itemKind = InterfaceItemKind::data;
|
|
407
|
-
@MemoIdentity { :>> providedId = "DD-027"; }
|
|
408
|
-
|
|
409
|
-
attribute :>> description = "Initial volume of drug in the reservoir at the time of entering the prescription; read from the reservoir label.";
|
|
385
|
+
@MemoIdentity { :>> providedId = "DD-027"; :>> label = "ReservoirInitialVolume_prog"; }
|
|
386
|
+
doc /* Initial volume of drug in the reservoir at the time of entering the prescription; read from the reservoir label. */
|
|
410
387
|
attribute :>> semantics = "Mandatory; shall be >= X ml (threshold left unspecified in the source draft).";
|
|
411
388
|
attribute :>> unit = "ml";
|
|
412
389
|
attribute :>> minValue = "0";
|
|
@@ -416,9 +393,8 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
416
393
|
}
|
|
417
394
|
item ddBolusRequestProg : InterfaceItem {
|
|
418
395
|
attribute :>> itemKind = InterfaceItemKind::data;
|
|
419
|
-
@MemoIdentity { :>> providedId = "DD-028"; }
|
|
420
|
-
|
|
421
|
-
attribute :>> description = "Request by the patient to deliver a patient bolus.";
|
|
396
|
+
@MemoIdentity { :>> providedId = "DD-028"; :>> label = "BolusRequest_prog"; }
|
|
397
|
+
doc /* Request by the patient to deliver a patient bolus. */
|
|
422
398
|
attribute :>> semantics = "Can be commanded only if the system is in ACTIVE mode.";
|
|
423
399
|
attribute :>> unit = "NA";
|
|
424
400
|
attribute :>> encoding = "Boolean event";
|
|
@@ -426,9 +402,8 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
426
402
|
}
|
|
427
403
|
item ddFlowRateOutput : InterfaceItem {
|
|
428
404
|
attribute :>> itemKind = InterfaceItemKind::data;
|
|
429
|
-
@MemoIdentity { :>> providedId = "DD-029"; }
|
|
430
|
-
|
|
431
|
-
attribute :>> description = "Flow rate of the drug through the hose delivering the drug, measured every X seconds when the system is in ON mode.";
|
|
405
|
+
@MemoIdentity { :>> providedId = "DD-029"; :>> label = "FlowRate_output"; }
|
|
406
|
+
doc /* Flow rate of the drug through the hose delivering the drug, measured every X seconds when the system is in ON mode. */
|
|
432
407
|
attribute :>> semantics = "None stated.";
|
|
433
408
|
attribute :>> unit = "ml/hr";
|
|
434
409
|
attribute :>> minValue = "0";
|
|
@@ -438,9 +413,8 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
438
413
|
}
|
|
439
414
|
item ddNotificationVisualOutput : InterfaceItem {
|
|
440
415
|
attribute :>> itemKind = InterfaceItemKind::data;
|
|
441
|
-
@MemoIdentity { :>> providedId = "DD-030"; }
|
|
442
|
-
|
|
443
|
-
attribute :>> description = "Visual display of the messages of all active notifications in the system.";
|
|
416
|
+
@MemoIdentity { :>> providedId = "DD-030"; :>> label = "Notification_Visual_output"; }
|
|
417
|
+
doc /* Visual display of the messages of all active notifications in the system. */
|
|
444
418
|
attribute :>> semantics = "Messages displayed only when the system is in ON mode.";
|
|
445
419
|
attribute :>> unit = "NA";
|
|
446
420
|
attribute :>> encoding = "List of String";
|
|
@@ -448,9 +422,8 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
448
422
|
}
|
|
449
423
|
item ddNotificationAudioOutput : InterfaceItem {
|
|
450
424
|
attribute :>> itemKind = InterfaceItemKind::data;
|
|
451
|
-
@MemoIdentity { :>> providedId = "DD-031"; }
|
|
452
|
-
|
|
453
|
-
attribute :>> description = "Audio output for each active notification, in the same order as Notification_Visual_output.";
|
|
425
|
+
@MemoIdentity { :>> providedId = "DD-031"; :>> label = "Notification_Audio_output"; }
|
|
426
|
+
doc /* Audio output for each active notification, in the same order as Notification_Visual_output. */
|
|
454
427
|
attribute :>> semantics = "Audio output possible only when the system is in ON mode.";
|
|
455
428
|
attribute :>> unit = "NA";
|
|
456
429
|
attribute :>> encoding = "List of Boolean";
|
|
@@ -458,9 +431,8 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
458
431
|
}
|
|
459
432
|
item ddDrugNameHd : InterfaceItem {
|
|
460
433
|
attribute :>> itemKind = InterfaceItemKind::data;
|
|
461
|
-
@MemoIdentity { :>> providedId = "DD-032"; }
|
|
462
|
-
|
|
463
|
-
attribute :>> description = "Name of a drug usable for infusion in the hospital that matches DrugName_prog.";
|
|
434
|
+
@MemoIdentity { :>> providedId = "DD-032"; :>> label = "DrugName_hd"; }
|
|
435
|
+
doc /* Name of a drug usable for infusion in the hospital that matches DrugName_prog. */
|
|
464
436
|
attribute :>> semantics = "None stated.";
|
|
465
437
|
attribute :>> unit = "NA";
|
|
466
438
|
attribute :>> encoding = "String";
|
|
@@ -468,9 +440,8 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
468
440
|
}
|
|
469
441
|
item ddDrugConcentrationHiHd : InterfaceItem {
|
|
470
442
|
attribute :>> itemKind = InterfaceItemKind::data;
|
|
471
|
-
@MemoIdentity { :>> providedId = "DD-033"; }
|
|
472
|
-
|
|
473
|
-
attribute :>> description = "Maximum concentration of the drug in a solution that can safely be used for infusion for DrugName_hd.";
|
|
443
|
+
@MemoIdentity { :>> providedId = "DD-033"; :>> label = "DrugConcentration_hi_hd"; }
|
|
444
|
+
doc /* Maximum concentration of the drug in a solution that can safely be used for infusion for DrugName_hd. */
|
|
474
445
|
attribute :>> semantics = "None stated.";
|
|
475
446
|
attribute :>> unit = "mg/ml";
|
|
476
447
|
attribute :>> minValue = "0";
|
|
@@ -480,9 +451,8 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
480
451
|
}
|
|
481
452
|
item ddDrugConcentrationLoHd : InterfaceItem {
|
|
482
453
|
attribute :>> itemKind = InterfaceItemKind::data;
|
|
483
|
-
@MemoIdentity { :>> providedId = "DD-034"; }
|
|
484
|
-
|
|
485
|
-
attribute :>> description = "Minimum concentration of the drug in a solution that can safely be used for infusion for DrugName_hd.";
|
|
454
|
+
@MemoIdentity { :>> providedId = "DD-034"; :>> label = "DrugConcentration_lo_hd"; }
|
|
455
|
+
doc /* Minimum concentration of the drug in a solution that can safely be used for infusion for DrugName_hd. */
|
|
486
456
|
attribute :>> semantics = "None stated.";
|
|
487
457
|
attribute :>> unit = "mg/ml";
|
|
488
458
|
attribute :>> minValue = "0";
|
|
@@ -492,9 +462,8 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
492
462
|
}
|
|
493
463
|
item ddVTBIHiHd : InterfaceItem {
|
|
494
464
|
attribute :>> itemKind = InterfaceItemKind::data;
|
|
495
|
-
@MemoIdentity { :>> providedId = "DD-035"; }
|
|
496
|
-
|
|
497
|
-
attribute :>> description = "Maximum volume of drug that is safe to be infused for DrugName_hd.";
|
|
465
|
+
@MemoIdentity { :>> providedId = "DD-035"; :>> label = "VTBI_hi_hd"; }
|
|
466
|
+
doc /* Maximum volume of drug that is safe to be infused for DrugName_hd. */
|
|
498
467
|
attribute :>> semantics = "None stated.";
|
|
499
468
|
attribute :>> unit = "ml/hr";
|
|
500
469
|
attribute :>> minValue = "0";
|
|
@@ -504,9 +473,8 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
504
473
|
}
|
|
505
474
|
item ddVTBILoHd : InterfaceItem {
|
|
506
475
|
attribute :>> itemKind = InterfaceItemKind::data;
|
|
507
|
-
@MemoIdentity { :>> providedId = "DD-036"; }
|
|
508
|
-
|
|
509
|
-
attribute :>> description = "Minimum volume of drug that is safe to be infused for DrugName_hd.";
|
|
476
|
+
@MemoIdentity { :>> providedId = "DD-036"; :>> label = "VTBI_lo_hd"; }
|
|
477
|
+
doc /* Minimum volume of drug that is safe to be infused for DrugName_hd. */
|
|
510
478
|
attribute :>> semantics = "Mandatory.";
|
|
511
479
|
attribute :>> unit = "ml/hr";
|
|
512
480
|
attribute :>> minValue = "0";
|
|
@@ -516,9 +484,8 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
516
484
|
}
|
|
517
485
|
item ddFlowRateHiHd : InterfaceItem {
|
|
518
486
|
attribute :>> itemKind = InterfaceItemKind::data;
|
|
519
|
-
@MemoIdentity { :>> providedId = "DD-037"; }
|
|
520
|
-
|
|
521
|
-
attribute :>> description = "Maximum safe flow rate of the drug for DrugName_hd.";
|
|
487
|
+
@MemoIdentity { :>> providedId = "DD-037"; :>> label = "FlowRate_hi_hd"; }
|
|
488
|
+
doc /* Maximum safe flow rate of the drug for DrugName_hd. */
|
|
522
489
|
attribute :>> semantics = "Mandatory.";
|
|
523
490
|
attribute :>> unit = "ml/hr";
|
|
524
491
|
attribute :>> minValue = "0";
|
|
@@ -528,9 +495,8 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
528
495
|
}
|
|
529
496
|
item ddFlowRateLoHd : InterfaceItem {
|
|
530
497
|
attribute :>> itemKind = InterfaceItemKind::data;
|
|
531
|
-
@MemoIdentity { :>> providedId = "DD-038"; }
|
|
532
|
-
|
|
533
|
-
attribute :>> description = "Minimum safe flow rate of the drug for DrugName_hd.";
|
|
498
|
+
@MemoIdentity { :>> providedId = "DD-038"; :>> label = "FlowRate_lo_hd"; }
|
|
499
|
+
doc /* Minimum safe flow rate of the drug for DrugName_hd. */
|
|
534
500
|
attribute :>> semantics = "Mandatory.";
|
|
535
501
|
attribute :>> unit = "ml/hr";
|
|
536
502
|
attribute :>> minValue = "0";
|
|
@@ -540,9 +506,8 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
540
506
|
}
|
|
541
507
|
item ddIntervalPbolusHd : InterfaceItem {
|
|
542
508
|
attribute :>> itemKind = InterfaceItemKind::data;
|
|
543
|
-
@MemoIdentity { :>> providedId = "DD-039"; }
|
|
544
|
-
|
|
545
|
-
attribute :>> description = "Minimum safe interval between two consecutive patient bolus initiations for DrugName_hd.";
|
|
509
|
+
@MemoIdentity { :>> providedId = "DD-039"; :>> label = "Interval_pbolus_hd"; }
|
|
510
|
+
doc /* Minimum safe interval between two consecutive patient bolus initiations for DrugName_hd. */
|
|
546
511
|
attribute :>> semantics = "Mandatory.";
|
|
547
512
|
attribute :>> unit = "minutes";
|
|
548
513
|
attribute :>> minValue = "0";
|
|
@@ -552,9 +517,8 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
552
517
|
}
|
|
553
518
|
item ddNumberMaxPbolusHd : InterfaceItem {
|
|
554
519
|
attribute :>> itemKind = InterfaceItemKind::data;
|
|
555
|
-
@MemoIdentity { :>> providedId = "DD-040"; }
|
|
556
|
-
|
|
557
|
-
attribute :>> description = "Maximum number of patient bolus initiations safe to be self-administered for DrugName_hd.";
|
|
520
|
+
@MemoIdentity { :>> providedId = "DD-040"; :>> label = "NumberMax_pbolus_hd"; }
|
|
521
|
+
doc /* Maximum number of patient bolus initiations safe to be self-administered for DrugName_hd. */
|
|
558
522
|
attribute :>> semantics = "Mandatory.";
|
|
559
523
|
attribute :>> unit = "per hr";
|
|
560
524
|
attribute :>> minValue = "0";
|
|
@@ -564,9 +528,8 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
564
528
|
}
|
|
565
529
|
item ddFlowRateKvoHd : InterfaceItem {
|
|
566
530
|
attribute :>> itemKind = InterfaceItemKind::data;
|
|
567
|
-
@MemoIdentity { :>> providedId = "DD-041"; }
|
|
568
|
-
|
|
569
|
-
attribute :>> description = "Minimum flow rate of DrugName_hd that should be maintained to keep the vein open (KVO); default 0.1.";
|
|
531
|
+
@MemoIdentity { :>> providedId = "DD-041"; :>> label = "FlowRate_kvo_hd"; }
|
|
532
|
+
doc /* Minimum flow rate of DrugName_hd that should be maintained to keep the vein open (KVO); default 0.1. */
|
|
570
533
|
attribute :>> semantics = "Mandatory.";
|
|
571
534
|
attribute :>> unit = "ml/hr";
|
|
572
535
|
attribute :>> minValue = "0";
|
|
@@ -579,46 +542,43 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
579
542
|
// These four exchanges summarize requirements-derived physical design
|
|
580
543
|
// intent. They are not the named port connections in GPCA_Device.aadl;
|
|
581
544
|
// the exact AADL feature topology is authored below and in gpca_trace.
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
545
|
+
//
|
|
546
|
+
// Which functional exchange each one realizes is NOT written here. It is
|
|
547
|
+
// the `allocate lf... to ex...` line in gpca_trace, which is the one
|
|
548
|
+
// authority for the mapping.
|
|
549
|
+
//
|
|
550
|
+
// Their component ends are ports: SENSOR_OUT on the sensor subsystem,
|
|
551
|
+
// which the AADL declares, and one boundary port each on the keypad,
|
|
552
|
+
// pump motor and buzzer, which the AADL does not model and this design
|
|
553
|
+
// extension declares for the exchange that needs it.
|
|
554
|
+
interface exSensorVector : ComponentExchange
|
|
555
|
+
connect gpcaDevice.gpcaDeviceSensors.snsSensorOut to gpcaSoftware.portSensorIn {
|
|
556
|
+
@MemoIdentity { :>> providedId = "CE-001"; :>> label = "SensorStatusVectorExchange"; }
|
|
585
557
|
attribute :>> exchangeKind = FlowKind::measurement;
|
|
586
|
-
ref :>> sourceEndpoint = gpcaDevice.gpcaDeviceSensors;
|
|
587
|
-
ref :>> targetEndpoint = gpcaDevice.gpcaSoftware.portSensorIn;
|
|
588
|
-
ref :>> allocatedExchanges = lfSensorAcquisition;
|
|
589
558
|
attribute :>> direction = DirectionKind::input;
|
|
590
559
|
attribute :>> timingSemantics = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
591
560
|
@MemoIdentity { :>> sourceReference = "MEMO design extension allocated from LF-001; not a GPCA_Device.aadl connection"; }
|
|
592
561
|
}
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
562
|
+
interface exFlowCommand : ComponentExchange
|
|
563
|
+
connect gpcaSoftware.portGpcaSwOut to pumpMotorAssembly.portFlowCommandIn {
|
|
564
|
+
@MemoIdentity { :>> providedId = "CE-002"; :>> label = "FlowCommandExchange"; }
|
|
596
565
|
attribute :>> exchangeKind = FlowKind::command;
|
|
597
|
-
ref :>> sourceEndpoint = gpcaDevice.gpcaSoftware.portGpcaSwOut;
|
|
598
|
-
ref :>> targetEndpoint = pumpMotorAssembly;
|
|
599
|
-
ref :>> allocatedExchanges = lfFlowCommand;
|
|
600
566
|
attribute :>> direction = DirectionKind::output;
|
|
601
567
|
attribute :>> timingSemantics = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
602
568
|
@MemoIdentity { :>> sourceReference = "MEMO design extension allocated from LF-002; not a GPCA_Device.aadl connection"; }
|
|
603
569
|
}
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
570
|
+
interface exAlarmAnnunciation : ComponentExchange
|
|
571
|
+
connect gpcaSoftware.portGpcaSwOut to audibleAlarm.portAlarmIn {
|
|
572
|
+
@MemoIdentity { :>> providedId = "CE-003"; :>> label = "AlarmAnnunciationExchange"; }
|
|
607
573
|
attribute :>> exchangeKind = FlowKind::alarm;
|
|
608
|
-
ref :>> sourceEndpoint = gpcaDevice.gpcaSoftware.portGpcaSwOut;
|
|
609
|
-
ref :>> targetEndpoint = audibleAlarm;
|
|
610
|
-
ref :>> allocatedExchanges = lfAlarmSignal;
|
|
611
574
|
attribute :>> direction = DirectionKind::output;
|
|
612
575
|
attribute :>> timingSemantics = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
613
576
|
@MemoIdentity { :>> sourceReference = "MEMO design extension allocated from LF-003; not a GPCA_Device.aadl connection"; }
|
|
614
577
|
}
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
578
|
+
interface exPrescriptionEntry : ComponentExchange
|
|
579
|
+
connect operatorKeypad.portPrescriptionOut to gpcaSoftware.portPresIn {
|
|
580
|
+
@MemoIdentity { :>> providedId = "CE-004"; :>> label = "PrescriptionEntryExchange"; }
|
|
618
581
|
attribute :>> exchangeKind = FlowKind::configuration;
|
|
619
|
-
ref :>> sourceEndpoint = operatorKeypad;
|
|
620
|
-
ref :>> targetEndpoint = gpcaDevice.gpcaSoftware.portPresIn;
|
|
621
|
-
ref :>> allocatedExchanges = lfPrescriptionEntry;
|
|
622
582
|
attribute :>> direction = DirectionKind::input;
|
|
623
583
|
attribute :>> timingSemantics = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
624
584
|
@MemoIdentity { :>> sourceReference = "MEMO design extension allocated from LF-004; not a GPCA_Device.aadl connection"; }
|
|
@@ -646,366 +606,311 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
646
606
|
// OUTPUT
|
|
647
607
|
// SYS_MON
|
|
648
608
|
// SYS_STAT
|
|
649
|
-
// ── GPCA_SW.Impl
|
|
650
|
-
//
|
|
651
|
-
//
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
attribute
|
|
658
|
-
attribute
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
attribute
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
@MemoIdentity { :>> providedId = "CE-103";
|
|
609
|
+
// ── GPCA_SW.Impl connections (AADL, 1:1) ────────────────────
|
|
610
|
+
// A connection between two subcomponents is an interface. One from a
|
|
611
|
+
// GPCA_SW boundary port into a subcomponent is a `binding`: immediate,
|
|
612
|
+
// with nothing between the two ports, so they are one feature seen from
|
|
613
|
+
// both sides (see memo_interfaces.sysml). ALARM_to_IM immediate is the
|
|
614
|
+
// same-step alarm-response mechanism the formal properties rely on.
|
|
615
|
+
binding ceOpCmdToTlm bind gpcaSoftware.portOpCmdIn = gpcaSoftware.tlm.portTlmOpCmdIn {
|
|
616
|
+
@MemoIdentity { :>> providedId = "CE-101"; :>> label = "OP_CMDtoTLM"; }
|
|
617
|
+
attribute exchangeKind : FlowKind = FlowKind::command;
|
|
618
|
+
attribute direction : DirectionKind = DirectionKind::input;
|
|
619
|
+
attribute timingSemantics : String = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
620
|
+
@MemoIdentity { :>> sourceReference = "CITE-002: CriSys GPCA AADL v2.0, packages/GPCA_SW.aadl (GPCA_SW.Impl)"; }
|
|
621
|
+
}
|
|
622
|
+
binding ceConstToTlm bind gpcaSoftware.portConstIn = gpcaSoftware.tlm.portTlmConstIn {
|
|
623
|
+
@MemoIdentity { :>> providedId = "CE-102"; :>> label = "CONSTtoTLM"; }
|
|
624
|
+
attribute exchangeKind : FlowKind = FlowKind::configuration;
|
|
625
|
+
attribute direction : DirectionKind = DirectionKind::input;
|
|
626
|
+
attribute timingSemantics : String = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
627
|
+
@MemoIdentity { :>> sourceReference = "CITE-002: CriSys GPCA AADL v2.0, packages/GPCA_SW.aadl (GPCA_SW.Impl)"; }
|
|
628
|
+
}
|
|
629
|
+
interface ceTlmOutToOutput : ComponentExchange
|
|
630
|
+
connect gpcaSoftware.tlm.portTlmTlmModeOut to gpcaSoftware.outputBus.portOutputTlmModeIn {
|
|
631
|
+
@MemoIdentity { :>> providedId = "CE-103"; :>> label = "TLM_OUT_toOUTPUT"; }
|
|
672
632
|
attribute :>> exchangeKind = FlowKind::status;
|
|
673
|
-
ref :>> sourceEndpoint = gpcaDevice.gpcaSoftware.tlm.portTlmTlmModeOut;
|
|
674
|
-
ref :>> targetEndpoint = gpcaDevice.gpcaSoftware.outputBus.portOutputTlmModeIn;
|
|
675
633
|
attribute :>> timingSemantics = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
676
634
|
@MemoIdentity { :>> sourceReference = "CITE-002: CriSys GPCA AADL v2.0, packages/GPCA_SW.aadl (GPCA_SW.Impl)"; }
|
|
677
635
|
}
|
|
678
|
-
|
|
679
|
-
|
|
636
|
+
interface ceImToSysStat : ComponentExchange
|
|
637
|
+
connect gpcaSoftware.infusionMgr.portImImOut to gpcaSoftware.systemStatus.portSysStatImIn {
|
|
638
|
+
@MemoIdentity { :>> providedId = "CE-104"; :>> label = "IM_to_SYS_STAT"; }
|
|
680
639
|
attribute :>> exchangeKind = FlowKind::status;
|
|
681
|
-
ref :>> sourceEndpoint = gpcaDevice.gpcaSoftware.infusionMgr.portImImOut;
|
|
682
|
-
ref :>> targetEndpoint = gpcaDevice.gpcaSoftware.systemStatus.portSysStatImIn;
|
|
683
640
|
attribute :>> timingSemantics = "sampled (no timing property in source; AADL default breaks the feedback cycle)";
|
|
684
641
|
@MemoIdentity { :>> sourceReference = "CITE-002: CriSys GPCA AADL v2.0, packages/GPCA_SW.aadl (GPCA_SW.Impl)"; }
|
|
685
642
|
}
|
|
686
|
-
|
|
687
|
-
|
|
643
|
+
interface ceTlmToSysStat : ComponentExchange
|
|
644
|
+
connect gpcaSoftware.tlm.portTlmTlmModeOut to gpcaSoftware.systemStatus.portSysStatTlmModeIn {
|
|
645
|
+
@MemoIdentity { :>> providedId = "CE-105"; :>> label = "TLM_to_SYS_STAT"; }
|
|
688
646
|
attribute :>> exchangeKind = FlowKind::status;
|
|
689
|
-
ref :>> sourceEndpoint = gpcaDevice.gpcaSoftware.tlm.portTlmTlmModeOut;
|
|
690
|
-
ref :>> targetEndpoint = gpcaDevice.gpcaSoftware.systemStatus.portSysStatTlmModeIn;
|
|
691
647
|
attribute :>> timingSemantics = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
692
648
|
@MemoIdentity { :>> sourceReference = "CITE-002: CriSys GPCA AADL v2.0, packages/GPCA_SW.aadl (GPCA_SW.Impl)"; }
|
|
693
649
|
}
|
|
694
|
-
|
|
695
|
-
@MemoIdentity { :>> providedId = "CE-106";
|
|
696
|
-
attribute
|
|
697
|
-
|
|
698
|
-
|
|
699
|
-
attribute :>> direction = DirectionKind::input;
|
|
700
|
-
attribute :>> timingSemantics = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
650
|
+
binding ceSensorToSysStat bind gpcaSoftware.portSensorIn = gpcaSoftware.systemStatus.portSysStatSensorIn {
|
|
651
|
+
@MemoIdentity { :>> providedId = "CE-106"; :>> label = "SENSOR_to_SYS_STAT"; }
|
|
652
|
+
attribute exchangeKind : FlowKind = FlowKind::measurement;
|
|
653
|
+
attribute direction : DirectionKind = DirectionKind::input;
|
|
654
|
+
attribute timingSemantics : String = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
701
655
|
@MemoIdentity { :>> sourceReference = "CITE-002: CriSys GPCA AADL v2.0, packages/GPCA_SW.aadl (GPCA_SW.Impl)"; }
|
|
702
656
|
}
|
|
703
|
-
|
|
704
|
-
@MemoIdentity { :>> providedId = "CE-107";
|
|
705
|
-
attribute
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
attribute :>> direction = DirectionKind::input;
|
|
709
|
-
attribute :>> timingSemantics = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
657
|
+
binding ceConstToSysStat bind gpcaSoftware.portConstIn = gpcaSoftware.systemStatus.portSysStatConstIn {
|
|
658
|
+
@MemoIdentity { :>> providedId = "CE-107"; :>> label = "CONST_to_SYS_STAT"; }
|
|
659
|
+
attribute exchangeKind : FlowKind = FlowKind::configuration;
|
|
660
|
+
attribute direction : DirectionKind = DirectionKind::input;
|
|
661
|
+
attribute timingSemantics : String = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
710
662
|
@MemoIdentity { :>> sourceReference = "CITE-002: CriSys GPCA AADL v2.0, packages/GPCA_SW.aadl (GPCA_SW.Impl)"; }
|
|
711
663
|
}
|
|
712
|
-
|
|
713
|
-
|
|
664
|
+
interface ceConfigToSysStat : ComponentExchange
|
|
665
|
+
connect gpcaSoftware.config.portConfigConfigOut to gpcaSoftware.systemStatus.portSysStatConfigIn {
|
|
666
|
+
@MemoIdentity { :>> providedId = "CE-108"; :>> label = "CONFIG_to_SYS_STAT"; }
|
|
714
667
|
attribute :>> exchangeKind = FlowKind::configuration;
|
|
715
|
-
ref :>> sourceEndpoint = gpcaDevice.gpcaSoftware.config.portConfigConfigOut;
|
|
716
|
-
ref :>> targetEndpoint = gpcaDevice.gpcaSoftware.systemStatus.portSysStatConfigIn;
|
|
717
668
|
attribute :>> timingSemantics = "sampled (no timing property in source; AADL default breaks the feedback cycle)";
|
|
718
669
|
@MemoIdentity { :>> sourceReference = "CITE-002: CriSys GPCA AADL v2.0, packages/GPCA_SW.aadl (GPCA_SW.Impl)"; }
|
|
719
670
|
}
|
|
720
|
-
|
|
721
|
-
|
|
671
|
+
interface ceSysStatOutToOutput : ComponentExchange
|
|
672
|
+
connect gpcaSoftware.systemStatus.portSysStatSysStatOut to gpcaSoftware.outputBus.portOutputSysStatIn {
|
|
673
|
+
@MemoIdentity { :>> providedId = "CE-109"; :>> label = "SYS_STAT_OUT_toOUTPUT"; }
|
|
722
674
|
attribute :>> exchangeKind = FlowKind::status;
|
|
723
|
-
ref :>> sourceEndpoint = gpcaDevice.gpcaSoftware.systemStatus.portSysStatSysStatOut;
|
|
724
|
-
ref :>> targetEndpoint = gpcaDevice.gpcaSoftware.outputBus.portOutputSysStatIn;
|
|
725
675
|
attribute :>> timingSemantics = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
726
676
|
@MemoIdentity { :>> sourceReference = "CITE-002: CriSys GPCA AADL v2.0, packages/GPCA_SW.aadl (GPCA_SW.Impl)"; }
|
|
727
677
|
}
|
|
728
|
-
|
|
729
|
-
|
|
678
|
+
interface ceImToAlarm : ComponentExchange
|
|
679
|
+
connect gpcaSoftware.infusionMgr.portImImOut to gpcaSoftware.alarm.portAlarmImIn {
|
|
680
|
+
@MemoIdentity { :>> providedId = "CE-110"; :>> label = "IM_to_ALARM"; }
|
|
730
681
|
attribute :>> exchangeKind = FlowKind::status;
|
|
731
|
-
ref :>> sourceEndpoint = gpcaDevice.gpcaSoftware.infusionMgr.portImImOut;
|
|
732
|
-
ref :>> targetEndpoint = gpcaDevice.gpcaSoftware.alarm.portAlarmImIn;
|
|
733
682
|
attribute :>> timingSemantics = "sampled (no timing property in source; AADL default breaks the feedback cycle)";
|
|
734
683
|
@MemoIdentity { :>> sourceReference = "CITE-002: CriSys GPCA AADL v2.0, packages/GPCA_SW.aadl (GPCA_SW.Impl)"; }
|
|
735
684
|
}
|
|
736
|
-
|
|
737
|
-
|
|
685
|
+
interface ceTlmToAlarm : ComponentExchange
|
|
686
|
+
connect gpcaSoftware.tlm.portTlmTlmModeOut to gpcaSoftware.alarm.portAlarmTlmModeIn {
|
|
687
|
+
@MemoIdentity { :>> providedId = "CE-111"; :>> label = "TLM_to_ALARM"; }
|
|
738
688
|
attribute :>> exchangeKind = FlowKind::status;
|
|
739
|
-
ref :>> sourceEndpoint = gpcaDevice.gpcaSoftware.tlm.portTlmTlmModeOut;
|
|
740
|
-
ref :>> targetEndpoint = gpcaDevice.gpcaSoftware.alarm.portAlarmTlmModeIn;
|
|
741
689
|
attribute :>> timingSemantics = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
742
690
|
@MemoIdentity { :>> sourceReference = "CITE-002: CriSys GPCA AADL v2.0, packages/GPCA_SW.aadl (GPCA_SW.Impl)"; }
|
|
743
691
|
}
|
|
744
|
-
|
|
745
|
-
|
|
692
|
+
interface ceSysMonToAlarm : ComponentExchange
|
|
693
|
+
connect gpcaSoftware.systemMonitor.portSysMonSysMonOut to gpcaSoftware.alarm.portAlarmSysMonIn {
|
|
694
|
+
@MemoIdentity { :>> providedId = "CE-112"; :>> label = "SYS_MON_to_ALARM"; }
|
|
746
695
|
attribute :>> exchangeKind = FlowKind::status;
|
|
747
|
-
ref :>> sourceEndpoint = gpcaDevice.gpcaSoftware.systemMonitor.portSysMonSysMonOut;
|
|
748
|
-
ref :>> targetEndpoint = gpcaDevice.gpcaSoftware.alarm.portAlarmSysMonIn;
|
|
749
696
|
attribute :>> timingSemantics = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
750
697
|
@MemoIdentity { :>> sourceReference = "CITE-002: CriSys GPCA AADL v2.0, packages/GPCA_SW.aadl (GPCA_SW.Impl)"; }
|
|
751
698
|
}
|
|
752
|
-
|
|
753
|
-
@MemoIdentity { :>> providedId = "CE-113";
|
|
754
|
-
attribute
|
|
755
|
-
|
|
756
|
-
|
|
757
|
-
attribute :>> direction = DirectionKind::input;
|
|
758
|
-
attribute :>> timingSemantics = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
699
|
+
binding ceOpCmdToAlarm bind gpcaSoftware.portOpCmdIn = gpcaSoftware.alarm.portAlarmOpCmdIn {
|
|
700
|
+
@MemoIdentity { :>> providedId = "CE-113"; :>> label = "OP_CMD_to_ALARM"; }
|
|
701
|
+
attribute exchangeKind : FlowKind = FlowKind::command;
|
|
702
|
+
attribute direction : DirectionKind = DirectionKind::input;
|
|
703
|
+
attribute timingSemantics : String = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
759
704
|
@MemoIdentity { :>> sourceReference = "CITE-002: CriSys GPCA AADL v2.0, packages/GPCA_SW.aadl (GPCA_SW.Impl)"; }
|
|
760
705
|
}
|
|
761
|
-
|
|
762
|
-
@MemoIdentity { :>> providedId = "CE-114";
|
|
763
|
-
attribute
|
|
764
|
-
|
|
765
|
-
|
|
766
|
-
attribute :>> direction = DirectionKind::input;
|
|
767
|
-
attribute :>> timingSemantics = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
706
|
+
binding ceDbToAlarm bind gpcaSoftware.portDbIn = gpcaSoftware.alarm.portAlarmDbIn {
|
|
707
|
+
@MemoIdentity { :>> providedId = "CE-114"; :>> label = "DB_to_ALARM"; }
|
|
708
|
+
attribute exchangeKind : FlowKind = FlowKind::configuration;
|
|
709
|
+
attribute direction : DirectionKind = DirectionKind::input;
|
|
710
|
+
attribute timingSemantics : String = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
768
711
|
@MemoIdentity { :>> sourceReference = "CITE-002: CriSys GPCA AADL v2.0, packages/GPCA_SW.aadl (GPCA_SW.Impl)"; }
|
|
769
712
|
}
|
|
770
|
-
|
|
771
|
-
@MemoIdentity { :>> providedId = "CE-115";
|
|
772
|
-
attribute
|
|
773
|
-
|
|
774
|
-
|
|
775
|
-
attribute :>> direction = DirectionKind::input;
|
|
776
|
-
attribute :>> timingSemantics = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
713
|
+
binding ceSensorToAlarm bind gpcaSoftware.portSensorIn = gpcaSoftware.alarm.portAlarmSensorIn {
|
|
714
|
+
@MemoIdentity { :>> providedId = "CE-115"; :>> label = "SENSOR_to_ALARM"; }
|
|
715
|
+
attribute exchangeKind : FlowKind = FlowKind::measurement;
|
|
716
|
+
attribute direction : DirectionKind = DirectionKind::input;
|
|
717
|
+
attribute timingSemantics : String = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
777
718
|
@MemoIdentity { :>> sourceReference = "CITE-002: CriSys GPCA AADL v2.0, packages/GPCA_SW.aadl (GPCA_SW.Impl)"; }
|
|
778
719
|
}
|
|
779
|
-
|
|
780
|
-
@MemoIdentity { :>> providedId = "CE-116";
|
|
781
|
-
attribute
|
|
782
|
-
|
|
783
|
-
|
|
784
|
-
attribute :>> direction = DirectionKind::input;
|
|
785
|
-
attribute :>> timingSemantics = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
720
|
+
binding ceConstToAlarm bind gpcaSoftware.portConstIn = gpcaSoftware.alarm.portAlarmConstIn {
|
|
721
|
+
@MemoIdentity { :>> providedId = "CE-116"; :>> label = "CONST_to_ALARM"; }
|
|
722
|
+
attribute exchangeKind : FlowKind = FlowKind::configuration;
|
|
723
|
+
attribute direction : DirectionKind = DirectionKind::input;
|
|
724
|
+
attribute timingSemantics : String = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
786
725
|
@MemoIdentity { :>> sourceReference = "CITE-002: CriSys GPCA AADL v2.0, packages/GPCA_SW.aadl (GPCA_SW.Impl)"; }
|
|
787
726
|
}
|
|
788
|
-
|
|
789
|
-
|
|
727
|
+
interface ceSysStatToAlarm : ComponentExchange
|
|
728
|
+
connect gpcaSoftware.systemStatus.portSysStatSysStatOut to gpcaSoftware.alarm.portAlarmSysStatIn {
|
|
729
|
+
@MemoIdentity { :>> providedId = "CE-117"; :>> label = "SYS_STAT_to_ALARM"; }
|
|
790
730
|
attribute :>> exchangeKind = FlowKind::status;
|
|
791
|
-
ref :>> sourceEndpoint = gpcaDevice.gpcaSoftware.systemStatus.portSysStatSysStatOut;
|
|
792
|
-
ref :>> targetEndpoint = gpcaDevice.gpcaSoftware.alarm.portAlarmSysStatIn;
|
|
793
731
|
attribute :>> timingSemantics = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
794
732
|
@MemoIdentity { :>> sourceReference = "CITE-002: CriSys GPCA AADL v2.0, packages/GPCA_SW.aadl (GPCA_SW.Impl)"; }
|
|
795
733
|
}
|
|
796
|
-
|
|
797
|
-
|
|
734
|
+
interface ceConfigToAlarm : ComponentExchange
|
|
735
|
+
connect gpcaSoftware.config.portConfigConfigOut to gpcaSoftware.alarm.portAlarmConfigIn {
|
|
736
|
+
@MemoIdentity { :>> providedId = "CE-118"; :>> label = "CONFIG_to_ALARM"; }
|
|
798
737
|
attribute :>> exchangeKind = FlowKind::configuration;
|
|
799
|
-
ref :>> sourceEndpoint = gpcaDevice.gpcaSoftware.config.portConfigConfigOut;
|
|
800
|
-
ref :>> targetEndpoint = gpcaDevice.gpcaSoftware.alarm.portAlarmConfigIn;
|
|
801
738
|
attribute :>> timingSemantics = "sampled (no timing property in source; AADL default breaks the feedback cycle)";
|
|
802
739
|
@MemoIdentity { :>> sourceReference = "CITE-002: CriSys GPCA AADL v2.0, packages/GPCA_SW.aadl (GPCA_SW.Impl)"; }
|
|
803
740
|
}
|
|
804
|
-
|
|
805
|
-
|
|
741
|
+
interface ceAlarmOutToOutput : ComponentExchange
|
|
742
|
+
connect gpcaSoftware.alarm.portAlarmAlarmOut to gpcaSoftware.outputBus.portOutputAlarmIn {
|
|
743
|
+
@MemoIdentity { :>> providedId = "CE-119"; :>> label = "ALARM_OUT_toOUTPUT"; }
|
|
806
744
|
attribute :>> exchangeKind = FlowKind::alarm;
|
|
807
|
-
ref :>> sourceEndpoint = gpcaDevice.gpcaSoftware.alarm.portAlarmAlarmOut;
|
|
808
|
-
ref :>> targetEndpoint = gpcaDevice.gpcaSoftware.outputBus.portOutputAlarmIn;
|
|
809
745
|
attribute :>> timingSemantics = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
810
746
|
@MemoIdentity { :>> sourceReference = "CITE-002: CriSys GPCA AADL v2.0, packages/GPCA_SW.aadl (GPCA_SW.Impl)"; }
|
|
811
747
|
}
|
|
812
|
-
|
|
813
|
-
|
|
748
|
+
interface ceTlmToConfig : ComponentExchange
|
|
749
|
+
connect gpcaSoftware.tlm.portTlmTlmModeOut to gpcaSoftware.config.portConfigTlmModeIn {
|
|
750
|
+
@MemoIdentity { :>> providedId = "CE-120"; :>> label = "TLM_to_CONFIG"; }
|
|
814
751
|
attribute :>> exchangeKind = FlowKind::status;
|
|
815
|
-
ref :>> sourceEndpoint = gpcaDevice.gpcaSoftware.tlm.portTlmTlmModeOut;
|
|
816
|
-
ref :>> targetEndpoint = gpcaDevice.gpcaSoftware.config.portConfigTlmModeIn;
|
|
817
752
|
attribute :>> timingSemantics = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
818
753
|
@MemoIdentity { :>> sourceReference = "CITE-002: CriSys GPCA AADL v2.0, packages/GPCA_SW.aadl (GPCA_SW.Impl)"; }
|
|
819
754
|
}
|
|
820
|
-
|
|
821
|
-
@MemoIdentity { :>> providedId = "CE-121";
|
|
822
|
-
attribute
|
|
823
|
-
|
|
824
|
-
|
|
825
|
-
attribute :>> direction = DirectionKind::input;
|
|
826
|
-
attribute :>> timingSemantics = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
755
|
+
binding cePresToConfig bind gpcaSoftware.portPresIn = gpcaSoftware.config.portConfigPresIn {
|
|
756
|
+
@MemoIdentity { :>> providedId = "CE-121"; :>> label = "PRES_to_CONFIG"; }
|
|
757
|
+
attribute exchangeKind : FlowKind = FlowKind::configuration;
|
|
758
|
+
attribute direction : DirectionKind = DirectionKind::input;
|
|
759
|
+
attribute timingSemantics : String = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
827
760
|
@MemoIdentity { :>> sourceReference = "CITE-002: CriSys GPCA AADL v2.0, packages/GPCA_SW.aadl (GPCA_SW.Impl)"; }
|
|
828
761
|
}
|
|
829
|
-
|
|
830
|
-
@MemoIdentity { :>> providedId = "CE-122";
|
|
831
|
-
attribute
|
|
832
|
-
|
|
833
|
-
|
|
834
|
-
attribute :>> direction = DirectionKind::input;
|
|
835
|
-
attribute :>> timingSemantics = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
762
|
+
binding ceOpCmdToConfig bind gpcaSoftware.portOpCmdIn = gpcaSoftware.config.portConfigOpCmdIn {
|
|
763
|
+
@MemoIdentity { :>> providedId = "CE-122"; :>> label = "OP_CMD_to_CONFIG"; }
|
|
764
|
+
attribute exchangeKind : FlowKind = FlowKind::command;
|
|
765
|
+
attribute direction : DirectionKind = DirectionKind::input;
|
|
766
|
+
attribute timingSemantics : String = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
836
767
|
@MemoIdentity { :>> sourceReference = "CITE-002: CriSys GPCA AADL v2.0, packages/GPCA_SW.aadl (GPCA_SW.Impl)"; }
|
|
837
768
|
}
|
|
838
|
-
|
|
839
|
-
@MemoIdentity { :>> providedId = "CE-123";
|
|
840
|
-
attribute
|
|
841
|
-
|
|
842
|
-
|
|
843
|
-
attribute :>> direction = DirectionKind::input;
|
|
844
|
-
attribute :>> timingSemantics = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
769
|
+
binding ceDbToConfig bind gpcaSoftware.portDbIn = gpcaSoftware.config.portConfigDbIn {
|
|
770
|
+
@MemoIdentity { :>> providedId = "CE-123"; :>> label = "DB_to_CONFIG"; }
|
|
771
|
+
attribute exchangeKind : FlowKind = FlowKind::configuration;
|
|
772
|
+
attribute direction : DirectionKind = DirectionKind::input;
|
|
773
|
+
attribute timingSemantics : String = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
845
774
|
@MemoIdentity { :>> sourceReference = "CITE-002: CriSys GPCA AADL v2.0, packages/GPCA_SW.aadl (GPCA_SW.Impl)"; }
|
|
846
775
|
}
|
|
847
|
-
|
|
848
|
-
@MemoIdentity { :>> providedId = "CE-124";
|
|
849
|
-
attribute
|
|
850
|
-
|
|
851
|
-
|
|
852
|
-
attribute :>> direction = DirectionKind::input;
|
|
853
|
-
attribute :>> timingSemantics = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
776
|
+
binding ceConsToConfig bind gpcaSoftware.portConstIn = gpcaSoftware.config.portConfigConstIn {
|
|
777
|
+
@MemoIdentity { :>> providedId = "CE-124"; :>> label = "CONS_to_CONFIG"; }
|
|
778
|
+
attribute exchangeKind : FlowKind = FlowKind::configuration;
|
|
779
|
+
attribute direction : DirectionKind = DirectionKind::input;
|
|
780
|
+
attribute timingSemantics : String = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
854
781
|
@MemoIdentity { :>> sourceReference = "CITE-002: CriSys GPCA AADL v2.0, packages/GPCA_SW.aadl (GPCA_SW.Impl)"; }
|
|
855
782
|
}
|
|
856
|
-
|
|
857
|
-
|
|
783
|
+
interface ceSysStatToConfig : ComponentExchange
|
|
784
|
+
connect gpcaSoftware.systemStatus.portSysStatSysStatOut to gpcaSoftware.config.portConfigSysStatIn {
|
|
785
|
+
@MemoIdentity { :>> providedId = "CE-125"; :>> label = "SYS_STAT_to_CONFIG"; }
|
|
858
786
|
attribute :>> exchangeKind = FlowKind::status;
|
|
859
|
-
ref :>> sourceEndpoint = gpcaDevice.gpcaSoftware.systemStatus.portSysStatSysStatOut;
|
|
860
|
-
ref :>> targetEndpoint = gpcaDevice.gpcaSoftware.config.portConfigSysStatIn;
|
|
861
787
|
attribute :>> timingSemantics = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
862
788
|
@MemoIdentity { :>> sourceReference = "CITE-002: CriSys GPCA AADL v2.0, packages/GPCA_SW.aadl (GPCA_SW.Impl)"; }
|
|
863
789
|
}
|
|
864
|
-
|
|
865
|
-
|
|
790
|
+
interface ceConfigToOutput : ComponentExchange
|
|
791
|
+
connect gpcaSoftware.config.portConfigConfigOut to gpcaSoftware.outputBus.portOutputConfigIn {
|
|
792
|
+
@MemoIdentity { :>> providedId = "CE-126"; :>> label = "CONFIG_toOUTPUT"; }
|
|
866
793
|
attribute :>> exchangeKind = FlowKind::configuration;
|
|
867
|
-
ref :>> sourceEndpoint = gpcaDevice.gpcaSoftware.config.portConfigConfigOut;
|
|
868
|
-
ref :>> targetEndpoint = gpcaDevice.gpcaSoftware.outputBus.portOutputConfigIn;
|
|
869
794
|
attribute :>> timingSemantics = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
870
795
|
@MemoIdentity { :>> sourceReference = "CITE-002: CriSys GPCA AADL v2.0, packages/GPCA_SW.aadl (GPCA_SW.Impl)"; }
|
|
871
796
|
}
|
|
872
|
-
|
|
873
|
-
|
|
797
|
+
interface ceTlmToIm : ComponentExchange
|
|
798
|
+
connect gpcaSoftware.tlm.portTlmTlmModeOut to gpcaSoftware.infusionMgr.portImTlmModeIn {
|
|
799
|
+
@MemoIdentity { :>> providedId = "CE-127"; :>> label = "TLM_to_IM"; }
|
|
874
800
|
attribute :>> exchangeKind = FlowKind::status;
|
|
875
|
-
ref :>> sourceEndpoint = gpcaDevice.gpcaSoftware.tlm.portTlmTlmModeOut;
|
|
876
|
-
ref :>> targetEndpoint = gpcaDevice.gpcaSoftware.infusionMgr.portImTlmModeIn;
|
|
877
801
|
attribute :>> timingSemantics = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
878
802
|
@MemoIdentity { :>> sourceReference = "CITE-002: CriSys GPCA AADL v2.0, packages/GPCA_SW.aadl (GPCA_SW.Impl)"; }
|
|
879
803
|
}
|
|
880
|
-
|
|
881
|
-
@MemoIdentity { :>> providedId = "CE-128";
|
|
882
|
-
attribute
|
|
883
|
-
|
|
884
|
-
|
|
885
|
-
attribute :>> direction = DirectionKind::input;
|
|
886
|
-
attribute :>> timingSemantics = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
804
|
+
binding ceOpCmdToIm bind gpcaSoftware.portOpCmdIn = gpcaSoftware.infusionMgr.portImOpCmdIn {
|
|
805
|
+
@MemoIdentity { :>> providedId = "CE-128"; :>> label = "OP_CMD_to_IM"; }
|
|
806
|
+
attribute exchangeKind : FlowKind = FlowKind::command;
|
|
807
|
+
attribute direction : DirectionKind = DirectionKind::input;
|
|
808
|
+
attribute timingSemantics : String = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
887
809
|
@MemoIdentity { :>> sourceReference = "CITE-002: CriSys GPCA AADL v2.0, packages/GPCA_SW.aadl (GPCA_SW.Impl)"; }
|
|
888
810
|
}
|
|
889
|
-
|
|
890
|
-
@MemoIdentity { :>> providedId = "CE-129";
|
|
891
|
-
attribute
|
|
892
|
-
|
|
893
|
-
|
|
894
|
-
attribute :>> direction = DirectionKind::input;
|
|
895
|
-
attribute :>> timingSemantics = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
811
|
+
binding cePatientToIm bind gpcaSoftware.portPatientIn = gpcaSoftware.infusionMgr.portImPatientIn {
|
|
812
|
+
@MemoIdentity { :>> providedId = "CE-129"; :>> label = "PATIENT_to_IM"; }
|
|
813
|
+
attribute exchangeKind : FlowKind = FlowKind::command;
|
|
814
|
+
attribute direction : DirectionKind = DirectionKind::input;
|
|
815
|
+
attribute timingSemantics : String = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
896
816
|
@MemoIdentity { :>> sourceReference = "CITE-002: CriSys GPCA AADL v2.0, packages/GPCA_SW.aadl (GPCA_SW.Impl)"; }
|
|
897
817
|
}
|
|
898
|
-
|
|
899
|
-
|
|
818
|
+
interface ceConfigToIm : ComponentExchange
|
|
819
|
+
connect gpcaSoftware.config.portConfigConfigOut to gpcaSoftware.infusionMgr.portImConfigIn {
|
|
820
|
+
@MemoIdentity { :>> providedId = "CE-130"; :>> label = "CONFIG_to_IM"; }
|
|
900
821
|
attribute :>> exchangeKind = FlowKind::configuration;
|
|
901
|
-
ref :>> sourceEndpoint = gpcaDevice.gpcaSoftware.config.portConfigConfigOut;
|
|
902
|
-
ref :>> targetEndpoint = gpcaDevice.gpcaSoftware.infusionMgr.portImConfigIn;
|
|
903
822
|
attribute :>> timingSemantics = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
904
823
|
@MemoIdentity { :>> sourceReference = "CITE-002: CriSys GPCA AADL v2.0, packages/GPCA_SW.aadl (GPCA_SW.Impl)"; }
|
|
905
824
|
}
|
|
906
|
-
|
|
907
|
-
|
|
825
|
+
interface ceAlarmToIm : ComponentExchange
|
|
826
|
+
connect gpcaSoftware.alarm.portAlarmAlarmOut to gpcaSoftware.infusionMgr.portImAlarmIn {
|
|
827
|
+
@MemoIdentity { :>> providedId = "CE-131"; :>> label = "ALARM_to_IM"; }
|
|
908
828
|
attribute :>> exchangeKind = FlowKind::alarm;
|
|
909
|
-
ref :>> sourceEndpoint = gpcaDevice.gpcaSoftware.alarm.portAlarmAlarmOut;
|
|
910
|
-
ref :>> targetEndpoint = gpcaDevice.gpcaSoftware.infusionMgr.portImAlarmIn;
|
|
911
829
|
attribute :>> timingSemantics = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
912
830
|
@MemoIdentity { :>> sourceReference = "CITE-002: CriSys GPCA AADL v2.0, packages/GPCA_SW.aadl (GPCA_SW.Impl)"; }
|
|
913
831
|
}
|
|
914
|
-
|
|
915
|
-
|
|
832
|
+
interface ceSysStatToIm : ComponentExchange
|
|
833
|
+
connect gpcaSoftware.systemStatus.portSysStatSysStatOut to gpcaSoftware.infusionMgr.portImSysStatIn {
|
|
834
|
+
@MemoIdentity { :>> providedId = "CE-132"; :>> label = "SYS_STAT_to_IM"; }
|
|
916
835
|
attribute :>> exchangeKind = FlowKind::status;
|
|
917
|
-
ref :>> sourceEndpoint = gpcaDevice.gpcaSoftware.systemStatus.portSysStatSysStatOut;
|
|
918
|
-
ref :>> targetEndpoint = gpcaDevice.gpcaSoftware.infusionMgr.portImSysStatIn;
|
|
919
836
|
attribute :>> timingSemantics = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
920
837
|
@MemoIdentity { :>> sourceReference = "CITE-002: CriSys GPCA AADL v2.0, packages/GPCA_SW.aadl (GPCA_SW.Impl)"; }
|
|
921
838
|
}
|
|
922
|
-
|
|
923
|
-
|
|
839
|
+
interface ceImToOutput : ComponentExchange
|
|
840
|
+
connect gpcaSoftware.infusionMgr.portImImOut to gpcaSoftware.outputBus.portOutputImIn {
|
|
841
|
+
@MemoIdentity { :>> providedId = "CE-133"; :>> label = "IM_toOUTPUT"; }
|
|
924
842
|
attribute :>> exchangeKind = FlowKind::status;
|
|
925
|
-
ref :>> sourceEndpoint = gpcaDevice.gpcaSoftware.infusionMgr.portImImOut;
|
|
926
|
-
ref :>> targetEndpoint = gpcaDevice.gpcaSoftware.outputBus.portOutputImIn;
|
|
927
843
|
attribute :>> timingSemantics = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
928
844
|
@MemoIdentity { :>> sourceReference = "CITE-002: CriSys GPCA AADL v2.0, packages/GPCA_SW.aadl (GPCA_SW.Impl)"; }
|
|
929
845
|
}
|
|
930
|
-
|
|
931
|
-
|
|
846
|
+
interface ceTlmToSysMon : ComponentExchange
|
|
847
|
+
connect gpcaSoftware.tlm.portTlmTlmModeOut to gpcaSoftware.systemMonitor.portSysMonTlmModeIn {
|
|
848
|
+
@MemoIdentity { :>> providedId = "CE-134"; :>> label = "TLM_to_SYS_MON"; }
|
|
932
849
|
attribute :>> exchangeKind = FlowKind::status;
|
|
933
|
-
ref :>> sourceEndpoint = gpcaDevice.gpcaSoftware.tlm.portTlmTlmModeOut;
|
|
934
|
-
ref :>> targetEndpoint = gpcaDevice.gpcaSoftware.systemMonitor.portSysMonTlmModeIn;
|
|
935
850
|
attribute :>> timingSemantics = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
936
851
|
@MemoIdentity { :>> sourceReference = "CITE-002: CriSys GPCA AADL v2.0, packages/GPCA_SW.aadl (GPCA_SW.Impl)"; }
|
|
937
852
|
}
|
|
938
|
-
|
|
939
|
-
|
|
853
|
+
interface ceSysMonToOutput : ComponentExchange
|
|
854
|
+
connect gpcaSoftware.systemMonitor.portSysMonSysMonOut to gpcaSoftware.outputBus.portOutputSysMonIn {
|
|
855
|
+
@MemoIdentity { :>> providedId = "CE-135"; :>> label = "SYS_MON_toOUTPUT"; }
|
|
940
856
|
attribute :>> exchangeKind = FlowKind::status;
|
|
941
|
-
ref :>> sourceEndpoint = gpcaDevice.gpcaSoftware.systemMonitor.portSysMonSysMonOut;
|
|
942
|
-
ref :>> targetEndpoint = gpcaDevice.gpcaSoftware.outputBus.portOutputSysMonIn;
|
|
943
857
|
attribute :>> timingSemantics = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
944
858
|
@MemoIdentity { :>> sourceReference = "CITE-002: CriSys GPCA AADL v2.0, packages/GPCA_SW.aadl (GPCA_SW.Impl)"; }
|
|
945
859
|
}
|
|
946
|
-
|
|
947
|
-
|
|
860
|
+
interface ceTlmToLog : ComponentExchange
|
|
861
|
+
connect gpcaSoftware.tlm.portTlmTlmModeOut to gpcaSoftware.logging.portLogTlmModeIn {
|
|
862
|
+
@MemoIdentity { :>> providedId = "CE-136"; :>> label = "TLM_to_LOG"; }
|
|
948
863
|
attribute :>> exchangeKind = FlowKind::status;
|
|
949
|
-
ref :>> sourceEndpoint = gpcaDevice.gpcaSoftware.tlm.portTlmTlmModeOut;
|
|
950
|
-
ref :>> targetEndpoint = gpcaDevice.gpcaSoftware.logging.portLogTlmModeIn;
|
|
951
864
|
attribute :>> timingSemantics = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
952
865
|
@MemoIdentity { :>> sourceReference = "CITE-002: CriSys GPCA AADL v2.0, packages/GPCA_SW.aadl (GPCA_SW.Impl)"; }
|
|
953
866
|
}
|
|
954
|
-
|
|
955
|
-
|
|
867
|
+
interface ceConfigToLog : ComponentExchange
|
|
868
|
+
connect gpcaSoftware.config.portConfigConfigOut to gpcaSoftware.logging.portLogConfigIn {
|
|
869
|
+
@MemoIdentity { :>> providedId = "CE-137"; :>> label = "CONFIG_to_LOG"; }
|
|
956
870
|
attribute :>> exchangeKind = FlowKind::configuration;
|
|
957
|
-
ref :>> sourceEndpoint = gpcaDevice.gpcaSoftware.config.portConfigConfigOut;
|
|
958
|
-
ref :>> targetEndpoint = gpcaDevice.gpcaSoftware.logging.portLogConfigIn;
|
|
959
871
|
attribute :>> timingSemantics = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
960
872
|
@MemoIdentity { :>> sourceReference = "CITE-002: CriSys GPCA AADL v2.0, packages/GPCA_SW.aadl (GPCA_SW.Impl)"; }
|
|
961
873
|
}
|
|
962
|
-
|
|
963
|
-
|
|
874
|
+
interface ceAlarmToLog : ComponentExchange
|
|
875
|
+
connect gpcaSoftware.alarm.portAlarmAlarmOut to gpcaSoftware.logging.portLogAlarmIn {
|
|
876
|
+
@MemoIdentity { :>> providedId = "CE-138"; :>> label = "ALARM_to_LOG"; }
|
|
964
877
|
attribute :>> exchangeKind = FlowKind::alarm;
|
|
965
|
-
ref :>> sourceEndpoint = gpcaDevice.gpcaSoftware.alarm.portAlarmAlarmOut;
|
|
966
|
-
ref :>> targetEndpoint = gpcaDevice.gpcaSoftware.logging.portLogAlarmIn;
|
|
967
878
|
attribute :>> timingSemantics = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
968
879
|
@MemoIdentity { :>> sourceReference = "CITE-002: CriSys GPCA AADL v2.0, packages/GPCA_SW.aadl (GPCA_SW.Impl)"; }
|
|
969
880
|
}
|
|
970
|
-
|
|
971
|
-
|
|
881
|
+
interface ceSysStatToLog : ComponentExchange
|
|
882
|
+
connect gpcaSoftware.systemStatus.portSysStatSysStatOut to gpcaSoftware.logging.portLogSysStatIn {
|
|
883
|
+
@MemoIdentity { :>> providedId = "CE-139"; :>> label = "SYS_STAT_to_LOG"; }
|
|
972
884
|
attribute :>> exchangeKind = FlowKind::status;
|
|
973
|
-
ref :>> sourceEndpoint = gpcaDevice.gpcaSoftware.systemStatus.portSysStatSysStatOut;
|
|
974
|
-
ref :>> targetEndpoint = gpcaDevice.gpcaSoftware.logging.portLogSysStatIn;
|
|
975
885
|
attribute :>> timingSemantics = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
976
886
|
@MemoIdentity { :>> sourceReference = "CITE-002: CriSys GPCA AADL v2.0, packages/GPCA_SW.aadl (GPCA_SW.Impl)"; }
|
|
977
887
|
}
|
|
978
|
-
|
|
979
|
-
|
|
888
|
+
interface ceImToLog : ComponentExchange
|
|
889
|
+
connect gpcaSoftware.infusionMgr.portImImOut to gpcaSoftware.logging.portLogImIn {
|
|
890
|
+
@MemoIdentity { :>> providedId = "CE-140"; :>> label = "IM_to_LOG"; }
|
|
980
891
|
attribute :>> exchangeKind = FlowKind::status;
|
|
981
|
-
ref :>> sourceEndpoint = gpcaDevice.gpcaSoftware.infusionMgr.portImImOut;
|
|
982
|
-
ref :>> targetEndpoint = gpcaDevice.gpcaSoftware.logging.portLogImIn;
|
|
983
892
|
attribute :>> timingSemantics = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
984
893
|
@MemoIdentity { :>> sourceReference = "CITE-002: CriSys GPCA AADL v2.0, packages/GPCA_SW.aadl (GPCA_SW.Impl)"; }
|
|
985
894
|
}
|
|
986
|
-
|
|
987
|
-
|
|
895
|
+
interface ceLogToOutput : ComponentExchange
|
|
896
|
+
connect gpcaSoftware.logging.portLogLogOut to gpcaSoftware.outputBus.portOutputLogIn {
|
|
897
|
+
@MemoIdentity { :>> providedId = "CE-141"; :>> label = "LOG_toOUTPUT"; }
|
|
988
898
|
attribute :>> exchangeKind = FlowKind::audit;
|
|
989
|
-
ref :>> sourceEndpoint = gpcaDevice.gpcaSoftware.logging.portLogLogOut;
|
|
990
|
-
ref :>> targetEndpoint = gpcaDevice.gpcaSoftware.outputBus.portOutputLogIn;
|
|
991
899
|
attribute :>> timingSemantics = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
992
900
|
@MemoIdentity { :>> sourceReference = "CITE-002: CriSys GPCA AADL v2.0, packages/GPCA_SW.aadl (GPCA_SW.Impl)"; }
|
|
993
901
|
}
|
|
994
|
-
|
|
995
|
-
@MemoIdentity { :>> providedId = "CE-142";
|
|
996
|
-
attribute
|
|
997
|
-
|
|
998
|
-
|
|
999
|
-
attribute :>> direction = DirectionKind::output;
|
|
1000
|
-
attribute :>> timingSemantics = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
902
|
+
binding ceOutputToGpcaOut bind gpcaSoftware.outputBus.portOutputGpcaSwOut = gpcaSoftware.portGpcaSwOut {
|
|
903
|
+
@MemoIdentity { :>> providedId = "CE-142"; :>> label = "OUTPUT_to_GPCA_OUT"; }
|
|
904
|
+
attribute exchangeKind : FlowKind = FlowKind::status;
|
|
905
|
+
attribute direction : DirectionKind = DirectionKind::output;
|
|
906
|
+
attribute timingSemantics : String = "immediate (same-step delivery, Communication_Properties::Timing => immediate)";
|
|
1001
907
|
@MemoIdentity { :>> sourceReference = "CITE-002: CriSys GPCA AADL v2.0, packages/GPCA_SW.aadl (GPCA_SW.Impl)"; }
|
|
1002
908
|
}
|
|
1003
909
|
// ── Text macros (App. A.3 internal state variables) ─────────
|
|
1004
910
|
item ddActualInfusionDurationMacro : InterfaceItem {
|
|
1005
911
|
attribute :>> itemKind = InterfaceItemKind::data;
|
|
1006
|
-
@MemoIdentity { :>> providedId = "DD-042"; }
|
|
1007
|
-
|
|
1008
|
-
attribute :>> description = "Total duration the system has been in ACTIVE mode since infusion was initiated with the current prescription.";
|
|
912
|
+
@MemoIdentity { :>> providedId = "DD-042"; :>> label = "Actual_Infusion_Duration_macro"; }
|
|
913
|
+
doc /* Total duration the system has been in ACTIVE mode since infusion was initiated with the current prescription. */
|
|
1009
914
|
attribute :>> semantics = "Internal variable; reset to 0 every time infusion is initiated with a new prescription (REQ 12/13).";
|
|
1010
915
|
attribute :>> unit = "minutes";
|
|
1011
916
|
attribute :>> encoding = "Time";
|
|
@@ -1013,9 +918,8 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
1013
918
|
}
|
|
1014
919
|
item ddActualVolumeInfusedMacro : InterfaceItem {
|
|
1015
920
|
attribute :>> itemKind = InterfaceItemKind::data;
|
|
1016
|
-
@MemoIdentity { :>> providedId = "DD-043"; }
|
|
1017
|
-
|
|
1018
|
-
attribute :>> description = "Total volume of drug infused during Actual_Infusion_Duration_macro; drives the infusion-complete condition (REQ 28) and over-infusion VTBI (REQ 20).";
|
|
921
|
+
@MemoIdentity { :>> providedId = "DD-043"; :>> label = "Actual_Volume_Infused_macro"; }
|
|
922
|
+
doc /* Total volume of drug infused during Actual_Infusion_Duration_macro; drives the infusion-complete condition (REQ 28) and over-infusion VTBI (REQ 20). */
|
|
1019
923
|
attribute :>> semantics = "Internal variable; default 0; reset to 0 on infusion initiation.";
|
|
1020
924
|
attribute :>> unit = "ml/hr";
|
|
1021
925
|
attribute :>> encoding = "Positive Integer";
|
|
@@ -1023,9 +927,8 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
1023
927
|
}
|
|
1024
928
|
item ddFlowRateModeMacro : InterfaceItem {
|
|
1025
929
|
attribute :>> itemKind = InterfaceItemKind::data;
|
|
1026
|
-
@MemoIdentity { :>> providedId = "DD-044"; }
|
|
1027
|
-
|
|
1028
|
-
attribute :>> description = "Programmed flow rate of the current mode: FlowRate_kvo_hd in PAUSED, FlowRate_basal_prog in BASAL, FlowRate_sbolus_prog in SQUARE BOLUS, FlowRate_pbolus_prog in PATIENT BOLUS (§4.1.5).";
|
|
930
|
+
@MemoIdentity { :>> providedId = "DD-044"; :>> label = "FlowRate_Mode_macro"; }
|
|
931
|
+
doc /* Programmed flow rate of the current mode: FlowRate_kvo_hd in PAUSED, FlowRate_basal_prog in BASAL, FlowRate_sbolus_prog in SQUARE BOLUS, FlowRate_pbolus_prog in PATIENT BOLUS (§4.1.5). */
|
|
1029
932
|
attribute :>> semantics = "Internal variable; set by the system when entering the respective mode.";
|
|
1030
933
|
attribute :>> unit = "ml/hr";
|
|
1031
934
|
attribute :>> encoding = "Positive Integer";
|
|
@@ -1033,9 +936,8 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
1033
936
|
}
|
|
1034
937
|
item ddInhibitedInfusionMacro : InterfaceItem {
|
|
1035
938
|
attribute :>> itemKind = InterfaceItemKind::data;
|
|
1036
|
-
@MemoIdentity { :>> providedId = "DD-045"; }
|
|
1037
|
-
|
|
1038
|
-
attribute :>> description = "TRUE when the notification in effect requires all infusion to be inhibited ('Inhibit Infusion' column of REQ 59); FALSE when that notification is cancelled or the system transitions to OFF.";
|
|
939
|
+
@MemoIdentity { :>> providedId = "DD-045"; :>> label = "Inhibited_Infusion_macro"; }
|
|
940
|
+
doc /* TRUE when the notification in effect requires all infusion to be inhibited ('Inhibit Infusion' column of REQ 59); FALSE when that notification is cancelled or the system transitions to OFF. */
|
|
1039
941
|
attribute :>> semantics = "Internal variable set per the REQ 59 action table; drives REQ 30/37 transitions.";
|
|
1040
942
|
attribute :>> unit = "-";
|
|
1041
943
|
attribute :>> encoding = "Boolean";
|
|
@@ -1043,9 +945,8 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
1043
945
|
}
|
|
1044
946
|
item ddInhibitedBolusMacro : InterfaceItem {
|
|
1045
947
|
attribute :>> itemKind = InterfaceItemKind::data;
|
|
1046
|
-
@MemoIdentity { :>> providedId = "DD-046"; }
|
|
1047
|
-
|
|
1048
|
-
attribute :>> description = "TRUE when the notification in effect requires square boluses to be inhibited ('Inhibit Square Bolus' column of REQ 59); cleared on cancel or OFF.";
|
|
948
|
+
@MemoIdentity { :>> providedId = "DD-046"; :>> label = "Inhibited_Bolus_macro"; }
|
|
949
|
+
doc /* TRUE when the notification in effect requires square boluses to be inhibited ('Inhibit Square Bolus' column of REQ 59); cleared on cancel or OFF. */
|
|
1049
950
|
attribute :>> semantics = "Internal variable set per the REQ 59 action table; drives REQ 31/34/39 guards.";
|
|
1050
951
|
attribute :>> unit = "-";
|
|
1051
952
|
attribute :>> encoding = "Boolean";
|
|
@@ -1053,81 +954,59 @@ package memo_examples_gpca_pump_gpca_interfaces {
|
|
|
1053
954
|
}
|
|
1054
955
|
item ddInhibitedPatientBolusMacro : InterfaceItem {
|
|
1055
956
|
attribute :>> itemKind = InterfaceItemKind::data;
|
|
1056
|
-
@MemoIdentity { :>> providedId = "DD-047"; }
|
|
1057
|
-
|
|
1058
|
-
attribute :>> description = "TRUE when the notification in effect requires PATIENT BOLUS inhibit ('Inhibit Patient Bolus' column of REQ 59); cleared on cancel or OFF.";
|
|
957
|
+
@MemoIdentity { :>> providedId = "DD-047"; :>> label = "Inhibited_PatientBolus_macro"; }
|
|
958
|
+
doc /* TRUE when the notification in effect requires PATIENT BOLUS inhibit ('Inhibit Patient Bolus' column of REQ 59); cleared on cancel or OFF. */
|
|
1059
959
|
attribute :>> semantics = "Internal variable set per the REQ 59 action table; drives REQ 25/35/36/38 guards.";
|
|
1060
960
|
attribute :>> unit = "-";
|
|
1061
961
|
attribute :>> encoding = "Boolean";
|
|
1062
962
|
@MemoIdentity { :>> sourceReference = "CITE-001: CriSys GPCA System Requirements (2013), App. A.3 Text Macros"; }
|
|
1063
963
|
}
|
|
1064
964
|
|
|
1065
|
-
// ──
|
|
1066
|
-
//
|
|
1067
|
-
//
|
|
1068
|
-
//
|
|
1069
|
-
// `
|
|
1070
|
-
//
|
|
1071
|
-
// accept a name at all, which is why this could not land before the
|
|
1072
|
-
// productions did.
|
|
965
|
+
// ── What moves over each exchange ────────────────────────────────
|
|
966
|
+
// Each interface above is the connection between two ports; the flow
|
|
967
|
+
// here is what crosses it, between the same two ports, named for its
|
|
968
|
+
// exchange with a `Flow` suffix (`ceTlmOutToOutput` the interface,
|
|
969
|
+
// `ceTlmOutToOutputFlow` the transfer). CR-ONT-076 asks that every
|
|
970
|
+
// exchange carries one, and compares the ends, not the names.
|
|
1073
971
|
//
|
|
1074
|
-
// The ends are the PORTS, not the components — the port-level topology
|
|
1075
|
-
//
|
|
1076
|
-
//
|
|
1077
|
-
// and so does this.
|
|
972
|
+
// The ends are the PORTS, not the components — the port-level topology
|
|
973
|
+
// AADL declares. gpca_trace.sysml keeps the component-level dependencies;
|
|
974
|
+
// AADL distinguishes the two granularities and so does this.
|
|
1078
975
|
//
|
|
1079
|
-
//
|
|
1080
|
-
//
|
|
1081
|
-
//
|
|
1082
|
-
//
|
|
1083
|
-
//
|
|
1084
|
-
|
|
1085
|
-
|
|
1086
|
-
|
|
1087
|
-
flow of InterfaceItem from
|
|
1088
|
-
flow of InterfaceItem from
|
|
1089
|
-
flow of InterfaceItem from
|
|
1090
|
-
flow of InterfaceItem from
|
|
1091
|
-
|
|
1092
|
-
|
|
1093
|
-
flow of InterfaceItem from
|
|
1094
|
-
flow of InterfaceItem from
|
|
1095
|
-
flow of InterfaceItem from
|
|
1096
|
-
|
|
1097
|
-
|
|
1098
|
-
flow of InterfaceItem from
|
|
1099
|
-
flow of InterfaceItem from
|
|
1100
|
-
flow of InterfaceItem from
|
|
1101
|
-
flow of InterfaceItem from
|
|
1102
|
-
flow of InterfaceItem from
|
|
1103
|
-
|
|
1104
|
-
|
|
1105
|
-
|
|
1106
|
-
|
|
1107
|
-
flow of InterfaceItem from
|
|
1108
|
-
flow of InterfaceItem from
|
|
1109
|
-
flow of InterfaceItem from
|
|
1110
|
-
flow of InterfaceItem from
|
|
1111
|
-
|
|
1112
|
-
|
|
1113
|
-
|
|
1114
|
-
|
|
1115
|
-
flow of InterfaceItem from gpcaDevice.gpcaSoftware.systemStatus.portSysStatSysStatOut to gpcaDevice.gpcaSoftware.config.portConfigSysStatIn;
|
|
1116
|
-
flow of InterfaceItem from gpcaDevice.gpcaSoftware.config.portConfigConfigOut to gpcaDevice.gpcaSoftware.outputBus.portOutputConfigIn;
|
|
1117
|
-
flow of InterfaceItem from gpcaDevice.gpcaSoftware.tlm.portTlmTlmModeOut to gpcaDevice.gpcaSoftware.infusionMgr.portImTlmModeIn;
|
|
1118
|
-
bind gpcaDevice.gpcaSoftware.portOpCmdIn = gpcaDevice.gpcaSoftware.infusionMgr.portImOpCmdIn;
|
|
1119
|
-
bind gpcaDevice.gpcaSoftware.portPatientIn = gpcaDevice.gpcaSoftware.infusionMgr.portImPatientIn;
|
|
1120
|
-
flow of InterfaceItem from gpcaDevice.gpcaSoftware.config.portConfigConfigOut to gpcaDevice.gpcaSoftware.infusionMgr.portImConfigIn;
|
|
1121
|
-
flow of InterfaceItem from gpcaDevice.gpcaSoftware.alarm.portAlarmAlarmOut to gpcaDevice.gpcaSoftware.infusionMgr.portImAlarmIn;
|
|
1122
|
-
flow of InterfaceItem from gpcaDevice.gpcaSoftware.systemStatus.portSysStatSysStatOut to gpcaDevice.gpcaSoftware.infusionMgr.portImSysStatIn;
|
|
1123
|
-
flow of InterfaceItem from gpcaDevice.gpcaSoftware.infusionMgr.portImImOut to gpcaDevice.gpcaSoftware.outputBus.portOutputImIn;
|
|
1124
|
-
flow of InterfaceItem from gpcaDevice.gpcaSoftware.tlm.portTlmTlmModeOut to gpcaDevice.gpcaSoftware.systemMonitor.portSysMonTlmModeIn;
|
|
1125
|
-
flow of InterfaceItem from gpcaDevice.gpcaSoftware.systemMonitor.portSysMonSysMonOut to gpcaDevice.gpcaSoftware.outputBus.portOutputSysMonIn;
|
|
1126
|
-
flow of InterfaceItem from gpcaDevice.gpcaSoftware.tlm.portTlmTlmModeOut to gpcaDevice.gpcaSoftware.logging.portLogTlmModeIn;
|
|
1127
|
-
flow of InterfaceItem from gpcaDevice.gpcaSoftware.config.portConfigConfigOut to gpcaDevice.gpcaSoftware.logging.portLogConfigIn;
|
|
1128
|
-
flow of InterfaceItem from gpcaDevice.gpcaSoftware.alarm.portAlarmAlarmOut to gpcaDevice.gpcaSoftware.logging.portLogAlarmIn;
|
|
1129
|
-
flow of InterfaceItem from gpcaDevice.gpcaSoftware.systemStatus.portSysStatSysStatOut to gpcaDevice.gpcaSoftware.logging.portLogSysStatIn;
|
|
1130
|
-
flow of InterfaceItem from gpcaDevice.gpcaSoftware.infusionMgr.portImImOut to gpcaDevice.gpcaSoftware.logging.portLogImIn;
|
|
1131
|
-
flow of InterfaceItem from gpcaDevice.gpcaSoftware.logging.portLogLogOut to gpcaDevice.gpcaSoftware.outputBus.portOutputLogIn;
|
|
1132
|
-
bind gpcaDevice.gpcaSoftware.outputBus.portOutputGpcaSwOut = gpcaDevice.gpcaSoftware.portGpcaSwOut;
|
|
976
|
+
// The 15 GPCA_SW.Impl connections from a GPCA_SW boundary port into a
|
|
977
|
+
// subcomponent's port are not here. They are `binding`s, declared with
|
|
978
|
+
// the exchanges above: each is `immediate (same-step delivery)` with no
|
|
979
|
+
// delay, queue or budget of its own, so the boundary port IS the inner
|
|
980
|
+
// port seen from outside and nothing travels between them.
|
|
981
|
+
flow exSensorVectorFlow of InterfaceItem from gpcaDevice.gpcaDeviceSensors.snsSensorOut to gpcaSoftware.portSensorIn;
|
|
982
|
+
flow exFlowCommandFlow of InterfaceItem from gpcaSoftware.portGpcaSwOut to pumpMotorAssembly.portFlowCommandIn;
|
|
983
|
+
flow exAlarmAnnunciationFlow of InterfaceItem from gpcaSoftware.portGpcaSwOut to audibleAlarm.portAlarmIn;
|
|
984
|
+
flow exPrescriptionEntryFlow of InterfaceItem from operatorKeypad.portPrescriptionOut to gpcaSoftware.portPresIn;
|
|
985
|
+
flow ceTlmOutToOutputFlow of InterfaceItem from gpcaSoftware.tlm.portTlmTlmModeOut to gpcaSoftware.outputBus.portOutputTlmModeIn;
|
|
986
|
+
flow ceImToSysStatFlow of InterfaceItem from gpcaSoftware.infusionMgr.portImImOut to gpcaSoftware.systemStatus.portSysStatImIn;
|
|
987
|
+
flow ceTlmToSysStatFlow of InterfaceItem from gpcaSoftware.tlm.portTlmTlmModeOut to gpcaSoftware.systemStatus.portSysStatTlmModeIn;
|
|
988
|
+
flow ceConfigToSysStatFlow of InterfaceItem from gpcaSoftware.config.portConfigConfigOut to gpcaSoftware.systemStatus.portSysStatConfigIn;
|
|
989
|
+
flow ceSysStatOutToOutputFlow of InterfaceItem from gpcaSoftware.systemStatus.portSysStatSysStatOut to gpcaSoftware.outputBus.portOutputSysStatIn;
|
|
990
|
+
flow ceImToAlarmFlow of InterfaceItem from gpcaSoftware.infusionMgr.portImImOut to gpcaSoftware.alarm.portAlarmImIn;
|
|
991
|
+
flow ceTlmToAlarmFlow of InterfaceItem from gpcaSoftware.tlm.portTlmTlmModeOut to gpcaSoftware.alarm.portAlarmTlmModeIn;
|
|
992
|
+
flow ceSysMonToAlarmFlow of InterfaceItem from gpcaSoftware.systemMonitor.portSysMonSysMonOut to gpcaSoftware.alarm.portAlarmSysMonIn;
|
|
993
|
+
flow ceSysStatToAlarmFlow of InterfaceItem from gpcaSoftware.systemStatus.portSysStatSysStatOut to gpcaSoftware.alarm.portAlarmSysStatIn;
|
|
994
|
+
flow ceConfigToAlarmFlow of InterfaceItem from gpcaSoftware.config.portConfigConfigOut to gpcaSoftware.alarm.portAlarmConfigIn;
|
|
995
|
+
flow ceAlarmOutToOutputFlow of InterfaceItem from gpcaSoftware.alarm.portAlarmAlarmOut to gpcaSoftware.outputBus.portOutputAlarmIn;
|
|
996
|
+
flow ceTlmToConfigFlow of InterfaceItem from gpcaSoftware.tlm.portTlmTlmModeOut to gpcaSoftware.config.portConfigTlmModeIn;
|
|
997
|
+
flow ceSysStatToConfigFlow of InterfaceItem from gpcaSoftware.systemStatus.portSysStatSysStatOut to gpcaSoftware.config.portConfigSysStatIn;
|
|
998
|
+
flow ceConfigToOutputFlow of InterfaceItem from gpcaSoftware.config.portConfigConfigOut to gpcaSoftware.outputBus.portOutputConfigIn;
|
|
999
|
+
flow ceTlmToImFlow of InterfaceItem from gpcaSoftware.tlm.portTlmTlmModeOut to gpcaSoftware.infusionMgr.portImTlmModeIn;
|
|
1000
|
+
flow ceConfigToImFlow of InterfaceItem from gpcaSoftware.config.portConfigConfigOut to gpcaSoftware.infusionMgr.portImConfigIn;
|
|
1001
|
+
flow ceAlarmToImFlow of InterfaceItem from gpcaSoftware.alarm.portAlarmAlarmOut to gpcaSoftware.infusionMgr.portImAlarmIn;
|
|
1002
|
+
flow ceSysStatToImFlow of InterfaceItem from gpcaSoftware.systemStatus.portSysStatSysStatOut to gpcaSoftware.infusionMgr.portImSysStatIn;
|
|
1003
|
+
flow ceImToOutputFlow of InterfaceItem from gpcaSoftware.infusionMgr.portImImOut to gpcaSoftware.outputBus.portOutputImIn;
|
|
1004
|
+
flow ceTlmToSysMonFlow of InterfaceItem from gpcaSoftware.tlm.portTlmTlmModeOut to gpcaSoftware.systemMonitor.portSysMonTlmModeIn;
|
|
1005
|
+
flow ceSysMonToOutputFlow of InterfaceItem from gpcaSoftware.systemMonitor.portSysMonSysMonOut to gpcaSoftware.outputBus.portOutputSysMonIn;
|
|
1006
|
+
flow ceTlmToLogFlow of InterfaceItem from gpcaSoftware.tlm.portTlmTlmModeOut to gpcaSoftware.logging.portLogTlmModeIn;
|
|
1007
|
+
flow ceConfigToLogFlow of InterfaceItem from gpcaSoftware.config.portConfigConfigOut to gpcaSoftware.logging.portLogConfigIn;
|
|
1008
|
+
flow ceAlarmToLogFlow of InterfaceItem from gpcaSoftware.alarm.portAlarmAlarmOut to gpcaSoftware.logging.portLogAlarmIn;
|
|
1009
|
+
flow ceSysStatToLogFlow of InterfaceItem from gpcaSoftware.systemStatus.portSysStatSysStatOut to gpcaSoftware.logging.portLogSysStatIn;
|
|
1010
|
+
flow ceImToLogFlow of InterfaceItem from gpcaSoftware.infusionMgr.portImImOut to gpcaSoftware.logging.portLogImIn;
|
|
1011
|
+
flow ceLogToOutputFlow of InterfaceItem from gpcaSoftware.logging.portLogLogOut to gpcaSoftware.outputBus.portOutputLogIn;
|
|
1133
1012
|
}
|