armodel 1.8.6__py3-none-any.whl → 1.9.1__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 (431) hide show
  1. armodel/__init__.py +19 -3
  2. armodel/cli/arxml_dump_cli.py +196 -197
  3. armodel/cli/arxml_format_cli.py +84 -84
  4. armodel/cli/connector2xlsx_cli.py +73 -73
  5. armodel/cli/connector_update_cli.py +73 -73
  6. armodel/cli/file_list_cli.py +69 -69
  7. armodel/cli/format_xml_cli.py +62 -62
  8. armodel/cli/memory_section_cli.py +74 -75
  9. armodel/cli/swc_list_cli.py +79 -79
  10. armodel/cli/system_signal_cli.py +73 -73
  11. armodel/cli/uuid_checker_cli.py +95 -95
  12. armodel/data_models/sw_connector.py +21 -21
  13. armodel/lib/__init__.py +4 -4
  14. armodel/lib/cli_args_parser.py +36 -35
  15. armodel/lib/sw_component.py +34 -35
  16. armodel/lib/system_signal.py +36 -36
  17. armodel/models/M2/AUTOSARTemplates/AdaptivePlatform/PlatformModuleDeployment/Firewall/FirewallRule.py +62 -0
  18. armodel/models/M2/AUTOSARTemplates/AdaptivePlatform/PlatformModuleDeployment/Firewall/FirewallRuleProps.py +83 -0
  19. armodel/models/M2/AUTOSARTemplates/AdaptivePlatform/PlatformModuleDeployment/Firewall/StateDependentFirewall.py +62 -0
  20. armodel/models/M2/AUTOSARTemplates/AdaptivePlatform/PlatformModuleDeployment/Firewall/__init__.py +5 -0
  21. armodel/models/M2/AUTOSARTemplates/AdaptivePlatform/PlatformModuleDeployment/__init__.py +3 -0
  22. armodel/models/M2/AUTOSARTemplates/AdaptivePlatform/__init__.py +3 -0
  23. armodel/models/M2/AUTOSARTemplates/AutosarTopLevelStructure/__init__.py +320 -0
  24. armodel/models/M2/AUTOSARTemplates/AutosarTopLevelStructure.py +315 -296
  25. armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswBehavior/BswAsynchronousServerCallReturnsEvent.py +27 -0
  26. armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswBehavior/BswExclusiveAreaPolicy.py +22 -0
  27. armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswBehavior/BswInterruptEvent.py +18 -0
  28. armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswBehavior/BswModeManagerErrorEvent.py +18 -0
  29. armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswBehavior/BswModeReceiverPolicy.py +22 -0
  30. armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswBehavior/BswSchedulerNamePrefix.py +26 -0
  31. armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswBehavior/BswServiceDependency.py +27 -0
  32. armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswBehavior/BswTriggerDirectImplementation.py +21 -0
  33. armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswBehavior/RoleBasedBswModuleEntryAssignment.py +35 -0
  34. armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswBehavior.py +2223 -792
  35. armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswImplementation.py +180 -60
  36. armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswInterfaces/BswEntryRelationship.py +26 -0
  37. armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswInterfaces/BswEntryRelationshipEnum.py +24 -0
  38. armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswInterfaces/BswEntryRelationshipSet.py +24 -0
  39. armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswInterfaces.py +586 -200
  40. armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswOverview/ModeInBswModuleDescriptionInstanceRef.py +17 -0
  41. armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswOverview.py +445 -179
  42. armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/__init__.py +0 -4
  43. armodel/models/M2/AUTOSARTemplates/CommonStructure/Constants/__init__.py +670 -0
  44. armodel/models/M2/AUTOSARTemplates/CommonStructure/Filter.py +243 -96
  45. armodel/models/M2/AUTOSARTemplates/CommonStructure/FlatMap.py +273 -69
  46. armodel/models/M2/AUTOSARTemplates/CommonStructure/Implementation.py +756 -243
  47. armodel/models/M2/AUTOSARTemplates/CommonStructure/ImplementationDataTypes.py +336 -170
  48. armodel/models/M2/AUTOSARTemplates/CommonStructure/InternalBehavior.py +430 -136
  49. armodel/models/M2/AUTOSARTemplates/CommonStructure/McGroups.py +53 -0
  50. armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/ImplementationElementInParameterInstanceRef.py +15 -0
  51. armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/McDataAccessDetails.py +60 -0
  52. armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/McDataInstance.py +62 -0
  53. armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/McFunction.py +62 -0
  54. armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/McParameterElementGroup.py +39 -0
  55. armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/McSupportData.py +62 -0
  56. armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/McSwEmulationMethodSupport.py +37 -0
  57. armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/RoleBasedMcDataAssignment.py +61 -0
  58. armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/RptSupport/McFunctionDataRefSet.py +39 -0
  59. armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/RptSupport/RptAccessEnum.py +12 -0
  60. armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/RptSupport/RptComponent.py +60 -0
  61. armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/RptSupport/RptEnablerImplTypeEnum.py +11 -0
  62. armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/RptSupport/RptExecutableEntity.py +62 -0
  63. armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/RptSupport/RptExecutableEntityEvent.py +62 -0
  64. armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/RptSupport/RptExecutionContext.py +38 -0
  65. armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/RptSupport/RptExecutionControlEnum.py +11 -0
  66. armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/RptSupport/RptPreparationEnum.py +11 -0
  67. armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/RptSupport/RptServicePoint.py +62 -0
  68. armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/RptSupport/RptSupportData.py +111 -0
  69. armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/RptSupport/RptSwPrototypingAccess.py +62 -0
  70. armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/RptSupport/__init__.py +27 -0
  71. armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/__init__.py +19 -0
  72. armodel/models/M2/AUTOSARTemplates/CommonStructure/ModeDeclaration.py +424 -148
  73. armodel/models/M2/AUTOSARTemplates/CommonStructure/ModeDeclarationExtra.py +73 -0
  74. armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/ExecutionTime/__init__.py +132 -0
  75. armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/HardwareConfiguration.py +93 -32
  76. armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/HeapUsage.py +78 -10
  77. armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/MemorySectionUsage.py +239 -81
  78. armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/SoftwareContext.py +68 -23
  79. armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/StackUsage.py +274 -92
  80. armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/__init__.py +135 -53
  81. armodel/models/M2/AUTOSARTemplates/CommonStructure/ServiceNeeds.py +2955 -839
  82. armodel/models/M2/AUTOSARTemplates/CommonStructure/SignalServiceTranslation/SignalServiceTranslationControlEnum.py +11 -0
  83. armodel/models/M2/AUTOSARTemplates/CommonStructure/SignalServiceTranslation/SignalServiceTranslationElementProps.py +37 -0
  84. armodel/models/M2/AUTOSARTemplates/CommonStructure/SignalServiceTranslation/SignalServiceTranslationEventProps.py +37 -0
  85. armodel/models/M2/AUTOSARTemplates/CommonStructure/SignalServiceTranslation/SignalServiceTranslationProps.py +38 -0
  86. armodel/models/M2/AUTOSARTemplates/CommonStructure/SignalServiceTranslation/SignalServiceTranslationPropsSet.py +38 -0
  87. armodel/models/M2/AUTOSARTemplates/CommonStructure/SignalServiceTranslation/__init__.py +13 -0
  88. armodel/models/M2/AUTOSARTemplates/CommonStructure/StandardizationTemplate/AbstractBlueprintStructure/AtpBlueprint.py +32 -0
  89. armodel/models/M2/AUTOSARTemplates/CommonStructure/StandardizationTemplate/AbstractBlueprintStructure/__init__.py +7 -0
  90. armodel/models/M2/AUTOSARTemplates/CommonStructure/StandardizationTemplate/BlueprintDedicated/PortPrototypeBlueprint.py +186 -73
  91. armodel/models/M2/AUTOSARTemplates/CommonStructure/StandardizationTemplate/BlueprintDedicated/__init__.py +10 -0
  92. armodel/models/M2/AUTOSARTemplates/CommonStructure/StandardizationTemplate/BlueprintGenerator/BlueprintGenerator.py +37 -0
  93. armodel/models/M2/AUTOSARTemplates/CommonStructure/StandardizationTemplate/BlueprintGenerator/__init__.py +3 -0
  94. armodel/models/M2/AUTOSARTemplates/CommonStructure/StandardizationTemplate/BlueprintMapping/BlueprintMappingSet.py +38 -0
  95. armodel/models/M2/AUTOSARTemplates/CommonStructure/StandardizationTemplate/BlueprintMapping/__init__.py +3 -0
  96. armodel/models/M2/AUTOSARTemplates/CommonStructure/StandardizationTemplate/Keyword.py +126 -45
  97. armodel/models/M2/AUTOSARTemplates/CommonStructure/StandardizationTemplate/__init__.py +5 -0
  98. armodel/models/M2/AUTOSARTemplates/CommonStructure/SwcBswMapping.py +290 -77
  99. armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingClock/TDLETZoneClock.py +61 -0
  100. armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingClock/TimingClock.py +60 -0
  101. armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingClock/TimingClockSyncAccuracy.py +60 -0
  102. armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingClock/__init__.py +5 -0
  103. armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingCondition/ModeInBswInstanceRef.py +14 -0
  104. armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingCondition/ModeInSwcInstanceRef.py +14 -0
  105. armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingCondition/TimingCondition.py +61 -0
  106. armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingCondition/TimingConditionFormula.py +37 -0
  107. armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingCondition/TimingExtensionResource.py +60 -0
  108. armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingCondition/TimingModeInstance.py +61 -0
  109. armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingCondition/__init__.py +15 -0
  110. armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/AgeConstraint.py +57 -0
  111. armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/EventTriggeringConstraint.py +203 -0
  112. armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/ExecutionOrderConstraint.py +193 -45
  113. armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/ExecutionTimeConstraint.py +101 -0
  114. armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/LatencyTimingConstraint.py +100 -0
  115. armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/OffsetConstraint.py +56 -0
  116. armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/SynchronizationPointConstraint.py +57 -0
  117. armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/SynchronizationTiming.py +117 -0
  118. armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/TimingConstraint.py +59 -24
  119. armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/TimingExtensions.py +69 -32
  120. armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/__init__.py +48 -0
  121. armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/Traceable.py +11 -0
  122. armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/__init__.py +16 -0
  123. armodel/models/M2/AUTOSARTemplates/CommonStructure/TriggerDeclaration.py +147 -52
  124. armodel/models/M2/AUTOSARTemplates/CommonStructure/__init__.py +17 -205
  125. armodel/models/M2/AUTOSARTemplates/DiagnosticExtract/DiagnosticCommonElement.py +11 -0
  126. armodel/models/M2/AUTOSARTemplates/DiagnosticExtract/DiagnosticContribution.py +137 -47
  127. armodel/models/M2/AUTOSARTemplates/DiagnosticExtract/__init__.py +10 -0
  128. armodel/models/M2/AUTOSARTemplates/ECUCDescriptionTemplate.py +285 -346
  129. armodel/models/M2/AUTOSARTemplates/ECUCParameterDefTemplate.py +1561 -1249
  130. armodel/models/M2/AUTOSARTemplates/EcuResourceTemplate/HwAttributeValue.py +117 -0
  131. armodel/models/M2/AUTOSARTemplates/EcuResourceTemplate/HwElementCategory.py +176 -59
  132. armodel/models/M2/AUTOSARTemplates/EcuResourceTemplate/HwElementConnector.py +73 -0
  133. armodel/models/M2/AUTOSARTemplates/EcuResourceTemplate/__init__.py +401 -145
  134. armodel/models/M2/AUTOSARTemplates/GenericStructure/AbstractStructure.py +293 -92
  135. armodel/models/M2/AUTOSARTemplates/GenericStructure/DocumentationOnM1/__init__.py +39 -0
  136. armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/ARPackage.py +1314 -816
  137. armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/AnyInstanceRef.py +88 -0
  138. armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/ArObject.py +37 -17
  139. armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/ElementCollection.py +197 -74
  140. armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/EngineeringObject.py +129 -51
  141. armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/Enumerations.py +16 -0
  142. armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/Identifiable.py +599 -236
  143. armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/PrimitiveTypes.py +902 -594
  144. armodel/models/M2/AUTOSARTemplates/GenericStructure/LifeCycles.py +395 -155
  145. armodel/models/M2/AUTOSARTemplates/GenericStructure/RolesAndRights/AtpDefinition.py +36 -0
  146. armodel/models/M2/AUTOSARTemplates/GenericStructure/RolesAndRights/__init__.py +7 -0
  147. armodel/models/M2/AUTOSARTemplates/GenericStructure/VariantHandling/AttributeValueVariationPoints/__init__.py +36 -0
  148. armodel/models/M2/AUTOSARTemplates/GenericStructure/VariantHandling/__init__.py +182 -0
  149. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/ApplicationAttributes/__init__.py +97 -0
  150. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Communication.py +784 -712
  151. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Components/InstanceRefs.py +186 -179
  152. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Components/__init__.py +363 -463
  153. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Composition/InstanceRefs.py +160 -154
  154. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Composition/__init__.py +160 -100
  155. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Datatype/DataPrototypes.py +145 -145
  156. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Datatype/Datatypes.py +137 -131
  157. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/EndToEndProtection.py +191 -184
  158. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/PortInterface/InstanceRefs.py +45 -39
  159. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/PortInterface/__init__.py +647 -641
  160. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/RPTScenario.py +21 -17
  161. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SoftwareComponentDocumentation.py +84 -80
  162. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwComponentType.py +76 -0
  163. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcImplementation.py +37 -34
  164. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/AccessCount.py +26 -21
  165. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/AutosarVariableRef.py +39 -34
  166. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/DataElements.py +57 -52
  167. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/IncludedDataTypes.py +32 -24
  168. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/InstanceRefsUsage.py +160 -155
  169. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/ModeDeclarationGroup.py +68 -63
  170. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/PerInstanceMemory.py +46 -40
  171. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/PortAPIOptions.py +91 -86
  172. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/RTEEvents.py +219 -206
  173. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/ServerCall.py +33 -26
  174. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/ServiceMapping.py +148 -137
  175. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/Trigger.py +54 -49
  176. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/__init__.py +488 -489
  177. armodel/models/M2/AUTOSARTemplates/SystemTemplate/DataMapping.py +334 -259
  178. armodel/models/M2/AUTOSARTemplates/SystemTemplate/DiagnosticConnection.py +62 -58
  179. armodel/models/M2/AUTOSARTemplates/SystemTemplate/DoIp.py +48 -29
  180. armodel/models/M2/AUTOSARTemplates/SystemTemplate/{EcuResourceMapping.py → ECUResourceMapping.py} +48 -45
  181. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Can/CanCommunication.py +139 -122
  182. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Can/CanTopology.py +628 -344
  183. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Can/__init__.py +2 -0
  184. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet/EthernetCommunication.py +267 -244
  185. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet/EthernetFrame.py +30 -16
  186. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet/EthernetTopology.py +750 -685
  187. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet/NetworkEndpoint.py +375 -327
  188. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet/ServiceInstances.py +924 -975
  189. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Flexray/FlexrayCommunication.py +92 -76
  190. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Flexray/FlexrayTopology.py +669 -654
  191. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Lin/LinCommunication.py +193 -149
  192. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Lin/LinTopology.py +110 -92
  193. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Multiplatform.py +205 -205
  194. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/FibexCore/CoreCommunication.py +1376 -1232
  195. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/FibexCore/CoreTopology.py +800 -662
  196. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/FibexCore/EcuInstance.py +269 -270
  197. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/FibexCore/Timing.py +172 -172
  198. armodel/models/M2/AUTOSARTemplates/SystemTemplate/InstanceRefs.py +90 -87
  199. armodel/models/M2/AUTOSARTemplates/SystemTemplate/NetworkManagement.py +899 -789
  200. armodel/models/M2/AUTOSARTemplates/SystemTemplate/RteEventToOsTaskMapping.py +43 -35
  201. armodel/models/M2/AUTOSARTemplates/SystemTemplate/SWmapping.py +65 -52
  202. armodel/models/M2/AUTOSARTemplates/SystemTemplate/SecureCommunication.py +105 -83
  203. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Transformer/__init__.py +574 -524
  204. armodel/models/M2/AUTOSARTemplates/SystemTemplate/TransportProtocols.py +739 -658
  205. armodel/models/M2/AUTOSARTemplates/SystemTemplate/__init__.py +493 -458
  206. armodel/models/M2/MSR/AsamHdo/AdminData.py +150 -136
  207. armodel/models/M2/MSR/AsamHdo/BaseTypes.py +95 -76
  208. armodel/models/M2/MSR/AsamHdo/ComputationMethod.py +367 -329
  209. armodel/models/M2/MSR/AsamHdo/Constraints/GlobalConstraints.py +58 -41
  210. armodel/models/M2/MSR/AsamHdo/SpecialData.py +99 -87
  211. armodel/models/M2/MSR/AsamHdo/Units.py +159 -105
  212. armodel/models/M2/MSR/CalibrationData/CalibrationValue.py +55 -57
  213. armodel/models/M2/MSR/DataDictionary/AuxillaryObjects.py +40 -41
  214. armodel/models/M2/MSR/DataDictionary/Axis.py +142 -144
  215. armodel/models/M2/MSR/DataDictionary/CalibrationParameter.py +35 -36
  216. armodel/models/M2/MSR/DataDictionary/DataDefProperties.py +383 -351
  217. armodel/models/M2/MSR/DataDictionary/RecordLayout.py +207 -209
  218. armodel/models/M2/MSR/DataDictionary/ServiceProcessTask.py +31 -33
  219. armodel/models/M2/MSR/DataDictionary/SystemConstant.py +32 -0
  220. armodel/models/M2/MSR/Documentation/Annotation.py +40 -41
  221. armodel/models/M2/MSR/Documentation/BlockElements/Figure.py +162 -163
  222. armodel/models/M2/MSR/Documentation/BlockElements/Formula/__init__.py +26 -0
  223. armodel/models/M2/MSR/Documentation/TextModel/BlockElements/ListElements.py +55 -56
  224. armodel/models/M2/MSR/Documentation/TextModel/BlockElements/PaginationAndView.py +35 -30
  225. armodel/models/M2/MSR/Documentation/TextModel/BlockElements/__init__.py +110 -110
  226. armodel/models/M2/MSR/Documentation/TextModel/LanguageDataModel.py +57 -44
  227. armodel/models/M2/MSR/Documentation/TextModel/MultilanguageData.py +59 -58
  228. armodel/models/M2/MSR/Documentation/__init__.py +3 -3
  229. armodel/models/M2/MSR/documentation/__init__.py +3 -0
  230. armodel/models/__init__.py +86 -85
  231. armodel/models/utils/uuid_mgr.py +28 -29
  232. armodel/parser/__init__.py +2 -2
  233. armodel/parser/abstract_arxml_parser.py +323 -325
  234. armodel/parser/arxml_parser.py +5832 -5830
  235. armodel/parser/connector_xlsx_parser.py +192 -193
  236. armodel/parser/excel_parser.py +17 -17
  237. armodel/parser/file_parser.py +46 -46
  238. armodel/report/__init__.py +1 -1
  239. armodel/report/connector_xls_report.py +76 -77
  240. armodel/report/excel_report.py +41 -41
  241. armodel/transformer/abstract.py +6 -6
  242. armodel/transformer/admin_data.py +31 -31
  243. armodel/writer/__init__.py +1 -1
  244. armodel/writer/abstract_arxml_writer.py +146 -147
  245. armodel/writer/arxml_writer.py +5969 -5965
  246. {armodel-1.8.6.dist-info → armodel-1.9.1.dist-info}/METADATA +850 -656
  247. armodel-1.9.1.dist-info/RECORD +273 -0
  248. {armodel-1.8.6.dist-info → armodel-1.9.1.dist-info}/WHEEL +1 -1
  249. {armodel-1.8.6.dist-info → armodel-1.9.1.dist-info}/entry_points.txt +0 -1
  250. {armodel-1.8.6.dist-info → armodel-1.9.1.dist-info/licenses}/LICENSE +21 -21
  251. armodel/__pycache__/__init__.cpython-312.pyc +0 -0
  252. armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/__pycache__/BswBehavior.cpython-312.pyc +0 -0
  253. armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/__pycache__/BswImplementation.cpython-312.pyc +0 -0
  254. armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/__pycache__/BswInterfaces.cpython-312.pyc +0 -0
  255. armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/__pycache__/BswOverview.cpython-312.pyc +0 -0
  256. armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/__pycache__/__init__.cpython-312.pyc +0 -0
  257. armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/__pycache__/HardwareConfiguration.cpython-312.pyc +0 -0
  258. armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/__pycache__/HeapUsage.cpython-312.pyc +0 -0
  259. armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/__pycache__/MemorySectionUsage.cpython-312.pyc +0 -0
  260. armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/__pycache__/SoftwareContext.cpython-312.pyc +0 -0
  261. armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/__pycache__/StackUsage.cpython-312.pyc +0 -0
  262. armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/__pycache__/__init__.cpython-312.pyc +0 -0
  263. armodel/models/M2/AUTOSARTemplates/CommonStructure/StandardizationTemplate/BlueprintDedicated/__pycache__/PortPrototypeBlueprint.cpython-312.pyc +0 -0
  264. armodel/models/M2/AUTOSARTemplates/CommonStructure/StandardizationTemplate/BlueprintDedicated/__pycache__/__init__.cpython-312.pyc +0 -0
  265. armodel/models/M2/AUTOSARTemplates/CommonStructure/StandardizationTemplate/__pycache__/Keyword.cpython-312.pyc +0 -0
  266. armodel/models/M2/AUTOSARTemplates/CommonStructure/StandardizationTemplate/__pycache__/__init__.cpython-312.pyc +0 -0
  267. armodel/models/M2/AUTOSARTemplates/CommonStructure/SwcInternalBehavior/ModeDeclarationGroup.py +0 -24
  268. armodel/models/M2/AUTOSARTemplates/CommonStructure/SwcInternalBehavior/__init__.py +0 -0
  269. armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/__pycache__/ExecutionOrderConstraint.cpython-312.pyc +0 -0
  270. armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/__pycache__/TimingConstraint.cpython-312.pyc +0 -0
  271. armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/__pycache__/TimingExtensions.cpython-312.pyc +0 -0
  272. armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/__pycache__/__init__.cpython-312.pyc +0 -0
  273. armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/__pycache__/__init__.cpython-312.pyc +0 -0
  274. armodel/models/M2/AUTOSARTemplates/CommonStructure/__pycache__/Filter.cpython-312.pyc +0 -0
  275. armodel/models/M2/AUTOSARTemplates/CommonStructure/__pycache__/FlatMap.cpython-312.pyc +0 -0
  276. armodel/models/M2/AUTOSARTemplates/CommonStructure/__pycache__/Implementation.cpython-312.pyc +0 -0
  277. armodel/models/M2/AUTOSARTemplates/CommonStructure/__pycache__/ImplementationDataTypes.cpython-312.pyc +0 -0
  278. armodel/models/M2/AUTOSARTemplates/CommonStructure/__pycache__/InternalBehavior.cpython-312.pyc +0 -0
  279. armodel/models/M2/AUTOSARTemplates/CommonStructure/__pycache__/ModeDeclaration.cpython-312.pyc +0 -0
  280. armodel/models/M2/AUTOSARTemplates/CommonStructure/__pycache__/ServiceNeeds.cpython-312.pyc +0 -0
  281. armodel/models/M2/AUTOSARTemplates/CommonStructure/__pycache__/SwcBswMapping.cpython-312.pyc +0 -0
  282. armodel/models/M2/AUTOSARTemplates/CommonStructure/__pycache__/TriggerDeclaration.cpython-312.pyc +0 -0
  283. armodel/models/M2/AUTOSARTemplates/CommonStructure/__pycache__/__init__.cpython-312.pyc +0 -0
  284. armodel/models/M2/AUTOSARTemplates/DiagnosticExtract/__pycache__/DiagnosticContribution.cpython-312.pyc +0 -0
  285. armodel/models/M2/AUTOSARTemplates/DiagnosticExtract/__pycache__/__init__.cpython-312.pyc +0 -0
  286. armodel/models/M2/AUTOSARTemplates/EcuResourceTemplate/__pycache__/HwElementCategory.cpython-312.pyc +0 -0
  287. armodel/models/M2/AUTOSARTemplates/EcuResourceTemplate/__pycache__/__init__.cpython-312.pyc +0 -0
  288. armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/__pycache__/ARPackage.cpython-312.pyc +0 -0
  289. armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/__pycache__/ArObject.cpython-312.pyc +0 -0
  290. armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/__pycache__/ElementCollection.cpython-312.pyc +0 -0
  291. armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/__pycache__/EngineeringObject.cpython-312.pyc +0 -0
  292. armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/__pycache__/Identifiable.cpython-312.pyc +0 -0
  293. armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/__pycache__/PrimitiveTypes.cpython-312.pyc +0 -0
  294. armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/__pycache__/__init__.cpython-312.pyc +0 -0
  295. armodel/models/M2/AUTOSARTemplates/GenericStructure/__pycache__/AbstractStructure.cpython-312.pyc +0 -0
  296. armodel/models/M2/AUTOSARTemplates/GenericStructure/__pycache__/LifeCycles.cpython-312.pyc +0 -0
  297. armodel/models/M2/AUTOSARTemplates/GenericStructure/__pycache__/__init__.cpython-312.pyc +0 -0
  298. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Components/__pycache__/InstanceRefs.cpython-312.pyc +0 -0
  299. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Components/__pycache__/__init__.cpython-312.pyc +0 -0
  300. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Composition/__pycache__/InstanceRefs.cpython-312.pyc +0 -0
  301. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Composition/__pycache__/__init__.cpython-312.pyc +0 -0
  302. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Datatype/__pycache__/DataPrototypes.cpython-312.pyc +0 -0
  303. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Datatype/__pycache__/Datatypes.cpython-312.pyc +0 -0
  304. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Datatype/__pycache__/__init__.cpython-312.pyc +0 -0
  305. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/PortInterface/__pycache__/InstanceRefs.cpython-312.pyc +0 -0
  306. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/PortInterface/__pycache__/__init__.cpython-312.pyc +0 -0
  307. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/__pycache__/AccessCount.cpython-312.pyc +0 -0
  308. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/__pycache__/AutosarVariableRef.cpython-312.pyc +0 -0
  309. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/__pycache__/DataElements.cpython-312.pyc +0 -0
  310. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/__pycache__/IncludedDataTypes.cpython-312.pyc +0 -0
  311. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/__pycache__/InstanceRefsUsage.cpython-312.pyc +0 -0
  312. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/__pycache__/ModeDeclarationGroup.cpython-312.pyc +0 -0
  313. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/__pycache__/PerInstanceMemory.cpython-312.pyc +0 -0
  314. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/__pycache__/PortAPIOptions.cpython-312.pyc +0 -0
  315. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/__pycache__/RTEEvents.cpython-312.pyc +0 -0
  316. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/__pycache__/ServerCall.cpython-312.pyc +0 -0
  317. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/__pycache__/ServiceMapping.cpython-312.pyc +0 -0
  318. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/__pycache__/Trigger.cpython-312.pyc +0 -0
  319. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/__pycache__/__init__.cpython-312.pyc +0 -0
  320. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/__pycache__/Communication.cpython-312.pyc +0 -0
  321. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/__pycache__/EndToEndProtection.cpython-312.pyc +0 -0
  322. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/__pycache__/RPTScenario.cpython-312.pyc +0 -0
  323. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/__pycache__/SwcImplementation.cpython-312.pyc +0 -0
  324. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/__pycache__/__init__.cpython-312.pyc +0 -0
  325. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Can/__pycache__/CanCommunication.cpython-312.pyc +0 -0
  326. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Can/__pycache__/CanTopology.cpython-312.pyc +0 -0
  327. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Can/__pycache__/__init__.cpython-312.pyc +0 -0
  328. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet/__pycache__/EthernetCommunication.cpython-312.pyc +0 -0
  329. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet/__pycache__/EthernetFrame.cpython-312.pyc +0 -0
  330. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet/__pycache__/EthernetTopology.cpython-312.pyc +0 -0
  331. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet/__pycache__/NetworkEndpoint.cpython-312.pyc +0 -0
  332. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet/__pycache__/ServiceInstances.cpython-312.pyc +0 -0
  333. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet/__pycache__/__init__.cpython-312.pyc +0 -0
  334. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Flexray/__pycache__/FlexrayCommunication.cpython-312.pyc +0 -0
  335. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Flexray/__pycache__/FlexrayTopology.cpython-312.pyc +0 -0
  336. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Flexray/__pycache__/__init__.cpython-312.pyc +0 -0
  337. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Lin/__pycache__/LinCommunication.cpython-312.pyc +0 -0
  338. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Lin/__pycache__/LinTopology.cpython-312.pyc +0 -0
  339. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Lin/__pycache__/__init__.cpython-312.pyc +0 -0
  340. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/FibexCore/__pycache__/CoreCommunication.cpython-312.pyc +0 -0
  341. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/FibexCore/__pycache__/CoreTopology.cpython-312.pyc +0 -0
  342. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/FibexCore/__pycache__/EcuInstance.cpython-312.pyc +0 -0
  343. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/FibexCore/__pycache__/Timing.cpython-312.pyc +0 -0
  344. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/FibexCore/__pycache__/__init__.cpython-312.pyc +0 -0
  345. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/__pycache__/Fibex4Multiplatform.cpython-312.pyc +0 -0
  346. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/__pycache__/__init__.cpython-312.pyc +0 -0
  347. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Transformer/__pycache__/__init__.cpython-312.pyc +0 -0
  348. armodel/models/M2/AUTOSARTemplates/SystemTemplate/__pycache__/DataMapping.cpython-312.pyc +0 -0
  349. armodel/models/M2/AUTOSARTemplates/SystemTemplate/__pycache__/DiagnosticConnection.cpython-312.pyc +0 -0
  350. armodel/models/M2/AUTOSARTemplates/SystemTemplate/__pycache__/DoIp.cpython-312.pyc +0 -0
  351. armodel/models/M2/AUTOSARTemplates/SystemTemplate/__pycache__/EcuResourceMapping.cpython-312.pyc +0 -0
  352. armodel/models/M2/AUTOSARTemplates/SystemTemplate/__pycache__/InstanceRefs.cpython-312.pyc +0 -0
  353. armodel/models/M2/AUTOSARTemplates/SystemTemplate/__pycache__/NetworkManagement.cpython-312.pyc +0 -0
  354. armodel/models/M2/AUTOSARTemplates/SystemTemplate/__pycache__/RteEventToOsTaskMapping.cpython-312.pyc +0 -0
  355. armodel/models/M2/AUTOSARTemplates/SystemTemplate/__pycache__/SWmapping.cpython-312.pyc +0 -0
  356. armodel/models/M2/AUTOSARTemplates/SystemTemplate/__pycache__/SecureCommunication.cpython-312.pyc +0 -0
  357. armodel/models/M2/AUTOSARTemplates/SystemTemplate/__pycache__/TransportProtocols.cpython-312.pyc +0 -0
  358. armodel/models/M2/AUTOSARTemplates/SystemTemplate/__pycache__/__init__.cpython-312.pyc +0 -0
  359. armodel/models/M2/AUTOSARTemplates/__pycache__/AutosarTopLevelStructure.cpython-312.pyc +0 -0
  360. armodel/models/M2/AUTOSARTemplates/__pycache__/ECUCDescriptionTemplate.cpython-312.pyc +0 -0
  361. armodel/models/M2/AUTOSARTemplates/__pycache__/ECUCParameterDefTemplate.cpython-312.pyc +0 -0
  362. armodel/models/M2/AUTOSARTemplates/__pycache__/__init__.cpython-312.pyc +0 -0
  363. armodel/models/M2/MSR/AsamHdo/Constraints/__pycache__/GlobalConstraints.cpython-312.pyc +0 -0
  364. armodel/models/M2/MSR/AsamHdo/Constraints/__pycache__/__init__.cpython-312.pyc +0 -0
  365. armodel/models/M2/MSR/AsamHdo/__pycache__/AdminData.cpython-312.pyc +0 -0
  366. armodel/models/M2/MSR/AsamHdo/__pycache__/BaseTypes.cpython-312.pyc +0 -0
  367. armodel/models/M2/MSR/AsamHdo/__pycache__/ComputationMethod.cpython-312.pyc +0 -0
  368. armodel/models/M2/MSR/AsamHdo/__pycache__/SpecialData.cpython-312.pyc +0 -0
  369. armodel/models/M2/MSR/AsamHdo/__pycache__/Units.cpython-312.pyc +0 -0
  370. armodel/models/M2/MSR/AsamHdo/__pycache__/__init__.cpython-312.pyc +0 -0
  371. armodel/models/M2/MSR/CalibrationData/__pycache__/CalibrationValue.cpython-312.pyc +0 -0
  372. armodel/models/M2/MSR/CalibrationData/__pycache__/__init__.cpython-312.pyc +0 -0
  373. armodel/models/M2/MSR/DataDictionary/__pycache__/AuxillaryObjects.cpython-312.pyc +0 -0
  374. armodel/models/M2/MSR/DataDictionary/__pycache__/Axis.cpython-312.pyc +0 -0
  375. armodel/models/M2/MSR/DataDictionary/__pycache__/CalibrationParameter.cpython-312.pyc +0 -0
  376. armodel/models/M2/MSR/DataDictionary/__pycache__/DataDefProperties.cpython-312.pyc +0 -0
  377. armodel/models/M2/MSR/DataDictionary/__pycache__/RecordLayout.cpython-312.pyc +0 -0
  378. armodel/models/M2/MSR/DataDictionary/__pycache__/ServiceProcessTask.cpython-312.pyc +0 -0
  379. armodel/models/M2/MSR/DataDictionary/__pycache__/__init__.cpython-312.pyc +0 -0
  380. armodel/models/M2/MSR/Documentation/BlockElements/__pycache__/Figure.cpython-312.pyc +0 -0
  381. armodel/models/M2/MSR/Documentation/BlockElements/__pycache__/__init__.cpython-312.pyc +0 -0
  382. armodel/models/M2/MSR/Documentation/BlockElements.py +0 -18
  383. armodel/models/M2/MSR/Documentation/TextModel/BlockElements/__pycache__/ListElements.cpython-312.pyc +0 -0
  384. armodel/models/M2/MSR/Documentation/TextModel/BlockElements/__pycache__/PaginationAndView.cpython-312.pyc +0 -0
  385. armodel/models/M2/MSR/Documentation/TextModel/BlockElements/__pycache__/__init__.cpython-312.pyc +0 -0
  386. armodel/models/M2/MSR/Documentation/TextModel/__pycache__/LanguageDataModel.cpython-312.pyc +0 -0
  387. armodel/models/M2/MSR/Documentation/TextModel/__pycache__/MultilanguageData.cpython-312.pyc +0 -0
  388. armodel/models/M2/MSR/Documentation/TextModel/__pycache__/__init__.cpython-312.pyc +0 -0
  389. armodel/models/M2/MSR/Documentation/__pycache__/Annotation.cpython-312.pyc +0 -0
  390. armodel/models/M2/MSR/Documentation/__pycache__/__init__.cpython-312.pyc +0 -0
  391. armodel/models/M2/MSR/__pycache__/__init__.cpython-312.pyc +0 -0
  392. armodel/models/M2/__pycache__/__init__.cpython-312.pyc +0 -0
  393. armodel/models/__pycache__/__init__.cpython-312.pyc +0 -0
  394. armodel/models/utils/__pycache__/__init__.cpython-312.pyc +0 -0
  395. armodel/models/utils/__pycache__/uuid_mgr.cpython-312.pyc +0 -0
  396. armodel/parser/__pycache__/__init__.cpython-312.pyc +0 -0
  397. armodel/parser/__pycache__/abstract_arxml_parser.cpython-312.pyc +0 -0
  398. armodel/parser/__pycache__/arxml_parser.cpython-312.pyc +0 -0
  399. armodel/parser/__pycache__/file_parser.cpython-312.pyc +0 -0
  400. armodel/tests/__init__.py +0 -0
  401. armodel/tests/test_armodel/__init__.py +0 -0
  402. armodel/tests/test_armodel/models/__init__.py +0 -0
  403. armodel/tests/test_armodel/models/test_ECUCParameterDefTemplate.py +0 -116
  404. armodel/tests/test_armodel/models/test_Identifiable.py +0 -85
  405. armodel/tests/test_armodel/models/test_ar_object.py +0 -154
  406. armodel/tests/test_armodel/models/test_ar_package.py +0 -304
  407. armodel/tests/test_armodel/models/test_ar_ref.py +0 -81
  408. armodel/tests/test_armodel/models/test_bsw_module_template.py +0 -52
  409. armodel/tests/test_armodel/models/test_common_structure.py +0 -82
  410. armodel/tests/test_armodel/models/test_data_dictionary.py +0 -30
  411. armodel/tests/test_armodel/models/test_data_prototype.py +0 -93
  412. armodel/tests/test_armodel/models/test_datatype.py +0 -251
  413. armodel/tests/test_armodel/models/test_general_structure.py +0 -56
  414. armodel/tests/test_armodel/models/test_implementation.py +0 -27
  415. armodel/tests/test_armodel/models/test_m2_msr.py +0 -79
  416. armodel/tests/test_armodel/models/test_port_interface.py +0 -202
  417. armodel/tests/test_armodel/models/test_port_prototype.py +0 -15
  418. armodel/tests/test_armodel/parser/__init__.py +0 -0
  419. armodel/tests/test_armodel/parser/test_arxml_parser.py +0 -53
  420. armodel/tests/test_armodel/parser/test_bsw_module_descriiption.py +0 -218
  421. armodel/tests/test_armodel/parser/test_implementation_data_type.py +0 -247
  422. armodel/tests/test_armodel/parser/test_parse_bswmd.py +0 -202
  423. armodel/tests/test_armodel/parser/test_rte_event.py +0 -142
  424. armodel/tests/test_armodel/parser/test_runnable_entity.py +0 -135
  425. armodel/tests/test_armodel/parser/test_sw_components.py +0 -484
  426. armodel/tests/test_armodel/parser/test_system.py +0 -23
  427. armodel/writer/__pycache__/__init__.cpython-312.pyc +0 -0
  428. armodel/writer/__pycache__/abstract_arxml_writer.cpython-312.pyc +0 -0
  429. armodel/writer/__pycache__/arxml_writer.cpython-312.pyc +0 -0
  430. armodel-1.8.6.dist-info/RECORD +0 -360
  431. {armodel-1.8.6.dist-info → armodel-1.9.1.dist-info}/top_level.txt +0 -0
@@ -1,489 +1,488 @@
1
- from typing import Dict, List
2
-
3
- from .....M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.AccessCount import AbstractAccessPoint
4
- from .....M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.PortAPIOptions import PortAPIOption
5
- from .....M2.AUTOSARTemplates.CommonStructure.InternalBehavior import InternalBehavior
6
- from .....M2.AUTOSARTemplates.SWComponentTemplate.Datatype.DataPrototypes import ParameterDataPrototype, VariableDataPrototype
7
- from .....M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.IncludedDataTypes import IncludedDataTypeSet
8
- from .....M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.PerInstanceMemory import PerInstanceMemory
9
- from .....M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.RTEEvents import AsynchronousServerCallReturnsEvent, BackgroundEvent
10
- from .....M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.RTEEvents import DataSendCompletedEvent
11
- from .....M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.RTEEvents import DataReceivedEvent, InitEvent, InternalTriggerOccurredEvent
12
- from .....M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.RTEEvents import ModeSwitchedAckEvent, OperationInvokedEvent, RTEEvent
13
- from .....M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.RTEEvents import SwcModeSwitchEvent, TimingEvent
14
- from .....M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.ServiceMapping import SwcServiceDependency
15
- from .....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import ARLiteral, Boolean, RefType, ARBoolean
16
- from .....M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.DataElements import ParameterAccess, VariableAccess
17
- from .....M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.ServerCall import ServerCallPoint
18
- from .....M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.ModeDeclarationGroup import IncludedModeDeclarationGroupSet, ModeAccessPoint
19
- from .....M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.ModeDeclarationGroup import ModeSwitchPoint
20
- from .....M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.Trigger import ExternalTriggeringPoint, InternalTriggeringPoint
21
- from .....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.ArObject import ARObject
22
- from .....M2.AUTOSARTemplates.CommonStructure.InternalBehavior import ExecutableEntity
23
-
24
-
25
- class RunnableEntityArgument(ARObject):
26
- def __init__(self):
27
- super().__init__()
28
-
29
- self.symbol = None # type: ARLiteral
30
-
31
- def getSymbol(self):
32
- return self.symbol
33
-
34
- def setSymbol(self, value):
35
- self.symbol = value
36
- return self
37
-
38
-
39
- class AsynchronousServerCallResultPoint(AbstractAccessPoint):
40
- def __init__(self, parent: ARObject, short_name: str):
41
- super().__init__(parent, short_name)
42
-
43
- self.asynchronousServerCallPointRef = None # type: RefType
44
-
45
- def getAsynchronousServerCallPointRef(self):
46
- return self.asynchronousServerCallPointRef
47
-
48
- def setAsynchronousServerCallPointRef(self, value):
49
- self.asynchronousServerCallPointRef = value
50
- return self
51
-
52
-
53
- class AsynchronousServerCallPoint(ServerCallPoint):
54
- def __init__(self, parent: ARObject, short_name: str):
55
- super().__init__(parent, short_name)
56
-
57
-
58
- class SynchronousServerCallPoint(ServerCallPoint):
59
- def __init__(self, parent: ARObject, short_name: str):
60
- super().__init__(parent, short_name)
61
-
62
- self.calledFromWithinExclusiveAreaRef = None # type: RefType
63
-
64
- def getCalledFromWithinExclusiveAreaRef(self):
65
- return self.calledFromWithinExclusiveAreaRef
66
-
67
- def setCalledFromWithinExclusiveAreaRef(self, value):
68
- self.calledFromWithinExclusiveAreaRef = value
69
- return self
70
-
71
-
72
- class RunnableEntity(ExecutableEntity):
73
- def __init__(self, parent: ARObject, short_name: str):
74
- super().__init__(parent, short_name)
75
-
76
- self.arguments: List[RunnableEntityArgument] = []
77
- self.asynchronousServerCallResultPoints: List[AsynchronousServerCallResultPoint] = []
78
- self.canBeInvokedConcurrently: ARBoolean = None
79
- self.dataReadAccesses: List[VariableAccess] = []
80
- self.dataReceivePointByArguments: List[VariableAccess] = []
81
- self.dataReceivePointByValues: List[VariableAccess] = []
82
- self.dataSendPoints: List[VariableAccess] = []
83
- self.dataWriteAccesses: List[VariableAccess] = []
84
- self.externalTriggeringPoints: List[ExternalTriggeringPoint] = []
85
- self.internalTriggeringPoints: List[InternalTriggeringPoint] = []
86
- self.modeAccessPoints: List[ModeAccessPoint] = []
87
- self.modeSwitchPoints: List[ModeSwitchPoint] = []
88
- self.parameterAccesses: List[ParameterAccess] = []
89
- self.readLocalVariables: List[VariableAccess] = []
90
- self.serverCallPoints: List[ServerCallPoint] = []
91
- self.symbol: ARLiteral = None
92
- # type: Dict[str, WaitPoint]
93
- self.waitPoints = {}
94
- self.writtenLocalVariables: List[VariableAccess] = []
95
-
96
- def _createVariableAccess(self, short_name, variable_accesses: List[VariableAccess]):
97
- if not self.IsElementExists(short_name):
98
- variable_access = VariableAccess(self, short_name)
99
- self.addElement(variable_access)
100
- variable_accesses.append(variable_access)
101
- return self.getElement(short_name, VariableAccess)
102
-
103
- def getArguments(self):
104
- return self.arguments
105
-
106
- def addArgument(self, value):
107
- self.arguments.append(value)
108
- return self
109
-
110
- def getCanBeInvokedConcurrently(self):
111
- return self.canBeInvokedConcurrently
112
-
113
- def setCanBeInvokedConcurrently(self, value):
114
- self.canBeInvokedConcurrently = value
115
- return self
116
-
117
- def createDataReadAccess(self, short_name: str) -> VariableAccess:
118
- return self._createVariableAccess(short_name, self.dataReadAccesses)
119
-
120
- def getDataReadAccesses(self) -> List[VariableAccess]:
121
- return sorted(self.dataReadAccesses, key=lambda v: v.short_name)
122
-
123
- def createDataWriteAccess(self, short_name: str) -> VariableAccess:
124
- return self._createVariableAccess(short_name, self.dataWriteAccesses)
125
-
126
- def getDataWriteAccesses(self) -> List[VariableAccess]:
127
- return sorted(self.dataWriteAccesses, key=lambda v: v.short_name)
128
-
129
- def createDataReceivePointByArgument(self, short_name: str) -> VariableAccess:
130
- return self._createVariableAccess(short_name, self.dataReceivePointByArguments)
131
-
132
- def getDataReceivePointByArguments(self) -> List[VariableAccess]:
133
- return sorted(self.dataReceivePointByArguments, key=lambda v: v.short_name)
134
-
135
- def createDataReceivePointByValue(self, short_name: str) -> VariableAccess:
136
- return self._createVariableAccess(short_name, self.dataReceivePointByValues)
137
-
138
- def getDataReceivePointByValues(self) -> List[VariableAccess]:
139
- return sorted(self.dataReceivePointByValues, key=lambda v: v.short_name)
140
-
141
- def createDataSendPoint(self, short_name: str) -> VariableAccess:
142
- return self._createVariableAccess(short_name, self.dataSendPoints)
143
-
144
- def getDataSendPoints(self) -> List[VariableAccess]:
145
- # return sorted(self.dataSendPoints.values(), key=lambda v: v.short_name)
146
- return self.dataSendPoints
147
-
148
- def createReadLocalVariable(self, short_name: str) -> VariableAccess:
149
- return self._createVariableAccess(short_name, self.readLocalVariables)
150
-
151
- def getReadLocalVariables(self) -> List[VariableAccess]:
152
- # return sorted(self.readLocalVariables.values(), key=lambda v: v.short_name)
153
- return self.readLocalVariables
154
-
155
- def createWrittenLocalVariable(self, short_name: str) -> VariableAccess:
156
- return self._createVariableAccess(short_name, self.writtenLocalVariables)
157
-
158
- def getWrittenLocalVariables(self) -> List[VariableAccess]:
159
- return self.writtenLocalVariables
160
-
161
- def getParameterAccesses(self) -> List[ParameterAccess]:
162
- return list(sorted(filter(lambda a: isinstance(a, ParameterAccess), self.elements), key=lambda o: o.short_name))
163
-
164
- def createParameterAccess(self, short_name: str) -> ParameterAccess:
165
- if not self.IsElementExists(short_name):
166
- access = ParameterAccess(self, short_name)
167
- self.addElement(access)
168
- return self.getElement(short_name)
169
-
170
- def createSynchronousServerCallPoint(self, short_name: str) -> SynchronousServerCallPoint:
171
- if (short_name not in self.serverCallPoints):
172
- point = SynchronousServerCallPoint(self, short_name)
173
- self.addElement(point)
174
- return self.getElement(short_name)
175
- # self.serverCallPoints[short_name] = server_call_point
176
- # return self.serverCallPoints[short_name]
177
-
178
- def createAsynchronousServerCallPoint(self, short_name: str) -> AsynchronousServerCallPoint:
179
- if (short_name not in self.serverCallPoints):
180
- point = AsynchronousServerCallPoint(self, short_name)
181
- self.addElement(point)
182
- return self.getElement(short_name, AsynchronousServerCallPoint)
183
- # self.serverCallPoints[short_name] = server_call_point
184
- # return self.serverCallPoints[short_name]
185
-
186
- def createAsynchronousServerCallResultPoint(self, short_name: str) -> AsynchronousServerCallResultPoint:
187
- if (short_name not in self.serverCallPoints):
188
- point = AsynchronousServerCallResultPoint(self, short_name)
189
- self.addElement(point)
190
- return self.getElement(short_name)
191
-
192
- def getSynchronousServerCallPoint(self) -> List[SynchronousServerCallPoint]:
193
- return list(sorted(filter(lambda a: isinstance(a, SynchronousServerCallPoint), self.elements), key=lambda o: o.getShortName()))
194
-
195
- def getAsynchronousServerCallPoint(self) -> List[AsynchronousServerCallPoint]:
196
- return list(sorted(filter(lambda a: isinstance(a, AsynchronousServerCallPoint), self.elements), key=lambda o: o.getShortName()))
197
-
198
- def getAsynchronousServerCallResultPoints(self) -> List[AsynchronousServerCallResultPoint]:
199
- return list(sorted(filter(lambda a: isinstance(a, AsynchronousServerCallResultPoint), self.elements), key=lambda o: o.getShortName())) # noqa E501
200
-
201
- def getServerCallPoints(self) -> List[ServerCallPoint]:
202
- return list(sorted(filter(lambda a: isinstance(a, ServerCallPoint), self.elements), key=lambda o: o.getShortName()))
203
-
204
- def createInternalTriggeringPoint(self, short_name: str) -> InternalTriggeringPoint:
205
- if not self.IsElementExists(short_name):
206
- point = InternalTriggeringPoint(self, short_name)
207
- self.addElement(point)
208
- return self.getElement(short_name, InternalTriggeringPoint)
209
-
210
- def getInternalTriggeringPoints(self) -> List[InternalTriggeringPoint]:
211
- return filter(lambda o: isinstance(o, InternalTriggeringPoint), self.elements)
212
-
213
- def getModeAccessPoints(self) -> List[ModeAccessPoint]:
214
- return self.modeAccessPoints
215
-
216
- def addModeAccessPoint(self, value):
217
- self.modeAccessPoints.append(value)
218
-
219
- def getModeSwitchPoints(self) -> List[ModeSwitchPoint]:
220
- return list(sorted(filter(lambda a: isinstance(a, ModeSwitchPoint), self.elements), key=lambda o: o.short_name))
221
-
222
- def createModeSwitchPoint(self, short_name: str) -> ModeSwitchPoint:
223
- if not self.IsElementExists(short_name):
224
- access = ModeSwitchPoint(self, short_name)
225
- self.addElement(access)
226
- self.modeSwitchPoints.append(access)
227
- return self.getElement(short_name, ModeSwitchPoint)
228
-
229
- def getSymbol(self):
230
- return self.symbol
231
-
232
- def setSymbol(self, value):
233
- self.symbol = value
234
- return self
235
-
236
-
237
- class SwcInternalBehavior(InternalBehavior):
238
- def __init__(self, parent: ARObject, short_name: str):
239
- super().__init__(parent, short_name)
240
-
241
- # type: List[VariableDataPrototype]
242
- self.arTypedPerInstanceMemories = []
243
- # type: List[RTEEvent]
244
- self.events = []
245
- # type: List[SwcExclusiveAreaPolicy]
246
- self.exclusiveAreaPolicies = []
247
- # type: List[VariableDataPrototype]
248
- self.explicitInterRunnableVariables = []
249
- self.handleTerminationAndRestart = None # type: str
250
- # type: List[VariableDataPrototype]
251
- self.implicitInterRunnableVariables = []
252
- # type: List[IncludedDataTypeSet]
253
- self.includedDataTypeSets = []
254
- # type: List[IncludedModeDeclarationGroupSet]
255
- self.includedModeDeclarationGroupSets = []
256
- # type: List[InstantiationDataDefProps]
257
- self.instantiationDataDefProps = []
258
- # type: List[PerInstanceMemory]
259
- self.perInstanceMemories = []
260
- # type: List[ParameterDataPrototype]
261
- self.perInstanceParameters = []
262
- # type: List[PortAPIOption]
263
- self.portAPIOptions = []
264
- # type: List[RunnableEntity]
265
- self.runnables = []
266
- # type: List[SwcServiceDependency]
267
- self.serviceDependencies = []
268
- # type: List[ParameterDataPrototype]
269
- self.sharedParameters = []
270
- self.supportsMultipleInstantiation = None # type: Boolean
271
- # type: VariationPointProxy
272
- self.variationPointProxies = []
273
-
274
- def getArTypedPerInstanceMemories(self) -> List[VariableDataPrototype]:
275
- return self.arTypedPerInstanceMemories
276
-
277
- def createArTypedPerInstanceMemory(self, short_name: str) -> VariableDataPrototype:
278
- if not self.IsElementExists(short_name):
279
- prototype = VariableDataPrototype(self, short_name)
280
- self.addElement(prototype)
281
- self.arTypedPerInstanceMemories.append(prototype)
282
- return self.getElement(short_name)
283
-
284
- def getExplicitInterRunnableVariables(self) -> List[VariableDataPrototype]:
285
- return self.explicitInterRunnableVariables
286
-
287
- def createExplicitInterRunnableVariable(self, short_name: str) -> VariableDataPrototype:
288
- if not self.IsElementExists(short_name):
289
- prototype = VariableDataPrototype(self, short_name)
290
- self.addElement(prototype)
291
- self.explicitInterRunnableVariables.append(prototype)
292
- return self.getElement(short_name)
293
-
294
- def getHandleTerminationAndRestart(self):
295
- return self.handleTerminationAndRestart
296
-
297
- def setHandleTerminationAndRestart(self, value):
298
- self.handleTerminationAndRestart = value
299
- return self
300
-
301
- def getImplicitInterRunnableVariables(self) -> List[VariableDataPrototype]:
302
- return self.implicitInterRunnableVariables
303
-
304
- def getPerInstanceMemories(self) -> List[PerInstanceMemory]:
305
- return self.perInstanceMemories
306
-
307
- def getPerInstanceParameters(self) -> List[ParameterDataPrototype]:
308
- return self.perInstanceParameters
309
-
310
- def addPortAPIOption(self, option: PortAPIOption):
311
- self.portAPIOptions.append(option)
312
-
313
- def getPortAPIOptions(self) -> List[PortAPIOption]:
314
- return self.portAPIOptions
315
-
316
- def addIncludedDataTypeSet(self, set: IncludedDataTypeSet):
317
- self.includedDataTypeSets.append(set)
318
-
319
- def getIncludedDataTypeSets(self) -> List[IncludedDataTypeSet]:
320
- return self.includedDataTypeSets
321
-
322
- def getIncludedModeDeclarationGroupSets(self):
323
- return self.includedModeDeclarationGroupSets
324
-
325
- def addIncludedModeDeclarationGroupSet(self, value):
326
- if value is not None:
327
- self.includedModeDeclarationGroupSets.append(value)
328
- return self
329
-
330
- def createOperationInvokedEvent(self, short_name: str) -> OperationInvokedEvent:
331
- if not self.IsElementExists(short_name):
332
- event = OperationInvokedEvent(self, short_name)
333
- self.addElement(event)
334
- return self.getElement(short_name, OperationInvokedEvent)
335
-
336
- def createTimingEvent(self, short_name: str) -> TimingEvent:
337
- if not self.IsElementExists(short_name):
338
- event = TimingEvent(self, short_name)
339
- self.addElement(event)
340
- return self.getElement(short_name, TimingEvent)
341
-
342
- def createInitEvent(self, short_name: str) -> InitEvent:
343
- if not self.IsElementExists(short_name):
344
- event = InitEvent(self, short_name)
345
- self.addElement(event)
346
- return self.getElement(short_name, InitEvent)
347
-
348
- def createAsynchronousServerCallReturnsEvent(self, short_name: str) -> AsynchronousServerCallReturnsEvent:
349
- if not self.IsElementExists(short_name):
350
- event = AsynchronousServerCallReturnsEvent(self, short_name)
351
- self.addElement(event)
352
- return self.getElement(short_name, AsynchronousServerCallReturnsEvent)
353
-
354
- def createDataReceivedEvent(self, short_name: str) -> DataReceivedEvent:
355
- if not self.IsElementExists(short_name):
356
- event = DataReceivedEvent(self, short_name)
357
- self.addElement(event)
358
- return self.getElement(short_name, DataReceivedEvent)
359
-
360
- def createSwcModeSwitchEvent(self, short_name: str) -> SwcModeSwitchEvent:
361
- if not self.IsElementExists(short_name):
362
- event = SwcModeSwitchEvent(self, short_name)
363
- self.addElement(event)
364
- return self.getElement(short_name, SwcModeSwitchEvent)
365
-
366
- def createInternalTriggerOccurredEvent(self, short_name: str) -> InternalTriggerOccurredEvent:
367
- if not self.IsElementExists(short_name):
368
- event = InternalTriggerOccurredEvent(self, short_name)
369
- self.addElement(event)
370
- return self.getElement(short_name, InternalTriggerOccurredEvent)
371
-
372
- def createSwcServiceDependency(self, short_name: str) -> SwcServiceDependency:
373
- if not self.IsElementExists(short_name):
374
- event = SwcServiceDependency(self, short_name)
375
- self.addElement(event)
376
- return self.getElement(short_name, SwcServiceDependency)
377
-
378
- def createModeSwitchedAckEvent(self, short_name: str) -> ModeSwitchedAckEvent:
379
- if not self.IsElementExists(short_name):
380
- event = ModeSwitchedAckEvent(self, short_name)
381
- self.addElement(event)
382
- return self.getElement(short_name, ModeSwitchedAckEvent)
383
-
384
- def createBackgroundEvent(self, short_name: str) -> BackgroundEvent:
385
- if not self.IsElementExists(short_name):
386
- event = BackgroundEvent(self, short_name)
387
- self.addElement(event)
388
- return self.getElement(short_name, BackgroundEvent)
389
-
390
- def createDataSendCompletedEvent(self, short_name: str) -> DataSendCompletedEvent:
391
- if not self.IsElementExists(short_name):
392
- event = DataSendCompletedEvent(self, short_name)
393
- self.addElement(event)
394
- return self.getElement(short_name, DataSendCompletedEvent)
395
-
396
- def getRteEvents(self) -> List[RTEEvent]:
397
- return sorted(filter(lambda c: isinstance(c, RTEEvent), self.elements), key=lambda e: e.short_name)
398
-
399
- def getOperationInvokedEvents(self) -> List[OperationInvokedEvent]:
400
- return sorted(filter(lambda c: isinstance(c, OperationInvokedEvent), self.elements), key=lambda e: e.short_name)
401
-
402
- def getInitEvents(self) -> List[InitEvent]:
403
- return sorted(filter(lambda c: isinstance(c, InitEvent), self.elements), key=lambda e: e.short_name)
404
-
405
- def getTimingEvents(self) -> List[TimingEvent]:
406
- return sorted(filter(lambda c: isinstance(c, TimingEvent), self.elements), key=lambda e: e.short_name)
407
-
408
- def getDataReceivedEvents(self) -> List[DataReceivedEvent]:
409
- return sorted(filter(lambda c: isinstance(c, DataReceivedEvent), self.elements), key=lambda e: e.short_name)
410
-
411
- def getSwcModeSwitchEvents(self) -> List[SwcModeSwitchEvent]:
412
- return sorted(filter(lambda c: isinstance(c, SwcModeSwitchEvent), self.elements), key=lambda e: e.short_name)
413
-
414
- def getInternalTriggerOccurredEvents(self) -> List[InternalTriggerOccurredEvent]:
415
- return sorted(filter(lambda c: isinstance(c, InternalTriggerOccurredEvent), self.elements), key=lambda e: e.short_name)
416
-
417
- def getModeSwitchedAckEvents(self) -> List[ModeSwitchedAckEvent]:
418
- return sorted(filter(lambda c: isinstance(c, ModeSwitchedAckEvent), self.elements), key=lambda e: e.short_name)
419
-
420
- def getBackgroundEvents(self) -> List[BackgroundEvent]:
421
- return sorted(filter(lambda c: isinstance(c, BackgroundEvent), self.elements), key=lambda e: e.short_name)
422
-
423
- def getDataSendCompletedEvents(self) -> List[DataSendCompletedEvent]:
424
- return sorted(filter(lambda c: isinstance(c, DataSendCompletedEvent), self.elements), key=lambda e: e.short_name)
425
-
426
- def getSwcServiceDependencies(self) -> List[SwcServiceDependency]:
427
- return sorted(filter(lambda c: isinstance(c, SwcServiceDependency), self.elements), key=lambda e: e.short_name)
428
-
429
- def getEvent(self, short_name: str) -> RTEEvent:
430
- '''
431
- if (not isinstance(self.elements[short_name], RTEEvent)):
432
- raise ValueError("Invalid Event Type <%s> of <%s>" %
433
- type(self.elements[short_name]), short_name)
434
- return self.elements[short_name]'
435
- '''
436
- return self.getElement(short_name, RTEEvent)
437
-
438
- def createImplicitInterRunnableVariable(self, short_name: str) -> VariableDataPrototype:
439
- if not self.IsElementExists(short_name):
440
- prototype = VariableDataPrototype(self, short_name)
441
- self.addElement(prototype)
442
- self.implicitInterRunnableVariables.append(prototype)
443
- return self.getElement(short_name)
444
-
445
- def createPerInstanceMemory(self, short_name: str) -> PerInstanceMemory:
446
- if not self.IsElementExists(short_name):
447
- memory = PerInstanceMemory(self, short_name)
448
- self.addElement(memory)
449
- self.perInstanceMemories.append(memory)
450
- return self.getElement(short_name)
451
-
452
- def createPerInstanceParameter(self, short_name: str) -> ParameterDataPrototype:
453
- if not self.IsElementExists(short_name):
454
- prototype = ParameterDataPrototype(self, short_name)
455
- self.addElement(prototype)
456
- self.perInstanceParameters.append(prototype)
457
- return self.getElement(short_name)
458
-
459
- def getVariableDataPrototypes(self) -> List[VariableDataPrototype]:
460
- return sorted(filter(lambda c: isinstance(c, VariableDataPrototype), self.elements), key=lambda e: e.short_name)
461
-
462
- def createRunnableEntity(self, short_name: str) -> RunnableEntity:
463
- if not self.IsElementExists(short_name):
464
- runnable = RunnableEntity(self, short_name)
465
- self.addElement(runnable)
466
- return self.getElement(short_name)
467
-
468
- def getRunnableEntities(self) -> List[RunnableEntity]:
469
- return sorted(filter(lambda c: isinstance(c, RunnableEntity), self.elements), key=lambda r: r.short_name)
470
-
471
- def getRunnableEntity(self, short_name) -> RunnableEntity:
472
- return self.getElement(short_name, RunnableEntity)
473
-
474
- def getSharedParameters(self) -> List[ParameterDataPrototype]:
475
- return self.sharedParameters
476
-
477
- def createSharedParameter(self, short_name: str) -> ParameterDataPrototype:
478
- if not self.IsElementExists(short_name):
479
- memory = ParameterDataPrototype(self, short_name)
480
- self.addElement(memory)
481
- self.sharedParameters.append(memory)
482
- return self.getElement(short_name)
483
-
484
- def getSupportsMultipleInstantiation(self):
485
- return self.supportsMultipleInstantiation
486
-
487
- def setSupportsMultipleInstantiation(self, value):
488
- self.supportsMultipleInstantiation = value
489
- return self
1
+ from typing import Dict, List
2
+
3
+ from armodel.models.M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.AccessCount import AbstractAccessPoint
4
+ from armodel.models.M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.PortAPIOptions import PortAPIOption
5
+ from armodel.models.M2.AUTOSARTemplates.CommonStructure.InternalBehavior import InternalBehavior
6
+ from armodel.models.M2.AUTOSARTemplates.SWComponentTemplate.Datatype.DataPrototypes import ParameterDataPrototype, VariableDataPrototype
7
+ from armodel.models.M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.IncludedDataTypes import IncludedDataTypeSet
8
+ from armodel.models.M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.PerInstanceMemory import PerInstanceMemory
9
+ from armodel.models.M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.RTEEvents import AsynchronousServerCallReturnsEvent, BackgroundEvent
10
+ from armodel.models.M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.RTEEvents import DataSendCompletedEvent
11
+ from armodel.models.M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.RTEEvents import DataReceivedEvent, InitEvent, InternalTriggerOccurredEvent
12
+ from armodel.models.M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.RTEEvents import ModeSwitchedAckEvent, OperationInvokedEvent, RTEEvent
13
+ from armodel.models.M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.RTEEvents import SwcModeSwitchEvent, TimingEvent
14
+ from armodel.models.M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.ServiceMapping import SwcServiceDependency
15
+ from armodel.models.M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import ARLiteral, Boolean, RefType, ARBoolean
16
+ from armodel.models.M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.DataElements import ParameterAccess, VariableAccess
17
+ from armodel.models.M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.ServerCall import ServerCallPoint
18
+ from armodel.models.M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.ModeDeclarationGroup import IncludedModeDeclarationGroupSet, ModeAccessPoint
19
+ from armodel.models.M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.ModeDeclarationGroup import ModeSwitchPoint
20
+ from armodel.models.M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.Trigger import ExternalTriggeringPoint, InternalTriggeringPoint
21
+ from armodel.models.M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.ArObject import ARObject
22
+ from armodel.models.M2.AUTOSARTemplates.CommonStructure.InternalBehavior import ExecutableEntity
23
+
24
+
25
+ class RunnableEntityArgument(ARObject):
26
+ def __init__(self):
27
+ super().__init__()
28
+
29
+ self.symbol = None # type: ARLiteral
30
+
31
+ def getSymbol(self):
32
+ return self.symbol
33
+
34
+ def setSymbol(self, value):
35
+ self.symbol = value
36
+ return self
37
+
38
+
39
+ class AsynchronousServerCallResultPoint(AbstractAccessPoint):
40
+ def __init__(self, parent: ARObject, short_name: str):
41
+ super().__init__(parent, short_name)
42
+
43
+ self.asynchronousServerCallPointRef = None # type: RefType
44
+
45
+ def getAsynchronousServerCallPointRef(self):
46
+ return self.asynchronousServerCallPointRef
47
+
48
+ def setAsynchronousServerCallPointRef(self, value):
49
+ self.asynchronousServerCallPointRef = value
50
+ return self
51
+
52
+
53
+ class AsynchronousServerCallPoint(ServerCallPoint):
54
+ def __init__(self, parent: ARObject, short_name: str):
55
+ super().__init__(parent, short_name)
56
+
57
+
58
+ class SynchronousServerCallPoint(ServerCallPoint):
59
+ def __init__(self, parent: ARObject, short_name: str):
60
+ super().__init__(parent, short_name)
61
+
62
+ self.calledFromWithinExclusiveAreaRef = None # type: RefType
63
+
64
+ def getCalledFromWithinExclusiveAreaRef(self):
65
+ return self.calledFromWithinExclusiveAreaRef
66
+
67
+ def setCalledFromWithinExclusiveAreaRef(self, value):
68
+ self.calledFromWithinExclusiveAreaRef = value
69
+ return self
70
+
71
+
72
+ class RunnableEntity(ExecutableEntity):
73
+ def __init__(self, parent: ARObject, short_name: str):
74
+ super().__init__(parent, short_name)
75
+
76
+ self.arguments: List[RunnableEntityArgument] = []
77
+ self.asynchronousServerCallResultPoints: List[AsynchronousServerCallResultPoint] = []
78
+ self.canBeInvokedConcurrently: ARBoolean = None
79
+ self.dataReadAccesses: List[VariableAccess] = []
80
+ self.dataReceivePointByArguments: List[VariableAccess] = []
81
+ self.dataReceivePointByValues: List[VariableAccess] = []
82
+ self.dataSendPoints: List[VariableAccess] = []
83
+ self.dataWriteAccesses: List[VariableAccess] = []
84
+ self.externalTriggeringPoints: List[ExternalTriggeringPoint] = []
85
+ self.internalTriggeringPoints: List[InternalTriggeringPoint] = []
86
+ self.modeAccessPoints: List[ModeAccessPoint] = []
87
+ self.modeSwitchPoints: List[ModeSwitchPoint] = []
88
+ self.parameterAccesses: List[ParameterAccess] = []
89
+ self.readLocalVariables: List[VariableAccess] = []
90
+ self.serverCallPoints: List[ServerCallPoint] = []
91
+ self.symbol: ARLiteral = None
92
+ self.waitPoints = {} # type: Dict[str, WaitPoint]
93
+ self.writtenLocalVariables: List[VariableAccess] = []
94
+
95
+ def _createVariableAccess(self, short_name, variable_accesses: List[VariableAccess]):
96
+ if not self.IsElementExists(short_name):
97
+ variable_access = VariableAccess(self, short_name)
98
+ self.addElement(variable_access)
99
+ variable_accesses.append(variable_access)
100
+ return self.getElement(short_name, VariableAccess)
101
+
102
+ def getArguments(self):
103
+ return self.arguments
104
+
105
+ def addArgument(self, value):
106
+ self.arguments.append(value)
107
+ return self
108
+
109
+ def getCanBeInvokedConcurrently(self):
110
+ return self.canBeInvokedConcurrently
111
+
112
+ def setCanBeInvokedConcurrently(self, value):
113
+ self.canBeInvokedConcurrently = value
114
+ return self
115
+
116
+ def createDataReadAccess(self, short_name: str) -> VariableAccess:
117
+ return self._createVariableAccess(short_name, self.dataReadAccesses)
118
+
119
+ def getDataReadAccesses(self) -> List[VariableAccess]:
120
+ return sorted(self.dataReadAccesses, key=lambda v: v.short_name)
121
+
122
+ def createDataWriteAccess(self, short_name: str) -> VariableAccess:
123
+ return self._createVariableAccess(short_name, self.dataWriteAccesses)
124
+
125
+ def getDataWriteAccesses(self) -> List[VariableAccess]:
126
+ return sorted(self.dataWriteAccesses, key=lambda v: v.short_name)
127
+
128
+ def createDataReceivePointByArgument(self, short_name: str) -> VariableAccess:
129
+ return self._createVariableAccess(short_name, self.dataReceivePointByArguments)
130
+
131
+ def getDataReceivePointByArguments(self) -> List[VariableAccess]:
132
+ return sorted(self.dataReceivePointByArguments, key=lambda v: v.short_name)
133
+
134
+ def createDataReceivePointByValue(self, short_name: str) -> VariableAccess:
135
+ return self._createVariableAccess(short_name, self.dataReceivePointByValues)
136
+
137
+ def getDataReceivePointByValues(self) -> List[VariableAccess]:
138
+ return sorted(self.dataReceivePointByValues, key=lambda v: v.short_name)
139
+
140
+ def createDataSendPoint(self, short_name: str) -> VariableAccess:
141
+ return self._createVariableAccess(short_name, self.dataSendPoints)
142
+
143
+ def getDataSendPoints(self) -> List[VariableAccess]:
144
+ # return sorted(self.dataSendPoints.values(), key=lambda v: v.short_name)
145
+ return self.dataSendPoints
146
+
147
+ def createReadLocalVariable(self, short_name: str) -> VariableAccess:
148
+ return self._createVariableAccess(short_name, self.readLocalVariables)
149
+
150
+ def getReadLocalVariables(self) -> List[VariableAccess]:
151
+ # return sorted(self.readLocalVariables.values(), key=lambda v: v.short_name)
152
+ return self.readLocalVariables
153
+
154
+ def createWrittenLocalVariable(self, short_name: str) -> VariableAccess:
155
+ return self._createVariableAccess(short_name, self.writtenLocalVariables)
156
+
157
+ def getWrittenLocalVariables(self) -> List[VariableAccess]:
158
+ return self.writtenLocalVariables
159
+
160
+ def getParameterAccesses(self) -> List[ParameterAccess]:
161
+ return list(sorted(filter(lambda a: isinstance(a, ParameterAccess), self.elements), key=lambda o: o.short_name))
162
+
163
+ def createParameterAccess(self, short_name: str) -> ParameterAccess:
164
+ if not self.IsElementExists(short_name):
165
+ access = ParameterAccess(self, short_name)
166
+ self.addElement(access)
167
+ return self.getElement(short_name)
168
+
169
+ def createSynchronousServerCallPoint(self, short_name: str) -> SynchronousServerCallPoint:
170
+ if (short_name not in self.serverCallPoints):
171
+ point = SynchronousServerCallPoint(self, short_name)
172
+ self.addElement(point)
173
+ return self.getElement(short_name)
174
+ # self.serverCallPoints[short_name] = server_call_point
175
+ # return self.serverCallPoints[short_name]
176
+
177
+ def createAsynchronousServerCallPoint(self, short_name: str) -> AsynchronousServerCallPoint:
178
+ if (short_name not in self.serverCallPoints):
179
+ point = AsynchronousServerCallPoint(self, short_name)
180
+ self.addElement(point)
181
+ return self.getElement(short_name, AsynchronousServerCallPoint)
182
+ # self.serverCallPoints[short_name] = server_call_point
183
+ # return self.serverCallPoints[short_name]
184
+
185
+ def createAsynchronousServerCallResultPoint(self, short_name: str) -> AsynchronousServerCallResultPoint:
186
+ if (short_name not in self.serverCallPoints):
187
+ point = AsynchronousServerCallResultPoint(self, short_name)
188
+ self.addElement(point)
189
+ return self.getElement(short_name)
190
+
191
+ def getSynchronousServerCallPoint(self) -> List[SynchronousServerCallPoint]:
192
+ return list(sorted(filter(lambda a: isinstance(a, SynchronousServerCallPoint), self.elements), key=lambda o: o.getShortName()))
193
+
194
+ def getAsynchronousServerCallPoint(self) -> List[AsynchronousServerCallPoint]:
195
+ return list(sorted(filter(lambda a: isinstance(a, AsynchronousServerCallPoint), self.elements), key=lambda o: o.getShortName()))
196
+
197
+ def getAsynchronousServerCallResultPoints(self) -> List[AsynchronousServerCallResultPoint]:
198
+ return list(sorted(filter(lambda a: isinstance(a, AsynchronousServerCallResultPoint), self.elements), key=lambda o: o.getShortName())) # noqa E501
199
+
200
+ def getServerCallPoints(self) -> List[ServerCallPoint]:
201
+ return list(sorted(filter(lambda a: isinstance(a, ServerCallPoint), self.elements), key=lambda o: o.getShortName()))
202
+
203
+ def createInternalTriggeringPoint(self, short_name: str) -> InternalTriggeringPoint:
204
+ if not self.IsElementExists(short_name):
205
+ point = InternalTriggeringPoint(self, short_name)
206
+ self.addElement(point)
207
+ return self.getElement(short_name, InternalTriggeringPoint)
208
+
209
+ def getInternalTriggeringPoints(self) -> List[InternalTriggeringPoint]:
210
+ return filter(lambda o: isinstance(o, InternalTriggeringPoint), self.elements)
211
+
212
+ def getModeAccessPoints(self) -> List[ModeAccessPoint]:
213
+ return self.modeAccessPoints
214
+
215
+ def addModeAccessPoint(self, value):
216
+ self.modeAccessPoints.append(value)
217
+
218
+ def getModeSwitchPoints(self) -> List[ModeSwitchPoint]:
219
+ return list(sorted(filter(lambda a: isinstance(a, ModeSwitchPoint), self.elements), key=lambda o: o.short_name))
220
+
221
+ def createModeSwitchPoint(self, short_name: str) -> ModeSwitchPoint:
222
+ if not self.IsElementExists(short_name):
223
+ access = ModeSwitchPoint(self, short_name)
224
+ self.addElement(access)
225
+ self.modeSwitchPoints.append(access)
226
+ return self.getElement(short_name, ModeSwitchPoint)
227
+
228
+ def getSymbol(self):
229
+ return self.symbol
230
+
231
+ def setSymbol(self, value):
232
+ self.symbol = value
233
+ return self
234
+
235
+
236
+ class SwcInternalBehavior(InternalBehavior):
237
+ def __init__(self, parent: ARObject, short_name: str):
238
+ super().__init__(parent, short_name)
239
+
240
+ # type: List[VariableDataPrototype]
241
+ self.arTypedPerInstanceMemories = []
242
+ # type: List[RTEEvent]
243
+ self.events = []
244
+ # type: List[SwcExclusiveAreaPolicy]
245
+ self.exclusiveAreaPolicies = []
246
+ # type: List[VariableDataPrototype]
247
+ self.explicitInterRunnableVariables = []
248
+ self.handleTerminationAndRestart = None # type: str
249
+ # type: List[VariableDataPrototype]
250
+ self.implicitInterRunnableVariables = []
251
+ # type: List[IncludedDataTypeSet]
252
+ self.includedDataTypeSets = []
253
+ # type: List[IncludedModeDeclarationGroupSet]
254
+ self.includedModeDeclarationGroupSets = []
255
+ # type: List[InstantiationDataDefProps]
256
+ self.instantiationDataDefProps = []
257
+ # type: List[PerInstanceMemory]
258
+ self.perInstanceMemories = []
259
+ # type: List[ParameterDataPrototype]
260
+ self.perInstanceParameters = []
261
+ # type: List[PortAPIOption]
262
+ self.portAPIOptions = []
263
+ # type: List[RunnableEntity]
264
+ self.runnables = []
265
+ # type: List[SwcServiceDependency]
266
+ self.serviceDependencies = []
267
+ # type: List[ParameterDataPrototype]
268
+ self.sharedParameters = []
269
+ self.supportsMultipleInstantiation = None # type: Boolean
270
+ # type: VariationPointProxy
271
+ self.variationPointProxies = []
272
+
273
+ def getArTypedPerInstanceMemories(self) -> List[VariableDataPrototype]:
274
+ return self.arTypedPerInstanceMemories
275
+
276
+ def createArTypedPerInstanceMemory(self, short_name: str) -> VariableDataPrototype:
277
+ if not self.IsElementExists(short_name):
278
+ prototype = VariableDataPrototype(self, short_name)
279
+ self.addElement(prototype)
280
+ self.arTypedPerInstanceMemories.append(prototype)
281
+ return self.getElement(short_name)
282
+
283
+ def getExplicitInterRunnableVariables(self) -> List[VariableDataPrototype]:
284
+ return self.explicitInterRunnableVariables
285
+
286
+ def createExplicitInterRunnableVariable(self, short_name: str) -> VariableDataPrototype:
287
+ if not self.IsElementExists(short_name):
288
+ prototype = VariableDataPrototype(self, short_name)
289
+ self.addElement(prototype)
290
+ self.explicitInterRunnableVariables.append(prototype)
291
+ return self.getElement(short_name)
292
+
293
+ def getHandleTerminationAndRestart(self):
294
+ return self.handleTerminationAndRestart
295
+
296
+ def setHandleTerminationAndRestart(self, value):
297
+ self.handleTerminationAndRestart = value
298
+ return self
299
+
300
+ def getImplicitInterRunnableVariables(self) -> List[VariableDataPrototype]:
301
+ return self.implicitInterRunnableVariables
302
+
303
+ def getPerInstanceMemories(self) -> List[PerInstanceMemory]:
304
+ return self.perInstanceMemories
305
+
306
+ def getPerInstanceParameters(self) -> List[ParameterDataPrototype]:
307
+ return self.perInstanceParameters
308
+
309
+ def addPortAPIOption(self, option: PortAPIOption):
310
+ self.portAPIOptions.append(option)
311
+
312
+ def getPortAPIOptions(self) -> List[PortAPIOption]:
313
+ return self.portAPIOptions
314
+
315
+ def addIncludedDataTypeSet(self, set: IncludedDataTypeSet):
316
+ self.includedDataTypeSets.append(set)
317
+
318
+ def getIncludedDataTypeSets(self) -> List[IncludedDataTypeSet]:
319
+ return self.includedDataTypeSets
320
+
321
+ def getIncludedModeDeclarationGroupSets(self):
322
+ return self.includedModeDeclarationGroupSets
323
+
324
+ def addIncludedModeDeclarationGroupSet(self, value):
325
+ if value is not None:
326
+ self.includedModeDeclarationGroupSets.append(value)
327
+ return self
328
+
329
+ def createOperationInvokedEvent(self, short_name: str) -> OperationInvokedEvent:
330
+ if not self.IsElementExists(short_name):
331
+ event = OperationInvokedEvent(self, short_name)
332
+ self.addElement(event)
333
+ return self.getElement(short_name, OperationInvokedEvent)
334
+
335
+ def createTimingEvent(self, short_name: str) -> TimingEvent:
336
+ if not self.IsElementExists(short_name):
337
+ event = TimingEvent(self, short_name)
338
+ self.addElement(event)
339
+ return self.getElement(short_name, TimingEvent)
340
+
341
+ def createInitEvent(self, short_name: str) -> InitEvent:
342
+ if not self.IsElementExists(short_name):
343
+ event = InitEvent(self, short_name)
344
+ self.addElement(event)
345
+ return self.getElement(short_name, InitEvent)
346
+
347
+ def createAsynchronousServerCallReturnsEvent(self, short_name: str) -> AsynchronousServerCallReturnsEvent:
348
+ if not self.IsElementExists(short_name):
349
+ event = AsynchronousServerCallReturnsEvent(self, short_name)
350
+ self.addElement(event)
351
+ return self.getElement(short_name, AsynchronousServerCallReturnsEvent)
352
+
353
+ def createDataReceivedEvent(self, short_name: str) -> DataReceivedEvent:
354
+ if not self.IsElementExists(short_name):
355
+ event = DataReceivedEvent(self, short_name)
356
+ self.addElement(event)
357
+ return self.getElement(short_name, DataReceivedEvent)
358
+
359
+ def createSwcModeSwitchEvent(self, short_name: str) -> SwcModeSwitchEvent:
360
+ if not self.IsElementExists(short_name):
361
+ event = SwcModeSwitchEvent(self, short_name)
362
+ self.addElement(event)
363
+ return self.getElement(short_name, SwcModeSwitchEvent)
364
+
365
+ def createInternalTriggerOccurredEvent(self, short_name: str) -> InternalTriggerOccurredEvent:
366
+ if not self.IsElementExists(short_name):
367
+ event = InternalTriggerOccurredEvent(self, short_name)
368
+ self.addElement(event)
369
+ return self.getElement(short_name, InternalTriggerOccurredEvent)
370
+
371
+ def createSwcServiceDependency(self, short_name: str) -> SwcServiceDependency:
372
+ if not self.IsElementExists(short_name):
373
+ event = SwcServiceDependency(self, short_name)
374
+ self.addElement(event)
375
+ return self.getElement(short_name, SwcServiceDependency)
376
+
377
+ def createModeSwitchedAckEvent(self, short_name: str) -> ModeSwitchedAckEvent:
378
+ if not self.IsElementExists(short_name):
379
+ event = ModeSwitchedAckEvent(self, short_name)
380
+ self.addElement(event)
381
+ return self.getElement(short_name, ModeSwitchedAckEvent)
382
+
383
+ def createBackgroundEvent(self, short_name: str) -> BackgroundEvent:
384
+ if not self.IsElementExists(short_name):
385
+ event = BackgroundEvent(self, short_name)
386
+ self.addElement(event)
387
+ return self.getElement(short_name, BackgroundEvent)
388
+
389
+ def createDataSendCompletedEvent(self, short_name: str) -> DataSendCompletedEvent:
390
+ if not self.IsElementExists(short_name):
391
+ event = DataSendCompletedEvent(self, short_name)
392
+ self.addElement(event)
393
+ return self.getElement(short_name, DataSendCompletedEvent)
394
+
395
+ def getRteEvents(self) -> List[RTEEvent]:
396
+ return sorted(filter(lambda c: isinstance(c, RTEEvent), self.elements), key=lambda e: e.short_name)
397
+
398
+ def getOperationInvokedEvents(self) -> List[OperationInvokedEvent]:
399
+ return sorted(filter(lambda c: isinstance(c, OperationInvokedEvent), self.elements), key=lambda e: e.short_name)
400
+
401
+ def getInitEvents(self) -> List[InitEvent]:
402
+ return sorted(filter(lambda c: isinstance(c, InitEvent), self.elements), key=lambda e: e.short_name)
403
+
404
+ def getTimingEvents(self) -> List[TimingEvent]:
405
+ return sorted(filter(lambda c: isinstance(c, TimingEvent), self.elements), key=lambda e: e.short_name)
406
+
407
+ def getDataReceivedEvents(self) -> List[DataReceivedEvent]:
408
+ return sorted(filter(lambda c: isinstance(c, DataReceivedEvent), self.elements), key=lambda e: e.short_name)
409
+
410
+ def getSwcModeSwitchEvents(self) -> List[SwcModeSwitchEvent]:
411
+ return sorted(filter(lambda c: isinstance(c, SwcModeSwitchEvent), self.elements), key=lambda e: e.short_name)
412
+
413
+ def getInternalTriggerOccurredEvents(self) -> List[InternalTriggerOccurredEvent]:
414
+ return sorted(filter(lambda c: isinstance(c, InternalTriggerOccurredEvent), self.elements), key=lambda e: e.short_name)
415
+
416
+ def getModeSwitchedAckEvents(self) -> List[ModeSwitchedAckEvent]:
417
+ return sorted(filter(lambda c: isinstance(c, ModeSwitchedAckEvent), self.elements), key=lambda e: e.short_name)
418
+
419
+ def getBackgroundEvents(self) -> List[BackgroundEvent]:
420
+ return sorted(filter(lambda c: isinstance(c, BackgroundEvent), self.elements), key=lambda e: e.short_name)
421
+
422
+ def getDataSendCompletedEvents(self) -> List[DataSendCompletedEvent]:
423
+ return sorted(filter(lambda c: isinstance(c, DataSendCompletedEvent), self.elements), key=lambda e: e.short_name)
424
+
425
+ def getSwcServiceDependencies(self) -> List[SwcServiceDependency]:
426
+ return sorted(filter(lambda c: isinstance(c, SwcServiceDependency), self.elements), key=lambda e: e.short_name)
427
+
428
+ def getEvent(self, short_name: str) -> RTEEvent:
429
+ '''
430
+ if (not isinstance(self.elements[short_name], RTEEvent)):
431
+ raise ValueError("Invalid Event Type <%s> of <%s>" %
432
+ type(self.elements[short_name]), short_name)
433
+ return self.elements[short_name]'
434
+ '''
435
+ return self.getElement(short_name, RTEEvent)
436
+
437
+ def createImplicitInterRunnableVariable(self, short_name: str) -> VariableDataPrototype:
438
+ if not self.IsElementExists(short_name):
439
+ prototype = VariableDataPrototype(self, short_name)
440
+ self.addElement(prototype)
441
+ self.implicitInterRunnableVariables.append(prototype)
442
+ return self.getElement(short_name)
443
+
444
+ def createPerInstanceMemory(self, short_name: str) -> PerInstanceMemory:
445
+ if not self.IsElementExists(short_name):
446
+ memory = PerInstanceMemory(self, short_name)
447
+ self.addElement(memory)
448
+ self.perInstanceMemories.append(memory)
449
+ return self.getElement(short_name)
450
+
451
+ def createPerInstanceParameter(self, short_name: str) -> ParameterDataPrototype:
452
+ if not self.IsElementExists(short_name):
453
+ prototype = ParameterDataPrototype(self, short_name)
454
+ self.addElement(prototype)
455
+ self.perInstanceParameters.append(prototype)
456
+ return self.getElement(short_name)
457
+
458
+ def getVariableDataPrototypes(self) -> List[VariableDataPrototype]:
459
+ return sorted(filter(lambda c: isinstance(c, VariableDataPrototype), self.elements), key=lambda e: e.short_name)
460
+
461
+ def createRunnableEntity(self, short_name: str) -> RunnableEntity:
462
+ if not self.IsElementExists(short_name):
463
+ runnable = RunnableEntity(self, short_name)
464
+ self.addElement(runnable)
465
+ return self.getElement(short_name)
466
+
467
+ def getRunnableEntities(self) -> List[RunnableEntity]:
468
+ return sorted(filter(lambda c: isinstance(c, RunnableEntity), self.elements), key=lambda r: r.short_name)
469
+
470
+ def getRunnableEntity(self, short_name) -> RunnableEntity:
471
+ return self.getElement(short_name, RunnableEntity)
472
+
473
+ def getSharedParameters(self) -> List[ParameterDataPrototype]:
474
+ return self.sharedParameters
475
+
476
+ def createSharedParameter(self, short_name: str) -> ParameterDataPrototype:
477
+ if not self.IsElementExists(short_name):
478
+ memory = ParameterDataPrototype(self, short_name)
479
+ self.addElement(memory)
480
+ self.sharedParameters.append(memory)
481
+ return self.getElement(short_name)
482
+
483
+ def getSupportsMultipleInstantiation(self):
484
+ return self.supportsMultipleInstantiation
485
+
486
+ def setSupportsMultipleInstantiation(self, value):
487
+ self.supportsMultipleInstantiation = value
488
+ return self