armodel 1.6.3__py3-none-any.whl → 1.6.4__py3-none-any.whl

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.
Files changed (126) hide show
  1. armodel/cli/arxml_dump_cli.py +7 -7
  2. armodel/cli/arxml_format_cli.py +0 -1
  3. armodel/cli/connector2xlsx_cli.py +2 -3
  4. armodel/cli/connector_update_cli.py +1 -4
  5. armodel/cli/memory_section_cli.py +2 -2
  6. armodel/cli/swc_list_cli.py +2 -3
  7. armodel/cli/system_signal_cli.py +2 -2
  8. armodel/lib/sw_component.py +2 -2
  9. armodel/lib/system_signal.py +1 -3
  10. armodel/models/M2/AUTOSARTemplates/AutosarTopLevelStructure.py +5 -10
  11. armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswBehavior.py +9 -11
  12. armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswImplementation.py +51 -12
  13. armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswInterfaces.py +3 -3
  14. armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswOverview.py +5 -6
  15. armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/__init__.py +4 -1
  16. armodel/models/M2/AUTOSARTemplates/CommonStructure/Implementation.py +186 -29
  17. armodel/models/M2/AUTOSARTemplates/CommonStructure/ImplementationDataTypes.py +7 -10
  18. armodel/models/M2/AUTOSARTemplates/CommonStructure/InternalBehavior.py +18 -7
  19. armodel/models/M2/AUTOSARTemplates/CommonStructure/ModeDeclaration.py +3 -3
  20. armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/MemorySectionUsage.py +3 -6
  21. armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/__init__.py +3 -5
  22. armodel/models/M2/AUTOSARTemplates/CommonStructure/ServiceNeeds.py +10 -6
  23. armodel/models/M2/AUTOSARTemplates/CommonStructure/SwcBswMapping.py +3 -4
  24. armodel/models/M2/AUTOSARTemplates/CommonStructure/SwcInternalBehavior/ModeDeclarationGroup.py +2 -5
  25. armodel/models/M2/AUTOSARTemplates/CommonStructure/SwcInternalBehavior/__init__.py +0 -1
  26. armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/ExecutionOrderConstraint.py +45 -0
  27. armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/TimingConstraint.py +24 -0
  28. armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/TimingExtensions.py +33 -0
  29. armodel/models/M2/AUTOSARTemplates/CommonStructure/TriggerDeclaration.py +2 -2
  30. armodel/models/M2/AUTOSARTemplates/CommonStructure/__init__.py +4 -6
  31. armodel/models/M2/AUTOSARTemplates/{ecuc_description_template.py → ECUCDescriptionTemplate.py} +6 -11
  32. armodel/models/M2/AUTOSARTemplates/GenericStructure/AbstractStructure.py +3 -6
  33. armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/ARPackage.py +40 -36
  34. armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/EngineeringObject.py +2 -5
  35. armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/Identifiable.py +11 -16
  36. armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/PrimitiveTypes.py +17 -2
  37. armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/__init__.py +0 -1
  38. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Communication.py +1 -1
  39. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Components/InstanceRefs.py +2 -4
  40. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Components/__init__.py +114 -12
  41. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Composition/InstanceRefs.py +2 -5
  42. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Composition/__init__.py +4 -62
  43. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Datatype/DataPrototypes.py +6 -8
  44. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Datatype/Datatypes.py +7 -7
  45. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Datatype/__init__.py +0 -1
  46. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/{port_interface/instance_refs.py → PortInterface/InstanceRefs.py} +2 -2
  47. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/{port_interface → PortInterface}/__init__.py +10 -10
  48. armodel/models/{rpt_scenario.py → M2/AUTOSARTemplates/SWComponentTemplate/RPTScenario.py} +4 -6
  49. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcImplementation.py +29 -6
  50. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/DataElements.py +6 -6
  51. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/IncludedDataTypes.py +2 -2
  52. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/InstanceRefsUsage.py +3 -3
  53. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/ModeDeclarationGroup.py +4 -4
  54. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/PerInstanceMemory.py +3 -3
  55. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/PortAPIOptions.py +86 -0
  56. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/RTEEvents.py +174 -0
  57. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/ServerCall.py +3 -4
  58. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/ServiceMapping.py +37 -3
  59. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/Trigger.py +2 -4
  60. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/__init__.py +166 -10
  61. armodel/models/M2/AUTOSARTemplates/SystemTemplate/{data_mapping.py → DataMapping.py} +2 -3
  62. armodel/models/{fibex/can_communication.py → M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Can/CanCommunication.py} +3 -4
  63. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet/EthernetFrame.py +14 -0
  64. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet/ServiceInstances.py +116 -0
  65. armodel/models/{fibex/lin_communication.py → M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Lin/LinCommunication.py} +4 -5
  66. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Lin/__init__.py +0 -0
  67. armodel/models/{fibex/fibex_4_multiplatform.py → M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Multiplatform.py} +5 -6
  68. armodel/models/{fibex/fibex_core/core_communication.py → M2/AUTOSARTemplates/SystemTemplate/Fibex/FibexCore/CoreCommunication.py} +4 -12
  69. armodel/models/{fibex/fibex_core/core_topology.py → M2/AUTOSARTemplates/SystemTemplate/Fibex/FibexCore/CoreTopology.py} +6 -11
  70. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/FibexCore/__init__.py +0 -0
  71. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/__init__.py +0 -0
  72. armodel/models/M2/AUTOSARTemplates/SystemTemplate/InstanceRefs.py +2 -2
  73. armodel/models/M2/AUTOSARTemplates/SystemTemplate/{network_management.py → NetworkManagement.py} +5 -10
  74. armodel/models/M2/AUTOSARTemplates/SystemTemplate/TransportProtocols.py +6 -0
  75. armodel/models/M2/AUTOSARTemplates/SystemTemplate/__init__.py +3 -6
  76. armodel/models/M2/MSR/AsamHdo/AdminData.py +2 -5
  77. armodel/models/M2/MSR/AsamHdo/BaseTypes.py +3 -3
  78. armodel/models/M2/MSR/AsamHdo/ComputationMethod.py +5 -6
  79. armodel/models/M2/MSR/AsamHdo/Constraints/GlobalConstraints.py +3 -4
  80. armodel/models/M2/MSR/AsamHdo/Constraints/__init__.py +0 -1
  81. armodel/models/M2/MSR/AsamHdo/SpecialData.py +1 -4
  82. armodel/models/M2/MSR/AsamHdo/Units.py +3 -6
  83. armodel/models/M2/MSR/AsamHdo/__init__.py +0 -1
  84. armodel/models/M2/MSR/CalibrationData/CalibrationValue.py +3 -7
  85. armodel/models/M2/MSR/CalibrationData/__init__.py +0 -1
  86. armodel/models/M2/MSR/DataDictionary/AuxillaryObjects.py +3 -6
  87. armodel/models/M2/MSR/DataDictionary/Axis.py +3 -3
  88. armodel/models/M2/MSR/DataDictionary/CalibrationParameter.py +3 -3
  89. armodel/models/M2/MSR/DataDictionary/DataDefProperties.py +5 -6
  90. armodel/models/M2/MSR/DataDictionary/RecordLayout.py +4 -4
  91. armodel/models/M2/MSR/DataDictionary/__init__.py +0 -1
  92. armodel/models/M2/MSR/Documentation/Annotation.py +4 -6
  93. armodel/models/M2/MSR/Documentation/BlockElements.py +2 -2
  94. armodel/models/M2/MSR/Documentation/TextModel/LanguageDataModel.py +1 -2
  95. armodel/models/M2/MSR/Documentation/TextModel/MultilanguageData.py +3 -6
  96. armodel/models/M2/MSR/Documentation/TextModel/__init__.py +0 -2
  97. armodel/models/M2/MSR/Documentation/__init__.py +1 -1
  98. armodel/models/M2/MSR/__init__.py +1 -1
  99. armodel/models/M2/__init__.py +0 -1
  100. armodel/models/__init__.py +46 -3
  101. armodel/parser/arxml_parser.py +58 -54
  102. armodel/parser/file_parser.py +2 -1
  103. armodel/report/connector_xls_report.py +2 -1
  104. armodel/tests/test_armodel/models/test_ar_object.py +0 -2
  105. armodel/tests/test_armodel/models/test_ar_package.py +4 -4
  106. armodel/tests/test_armodel/models/test_data_prototype.py +1 -1
  107. armodel/tests/test_armodel/models/test_datatype.py +7 -7
  108. armodel/tests/test_armodel/models/test_port_interface.py +6 -6
  109. armodel/tests/test_armodel/parser/test_parse_bswmd.py +12 -12
  110. armodel/tests/test_armodel/parser/test_sw_components.py +1 -1
  111. armodel/tests/test_armodel/parser/test_system.py +1 -1
  112. armodel/writer/arxml_writer.py +61 -49
  113. {armodel-1.6.3.dist-info → armodel-1.6.4.dist-info}/METADATA +371 -366
  114. armodel-1.6.4.dist-info/RECORD +156 -0
  115. {armodel-1.6.3.dist-info → armodel-1.6.4.dist-info}/WHEEL +1 -1
  116. armodel/models/M2/AUTOSARTemplates/SystemTemplate/transport_protocols.py +0 -7
  117. armodel/models/sw_component.py +0 -390
  118. armodel/models/timing.py +0 -91
  119. armodel-1.6.3.dist-info/RECORD +0 -148
  120. /armodel/models/{fibex → M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint}/__init__.py +0 -0
  121. /armodel/models/{fibex/fibex_4_can → M2/AUTOSARTemplates/CommonStructure/Timing}/__init__.py +0 -0
  122. /armodel/models/{fibex/fibex_4_lin → M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Can}/__init__.py +0 -0
  123. /armodel/models/{fibex/fibex_core → M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet}/__init__.py +0 -0
  124. {armodel-1.6.3.dist-info → armodel-1.6.4.dist-info}/LICENSE +0 -0
  125. {armodel-1.6.3.dist-info → armodel-1.6.4.dist-info}/entry_points.txt +0 -0
  126. {armodel-1.6.3.dist-info → armodel-1.6.4.dist-info}/top_level.txt +0 -0
@@ -153,30 +153,30 @@ class TestBswMD:
153
153
  assert(artifact_descs[1].getShortLabel().getValue() == "make::BswM_rules.mak")
154
154
  assert(artifact_descs[1].getCategory().getValue() == "SWMAKE")
155
155
 
156
- assert(impl.programming_language.getValue() == "C")
156
+ assert(impl.programmingLanguage.getValue() == "C")
157
157
 
158
- assert(impl.resource_consumption.short_name == "ResourceConsumption")
159
- assert(len(impl.resource_consumption.getMemorySections()) == 8)
158
+ assert(impl.resourceConsumption.short_name == "ResourceConsumption")
159
+ assert(len(impl.resourceConsumption.getMemorySections()) == 8)
160
160
 
161
- section = impl.resource_consumption.getMemorySection("CODE")
161
+ section = impl.resourceConsumption.getMemorySection("CODE")
162
162
  assert(section.short_name == "CODE")
163
163
  assert(section.alignment == None)
164
164
  assert(section.swAddrMethodRef.dest == "SW-ADDR-METHOD")
165
165
  assert(section.swAddrMethodRef.value == "/AUTOSAR_MemMap/SwAddrMethods/CODE")
166
166
 
167
- section = impl.resource_consumption.getMemorySection("VAR_NO_INIT_UNSPECIFIED")
167
+ section = impl.resourceConsumption.getMemorySection("VAR_NO_INIT_UNSPECIFIED")
168
168
  assert(section.short_name == "VAR_NO_INIT_UNSPECIFIED")
169
169
  assert(section.alignment.getText() == "UNSPECIFIED")
170
170
  assert(section.swAddrMethodRef.dest == "SW-ADDR-METHOD")
171
171
  assert(section.swAddrMethodRef.value == "/AUTOSAR_MemMap/SwAddrMethods/VAR_NOINIT")
172
172
 
173
- assert(impl.vendor_id.getValue() == 1)
174
- assert(impl.sw_version.getValue() == "1.14.1")
175
- assert(impl.swc_bsw_mapping_ref.dest == "SWC-BSW-MAPPING")
176
- assert(impl.swc_bsw_mapping_ref.value == "/AUTOSAR_BswM/SwcBswMappings/SwcBswMapping_0")
177
- assert(impl.ar_release_version.getValue() == "4.0.3")
178
- assert(impl.behavior_ref.dest == "BSW-INTERNAL-BEHAVIOR")
179
- assert(impl.behavior_ref.value == "/AUTOSAR_BswM/BswModuleDescriptions/BswM/InternalBehavior_0")
173
+ assert(impl.vendorId.getValue() == 1)
174
+ assert(impl.swVersion.getValue() == "1.14.1")
175
+ assert(impl.swcBswMappingRef.dest == "SWC-BSW-MAPPING")
176
+ assert(impl.swcBswMappingRef.value == "/AUTOSAR_BswM/SwcBswMappings/SwcBswMapping_0")
177
+ assert(impl.arReleaseVersion.getValue() == "4.0.3")
178
+ assert(impl.behaviorRef.dest == "BSW-INTERNAL-BEHAVIOR")
179
+ assert(impl.behaviorRef.value == "/AUTOSAR_BswM/BswModuleDescriptions/BswM/InternalBehavior_0")
180
180
 
181
181
 
182
182
  def test_load_save(self):
@@ -1,5 +1,5 @@
1
1
  import filecmp
2
- from ....models.M2.AUTOSARTemplates.SWComponentTemplate.Composition import CompositionSwComponentType
2
+ from ....models.M2.AUTOSARTemplates.SWComponentTemplate.Components import CompositionSwComponentType
3
3
  from ....writer.arxml_writer import ARXMLWriter
4
4
  from ....parser.arxml_parser import ARXMLParser
5
5
  from ....models.M2.AUTOSARTemplates.AutosarTopLevelStructure import AUTOSAR
@@ -1,5 +1,5 @@
1
1
  import filecmp
2
- from ....models.M2.AUTOSARTemplates.SWComponentTemplate.Composition import CompositionSwComponentType
2
+ from ....models.M2.AUTOSARTemplates.SWComponentTemplate.Components import CompositionSwComponentType
3
3
  from ....writer.arxml_writer import ARXMLWriter
4
4
  from ....parser.arxml_parser import ARXMLParser
5
5
  from ....models.M2.AUTOSARTemplates.AutosarTopLevelStructure import AUTOSAR
@@ -3,13 +3,6 @@ import xml.etree.cElementTree as ET
3
3
  from typing import List
4
4
 
5
5
  from ..models.M2.MSR.DataDictionary.RecordLayout import SwRecordLayoutGroup, SwRecordLayoutV
6
-
7
- from ..models.M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.IncludedDataTypes import IncludedDataTypeSet
8
-
9
- from ..models.M2.AUTOSARTemplates.BswModuleTemplate.BswOverview import BswModuleDescription
10
-
11
- from ..models.M2.AUTOSARTemplates.SWComponentTemplate.Datatype.Datatypes import ApplicationArrayDataType, ApplicationCompositeDataType, ApplicationDataType, ApplicationPrimitiveDataType, ApplicationRecordDataType, AutosarDataType
12
-
13
6
  from ..models.M2.MSR.AsamHdo.Constraints.GlobalConstraints import InternalConstrs, PhysConstrs
14
7
  from ..models.M2.MSR.DataDictionary.CalibrationParameter import SwCalprmAxis
15
8
  from ..models.M2.MSR.DataDictionary.Axis import SwAxisGrouped, SwAxisIndividual
@@ -26,12 +19,24 @@ from ..models.M2.MSR.Documentation.BlockElements import DocumentationBlock
26
19
  from ..models.M2.MSR.AsamHdo.ComputationMethod import CompuMethod
27
20
  from ..models.M2.MSR.DataDictionary.DataDefProperties import ValueList
28
21
  from ..models.M2.MSR.Documentation.TextModel.MultilanguageData import MultilanguageLongName
22
+ from ..models.M2.MSR.DataDictionary.RecordLayout import SwRecordLayout
23
+ from ..models.M2.MSR.AsamHdo.Constraints.GlobalConstraints import DataConstr
24
+ from ..models.M2.MSR.AsamHdo.Units import Unit
25
+ from ..models.M2.MSR.Documentation.Annotation import Annotation
29
26
 
27
+ from ..models.M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.PortAPIOptions import PortAPIOption
28
+ from ..models.M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.RTEEvents import DataReceivedEvent, InitEvent, InternalTriggerOccurredEvent, OperationInvokedEvent, RTEEvent, SwcModeSwitchEvent, TimingEvent
29
+ from ..models.M2.AUTOSARTemplates.CommonStructure.Timing.TimingConstraint.TimingExtensions import TimingExtension
30
+ from ..models.M2.AUTOSARTemplates.CommonStructure.Timing.TimingConstraint.ExecutionOrderConstraint import EOCExecutableEntityRef, ExecutionOrderConstraint
31
+ from ..models.M2.AUTOSARTemplates.SystemTemplate.Fibex.Fibex4Ethernet.EthernetFrame import GenericEthernetFrame
32
+ from ..models.M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.IncludedDataTypes import IncludedDataTypeSet
33
+ from ..models.M2.AUTOSARTemplates.BswModuleTemplate.BswOverview import BswModuleDescription
34
+ from ..models.M2.AUTOSARTemplates.SWComponentTemplate.Datatype.Datatypes import ApplicationArrayDataType, ApplicationCompositeDataType, ApplicationDataType, ApplicationPrimitiveDataType, ApplicationRecordDataType, AutosarDataType
30
35
  from ..models.M2.AUTOSARTemplates.CommonStructure.SwcBswMapping import SwcBswMapping, SwcBswRunnableMapping
31
36
  from ..models.M2.AUTOSARTemplates.BswModuleTemplate.BswImplementation import BswImplementation
32
37
  from ..models.M2.AUTOSARTemplates.CommonStructure.Implementation import Code, Implementation
33
38
  from ..models.M2.AUTOSARTemplates.SWComponentTemplate.EndToEndProtection import EndToEndDescription, EndToEndProtection, EndToEndProtectionVariablePrototype
34
- from ..models.M2.AUTOSARTemplates.CommonStructure.ServiceNeeds import RoleBasedDataAssignment
39
+ from ..models.M2.AUTOSARTemplates.CommonStructure.ServiceNeeds import RoleBasedDataAssignment, ServiceDependency
35
40
  from ..models.M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.EngineeringObject import AutosarEngineeringObject, EngineeringObject
36
41
  from ..models.M2.AUTOSARTemplates.CommonStructure.InternalBehavior import ExecutableEntity
37
42
  from ..models.M2.AUTOSARTemplates.CommonStructure.ModeDeclaration import ModeDeclaration, ModeDeclarationGroup
@@ -41,56 +46,49 @@ from ..models.M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.Identi
41
46
  from ..models.M2.AUTOSARTemplates.BswModuleTemplate.BswBehavior import BswCalledEntity, BswEvent, BswInternalBehavior, BswModeSenderPolicy, BswModuleEntity, BswSchedulableEntity, BswScheduleEvent, BswTimingEvent
42
47
  from ..models.M2.AUTOSARTemplates.CommonStructure.ImplementationDataTypes import ImplementationDataType
43
48
  from ..models.M2.AUTOSARTemplates.CommonStructure import ApplicationValueSpecification, ArrayValueSpecification, ConstantReference, ConstantSpecification, NumericalValueSpecification, RecordValueSpecification, TextValueSpecification, ValueSpecification
44
- from ..models.M2.AUTOSARTemplates.ecuc_description_template import EcucAbstractReferenceValue, EcucContainerValue, EcucInstanceReferenceValue, EcucModuleConfigurationValues, EcucNumericalParamValue, EcucParameterValue, EcucReferenceValue, EcucTextualParamValue, EcucValueCollection
49
+ from ..models.M2.AUTOSARTemplates.ECUCDescriptionTemplate import EcucAbstractReferenceValue, EcucContainerValue, EcucInstanceReferenceValue, EcucModuleConfigurationValues, EcucNumericalParamValue, EcucParameterValue, EcucReferenceValue, EcucTextualParamValue, EcucValueCollection
45
50
  from ..models.M2.AUTOSARTemplates.GenericStructure.AbstractStructure import AnyInstanceRef
46
- from ..models.M2.AUTOSARTemplates.SWComponentTemplate.Components import PortGroup, SwComponentType, PPortPrototype, PortPrototype, RPortPrototype
51
+ from ..models.M2.AUTOSARTemplates.SWComponentTemplate.Components import ApplicationSwComponentType, AtomicSwComponentType, ComplexDeviceDriverSwComponentType, CompositionSwComponentType, EcuAbstractionSwComponentType, PortGroup, SwComponentType, PPortPrototype, PortPrototype, RPortPrototype
47
52
  from ..models.M2.AUTOSARTemplates.SWComponentTemplate.Components.InstanceRefs import InnerPortGroupInCompositionInstanceRef, PModeGroupInAtomicSwcInstanceRef, RModeGroupInAtomicSWCInstanceRef, RModeInAtomicSwcInstanceRef, RVariableInAtomicSwcInstanceRef
48
- from ..models.M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior import RunnableEntityArgument, SynchronousServerCallPoint
53
+ from ..models.M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior import RunnableEntity, RunnableEntityArgument, SwcInternalBehavior, SynchronousServerCallPoint
49
54
  from ..models.M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.ServerCall import ServerCallPoint
50
55
  from ..models.M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.DataElements import ParameterAccess, VariableAccess
51
- from ..models.M2.AUTOSARTemplates.SWComponentTemplate.Composition import AssemblySwConnector, CompositionSwComponentType, DelegationSwConnector, SwComponentPrototype, SwConnector
56
+ from ..models.M2.AUTOSARTemplates.SWComponentTemplate.Composition import AssemblySwConnector, DelegationSwConnector, SwComponentPrototype, SwConnector
52
57
  from ..models.M2.AUTOSARTemplates.SWComponentTemplate.Composition.InstanceRefs import POperationInAtomicSwcInstanceRef, PPortInCompositionInstanceRef, ROperationInAtomicSwcInstanceRef, RPortInCompositionInstanceRef
53
- from ..models.M2.AUTOSARTemplates.SWComponentTemplate.port_interface.instance_refs import ApplicationCompositeElementInPortInterfaceInstanceRef
58
+ from ..models.M2.AUTOSARTemplates.SWComponentTemplate.PortInterface.InstanceRefs import ApplicationCompositeElementInPortInterfaceInstanceRef
54
59
  from ..models.M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.InstanceRefsUsage import AutosarParameterRef, AutosarVariableRef, VariableInAtomicSWCTypeInstanceRef
55
- from ..models.M2.AUTOSARTemplates.SystemTemplate.InstanceRefs import VariableDataPrototypeInSystemInstanceRef
60
+ from ..models.M2.AUTOSARTemplates.SWComponentTemplate.Communication import ClientComSpec, ModeSwitchReceiverComSpec, ModeSwitchSenderComSpec, NonqueuedReceiverComSpec, NonqueuedSenderComSpec, PPortComSpec, ParameterRequireComSpec, QueuedReceiverComSpec, QueuedSenderComSpec, RPortComSpec, ReceiverComSpec, SenderComSpec, ServerComSpec
56
61
  from ..models.M2.AUTOSARTemplates.SWComponentTemplate.Components.InstanceRefs import PModeGroupInAtomicSwcInstanceRef, RModeGroupInAtomicSWCInstanceRef
57
- from ..models.M2.AUTOSARTemplates.SystemTemplate.data_mapping import SenderReceiverToSignalGroupMapping, SenderReceiverToSignalMapping
62
+ from ..models.M2.AUTOSARTemplates.SystemTemplate.DataMapping import SenderReceiverToSignalGroupMapping, SenderReceiverToSignalMapping
58
63
  from ..models.M2.AUTOSARTemplates.SystemTemplate import System, SystemMapping
59
- from ..models.M2.AUTOSARTemplates.SystemTemplate.network_management import CanNmCluster, CanNmClusterCoupling, CanNmNode, NmCluster, NmConfig, NmNode
60
- from ..models.M2.AUTOSARTemplates.SystemTemplate.transport_protocols import CanTpConfig
61
- from ..models.M2.AUTOSARTemplates.SWComponentTemplate.Communication import ClientComSpec, ModeSwitchReceiverComSpec, ModeSwitchSenderComSpec, NonqueuedReceiverComSpec, NonqueuedSenderComSpec, PPortComSpec, ParameterRequireComSpec, QueuedReceiverComSpec, QueuedSenderComSpec, RPortComSpec, ReceiverComSpec, SenderComSpec, ServerComSpec
62
-
63
- from ..models.fibex.fibex_4_multiplatform import Gateway, ISignalMapping
64
- from ..models.fibex.can_communication import CanFrame, CanFrameTriggering, RxIdentifierRange
65
- from ..models.fibex.fibex_core.core_communication import FrameTriggering, IPdu, ISignalGroup, ISignalIPdu, ISignalIPduGroup, ISignalTriggering, PduTriggering, SecuredIPdu, SystemSignal, DcmIPdu, Frame, ISignal, NPdu, NmPdu, SystemSignalGroup
66
- from ..models.fibex.lin_communication import LinFrameTriggering, LinUnconditionalFrame
67
- from ..models.fibex.fibex_core.core_topology import AbstractCanCluster, CanCluster, EcuInstance, CanPhysicalChannel, CommunicationCluster, LinCluster, LinPhysicalChannel, PhysicalChannel
68
-
64
+ from ..models.M2.AUTOSARTemplates.SystemTemplate.NetworkManagement import CanNmCluster, CanNmClusterCoupling, CanNmNode, NmCluster, NmConfig, NmNode
65
+ from ..models.M2.AUTOSARTemplates.SystemTemplate.TransportProtocols import CanTpConfig
66
+ from ..models.M2.AUTOSARTemplates.SystemTemplate.InstanceRefs import VariableDataPrototypeInSystemInstanceRef
67
+ from ..models.M2.AUTOSARTemplates.SystemTemplate.Fibex.Fibex4Multiplatform import Gateway, ISignalMapping
68
+ from ..models.M2.AUTOSARTemplates.SystemTemplate.Fibex.Fibex4Can.CanCommunication import CanFrame, CanFrameTriggering, RxIdentifierRange
69
+ from ..models.M2.AUTOSARTemplates.SystemTemplate.Fibex.FibexCore.CoreCommunication import FrameTriggering, IPdu, ISignalGroup, ISignalIPdu, ISignalIPduGroup, ISignalTriggering, PduTriggering, SecuredIPdu, SystemSignal, DcmIPdu, Frame, ISignal, NPdu, NmPdu, SystemSignalGroup
70
+ from ..models.M2.AUTOSARTemplates.SystemTemplate.Fibex.Fibex4Lin.LinCommunication import LinFrameTriggering, LinUnconditionalFrame
71
+ from ..models.M2.AUTOSARTemplates.SystemTemplate.Fibex.FibexCore.CoreTopology import AbstractCanCluster, CanCluster, EcuInstance, CanPhysicalChannel, CommunicationCluster, LinCluster, LinPhysicalChannel, PhysicalChannel
69
72
  from ..models.M2.AUTOSARTemplates.CommonStructure.InternalBehavior import InternalBehavior
70
- from ..models.timing import EOCExecutableEntityRef, ExecutionOrderConstraint, SwcTiming, TimingExtension
71
- from ..models.M2.MSR.DataDictionary.RecordLayout import SwRecordLayout
72
- from ..models.M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.ServiceMapping import RoleBasedPortAssignment
73
+ from ..models.M2.AUTOSARTemplates.CommonStructure.Timing.TimingConstraint.TimingExtensions import SwcTiming
74
+
75
+ from ..models.M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.ServiceMapping import RoleBasedPortAssignment, SwcServiceDependency
73
76
  from ..models.M2.AUTOSARTemplates.CommonStructure.ServiceNeeds import NvBlockNeeds
74
77
  from ..models.M2.AUTOSARTemplates.SWComponentTemplate.Datatype.DataPrototypes import ApplicationArrayElement, ApplicationCompositeElementDataPrototype, ApplicationRecordElement, AutosarDataPrototype, DataPrototype, ParameterDataPrototype, VariableDataPrototype
75
78
  from ..models.M2.AUTOSARTemplates.BswModuleTemplate.BswInterfaces import BswModuleEntry
76
79
  from ..models.M2.AUTOSARTemplates.AutosarTopLevelStructure import AUTOSAR
77
- from ..models.sw_component import ApplicationSwComponentType, AtomicSwComponentType, ComplexDeviceDriverSwComponentType, DataReceivedEvent, EcuAbstractionSwComponentType, InitEvent, InternalTriggerOccurredEvent, OperationInvokedEvent, PortAPIOption, RTEEvent, ServiceDependency, ServiceSwComponentType, SwcModeSwitchEvent, SwcServiceDependency
80
+ from ..models.M2.AUTOSARTemplates.SWComponentTemplate.Components import ServiceSwComponentType
78
81
  from ..models.M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.ARPackage import ARPackage
79
82
  from ..models.M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import RefType
80
83
  from ..models.M2.MSR.DataDictionary.CalibrationParameter import SwCalprmAxisSet
81
84
  from ..models.M2.AUTOSARTemplates.CommonStructure.ModeDeclaration import ModeDeclarationGroupPrototype
82
85
  from ..models.M2.AUTOSARTemplates.SWComponentTemplate.Datatype.Datatypes import DataTypeMappingSet
83
86
  from ..models.M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import Limit
84
-
85
- from ..models.M2.MSR.Documentation.Annotation import Annotation
86
87
  from ..models.M2.AUTOSARTemplates.SWComponentTemplate.EndToEndProtection import EndToEndProtectionSet
87
- from ..models.M2.AUTOSARTemplates.SWComponentTemplate.port_interface import ApplicationError, ClientServerInterface, ClientServerOperation, ModeSwitchInterface, PortInterface, SenderReceiverInterface, TriggerInterface
88
- from ..models.M2.MSR.AsamHdo.Units import Unit
88
+ from ..models.M2.AUTOSARTemplates.SWComponentTemplate.PortInterface import ApplicationError, ClientServerInterface, ClientServerOperation, ModeSwitchInterface, ParameterInterface, PortInterface, SenderReceiverInterface, TriggerInterface
89
89
  from ..models.M2.AUTOSARTemplates.SWComponentTemplate.SwcImplementation import SwcImplementation
90
90
  from ..models.M2.AUTOSARTemplates.CommonStructure.ResourceConsumption import ResourceConsumption
91
- from ..models.sw_component import RunnableEntity, SwcInternalBehavior, TimingEvent
92
91
  from ..models.M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import ARLiteral
93
- from ..models.M2.MSR.AsamHdo.Constraints.GlobalConstraints import DataConstr
94
92
 
95
93
  from .abstract_arxml_writer import AbstractARXMLWriter
96
94
  class ARXMLWriter(AbstractARXMLWriter):
@@ -861,7 +859,7 @@ class ARXMLWriter(AbstractARXMLWriter):
861
859
  child_element = ET.SubElement(element, "DISABLED-MODE-IREFS")
862
860
  for iref in irefs:
863
861
  self.setRModeInAtomicSwcInstanceRef(child_element, "DISABLED-MODE-IREF", iref)
864
- self.setChildElementOptionalRefType(element, "START-ON-EVENT-REF", event.start_on_event_ref)
862
+ self.setChildElementOptionalRefType(element, "START-ON-EVENT-REF", event.startOnEventRef)
865
863
 
866
864
  def setTimingEvent(self, element: ET.Element, event: TimingEvent):
867
865
  if event is not None:
@@ -873,7 +871,7 @@ class ARXMLWriter(AbstractARXMLWriter):
873
871
  if event is not None:
874
872
  child_element = ET.SubElement(element, "OPERATION-INVOKED-EVENT")
875
873
  self.setRTEEvent(child_element, event)
876
- self.setPOperationInAtomicSwcInstanceRef(child_element, "OPERATION-IREF", event.operation_iref)
874
+ self.setPOperationInAtomicSwcInstanceRef(child_element, "OPERATION-IREF", event.operationIRef)
877
875
 
878
876
  def setSwcModeSwitchEvent(self, element: ET.Element, event: SwcModeSwitchEvent):
879
877
  if event is not None:
@@ -1166,7 +1164,7 @@ class ARXMLWriter(AbstractARXMLWriter):
1166
1164
  if argument_value.value is not None:
1167
1165
  value_tag = ET.SubElement(child_element, "VALUE")
1168
1166
  self.setValueSpecification(value_tag, argument_value.value)
1169
- self.setChildElementOptionalRefType(child_element, "VALUE-TYPE-TREF", argument_value.value_type)
1167
+ self.setChildElementOptionalRefType(child_element, "VALUE-TYPE-TREF", argument_value.valueTypeTRef)
1170
1168
 
1171
1169
  def writePortAPIOptions(self, element: ET.Element, behavior: SwcInternalBehavior):
1172
1170
  options = behavior.getPortAPIOptions()
@@ -1174,10 +1172,10 @@ class ARXMLWriter(AbstractARXMLWriter):
1174
1172
  port_api_options_tag = ET.SubElement(element, "PORT-API-OPTIONS")
1175
1173
  for option in options:
1176
1174
  child_element = ET.SubElement(port_api_options_tag, "PORT-API-OPTION")
1177
- self.setChildElementOptionalBooleanValue(child_element, "ENABLE-TAKE-ADDRESS", option.enable_take_address)
1178
- self.setChildElementOptionalBooleanValue(child_element, "INDIRECT-API", option.indirect_api)
1175
+ self.setChildElementOptionalBooleanValue(child_element, "ENABLE-TAKE-ADDRESS", option.enableTakeAddress)
1176
+ self.setChildElementOptionalBooleanValue(child_element, "INDIRECT-API", option.indirectAPI)
1179
1177
  self.writePortDefinedArgumentValues(child_element, option)
1180
- self.setChildElementOptionalRefType(child_element, "PORT-REF", option.port_ref)
1178
+ self.setChildElementOptionalRefType(child_element, "PORT-REF", option.portRef)
1181
1179
 
1182
1180
  def writeServiceDependency(self, element: ET.Element, dependency: ServiceDependency):
1183
1181
  self.setIdentifiable(element, dependency)
@@ -1358,18 +1356,18 @@ class ARXMLWriter(AbstractARXMLWriter):
1358
1356
  def writeImplementation(self, element: ET.Element, impl: Implementation):
1359
1357
  self.setIdentifiable(element, impl)
1360
1358
  self.writeCodeDescriptors(element, impl)
1361
- self.setChildElementOptionalLiteral(element, "PROGRAMMING-LANGUAGE", impl.programming_language)
1359
+ self.setChildElementOptionalLiteral(element, "PROGRAMMING-LANGUAGE", impl.getProgrammingLanguage())
1362
1360
  self.setResourceConsumption(element, impl.getResourceConsumption())
1363
- self.setChildElementOptionalLiteral(element, "SW-VERSION", impl.sw_version)
1364
- self.setChildElementOptionalRefType(element, "SWC-BSW-MAPPING-REF", impl.swc_bsw_mapping_ref)
1365
- self.setChildElementOptionalLiteral(element, "USED-CODE-GENERATOR", impl.used_code_generator)
1366
- self.setChildElementOptionalNumericalValue(element, "VENDOR-ID", impl.vendor_id)
1361
+ self.setChildElementOptionalLiteral(element, "SW-VERSION", impl.getSwVersion())
1362
+ self.setChildElementOptionalRefType(element, "SWC-BSW-MAPPING-REF", impl.getSwcBswMappingRef())
1363
+ self.setChildElementOptionalLiteral(element, "USED-CODE-GENERATOR", impl.getUsedCodeGenerator())
1364
+ self.setChildElementOptionalNumericalValue(element, "VENDOR-ID", impl.getVendorId())
1367
1365
 
1368
1366
  def writeSwcImplementation(self, element: ET.Element, impl: SwcImplementation):
1369
1367
  self.logger.debug("writeSwcImplementation %s" % impl.short_name)
1370
1368
  child_element = ET.SubElement(element, "SWC-IMPLEMENTATION")
1371
1369
  self.writeImplementation(child_element, impl)
1372
- self.setChildElementOptionalRefType(child_element, "BEHAVIOR-REF", impl.behavior_ref)
1370
+ self.setChildElementOptionalRefType(child_element, "BEHAVIOR-REF", impl.getBehaviorRef())
1373
1371
 
1374
1372
  def writeEndToEndDescriptionDataId(self, element: ET.Element, parent: EndToEndDescription):
1375
1373
  data_ids = parent.getDataIds()
@@ -1692,8 +1690,8 @@ class ARXMLWriter(AbstractARXMLWriter):
1692
1690
  self.logger.debug("writeBswModuleDescription %s" % impl.short_name)
1693
1691
  child_element = ET.SubElement(element, "BSW-IMPLEMENTATION")
1694
1692
  self.writeImplementation(child_element, impl)
1695
- self.setChildElementOptionalLiteral(child_element, "AR-RELEASE-VERSION", impl.ar_release_version)
1696
- self.setChildElementOptionalRefType(child_element, "BEHAVIOR-REF", impl.behavior_ref)
1693
+ self.setChildElementOptionalLiteral(child_element, "AR-RELEASE-VERSION", impl.getArReleaseVersion())
1694
+ self.setChildElementOptionalRefType(child_element, "BEHAVIOR-REF", impl.getBehaviorRef())
1697
1695
  self.writeBswImplementationVendorSpecificModuleDefRefs(child_element, impl)
1698
1696
 
1699
1697
  def writeImplementationDataTypeElements(self, element: ET.Element, parent: ImplementationDataType):
@@ -2515,6 +2513,16 @@ class ARXMLWriter(AbstractARXMLWriter):
2515
2513
  self.setIdentifiable(child_element, signal)
2516
2514
  self.setChildElementOptionalBooleanValue(child_element, "DYNAMIC-LENGTH", signal.getDynamicLength())
2517
2515
 
2516
+ def writeParameterInterface(self, element: ET.Element, signal: SystemSignal):
2517
+ self.logger.debug("Write ParameterInterface %s" % signal.short_name)
2518
+ child_element = ET.SubElement(element, "PARAMETER-INTERFACE")
2519
+ self.setIdentifiable(child_element, signal)
2520
+
2521
+ def writeGenericEthernetFrame(self, element: ET.Element, signal: SystemSignal):
2522
+ self.logger.debug("Write GenericEthernetFrame %s" % signal.short_name)
2523
+ child_element = ET.SubElement(element, "ETHERNET-FRAME")
2524
+ self.writeFrame(child_element, signal)
2525
+
2518
2526
  def writeISignalToPduMappings(self, element: ET.Element, parent: ISignalIPdu):
2519
2527
  mappings = parent.getISignalToPduMappings()
2520
2528
  if len(mappings) > 0:
@@ -2628,6 +2636,10 @@ class ARXMLWriter(AbstractARXMLWriter):
2628
2636
  self.writeISignalIPdu(element, ar_element)
2629
2637
  elif isinstance(ar_element, SystemSignal):
2630
2638
  self.writeSystemSignal(element, ar_element)
2639
+ elif isinstance(ar_element, ParameterInterface):
2640
+ self.writeParameterInterface(element, ar_element)
2641
+ elif isinstance(ar_element, GenericEthernetFrame):
2642
+ self.writeGenericEthernetFrame(element, ar_element)
2631
2643
  else:
2632
2644
  raise NotImplementedError("Unsupported Elements of ARPackage <%s>" % type(ar_element))
2633
2645