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,658 +1,739 @@
1
- from abc import ABCMeta
2
- from typing import List
3
-
4
- from ....M2.AUTOSARTemplates.SystemTemplate.DoIp import AbstractDoIpLogicAddressProps
5
- from ....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.Identifiable import Identifiable, Referrable
6
- from ....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import Boolean, Integer, PositiveInteger, RefType, TimeValue
7
- from ....M2.AUTOSARTemplates.SystemTemplate.Fibex.FibexCore.CoreCommunication import FibexElement
8
- from ....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.ArObject import ARObject
9
-
10
- class TpConfig(FibexElement, metaclass = ABCMeta):
11
- def __init__(self, parent: ARObject, short_name: str):
12
- if type(self) == TpConfig:
13
- raise NotImplementedError("TpConfig is an abstract class.")
14
-
15
- super().__init__(parent, short_name)
16
-
17
- self.communicationClusterRef = None # type: RefType
18
-
19
- def getCommunicationClusterRef(self):
20
- return self.communicationClusterRef
21
-
22
- def setCommunicationClusterRef(self, value):
23
- if value is not None:
24
- self.communicationClusterRef = value
25
- return self
26
-
27
- class CanTpAddress(Identifiable):
28
- def __init__(self, parent: ARObject, short_name: str):
29
- super().__init__(parent, short_name)
30
-
31
- self.tpAddress = None # type: Integer
32
- self.tpAddressExtensionValue = None # type: Integer
33
-
34
- def getTpAddress(self):
35
- return self.tpAddress
36
-
37
- def setTpAddress(self, value):
38
- if value is not None:
39
- self.tpAddress = value
40
- return self
41
-
42
- def getTpAddressExtensionValue(self):
43
- return self.tpAddressExtensionValue
44
-
45
- def setTpAddressExtensionValue(self, value):
46
- if value is not None:
47
- self.tpAddressExtensionValue = value
48
- return self
49
-
50
- class CanTpChannel(Identifiable):
51
- def __init__(self, parent: ARObject, short_name: str):
52
- super().__init__(parent, short_name)
53
-
54
- self.channelId = None # type: PositiveInteger
55
- self.channelMode = None # type: CanTpChannelModeType
56
-
57
- def getChannelId(self):
58
- return self.channelId
59
-
60
- def setChannelId(self, value):
61
- if value is not None:
62
- self.channelId = value
63
- return self
64
-
65
- def getChannelMode(self):
66
- return self.channelMode
67
-
68
- def setChannelMode(self, value):
69
- if value is not None:
70
- self.channelMode = value
71
- return self
72
-
73
- class TpConnectionIdent(Referrable):
74
- def __init__(self, parent, short_name):
75
- super().__init__(parent, short_name)
76
-
77
- class TpConnection(ARObject, metaclass = ABCMeta):
78
- def __init__(self):
79
- if type(self) == TpConnection:
80
- raise NotImplementedError("TpConnection is an abstract class.")
81
-
82
- super().__init__()
83
-
84
- self.ident = None # type: TpConnectionIdent
85
-
86
- def getIdent(self):
87
- return self.ident
88
-
89
- def createTpConnectionIdent(self, short_name: str):
90
- ident = TpConnectionIdent(self, short_name)
91
- self.ident = ident
92
- return ident
93
-
94
- class CanTpConnection(TpConnection):
95
- def __init__(self):
96
- super().__init__()
97
-
98
- self.addressingFormat = None # type: CanTpAddressingFormatType
99
- self.cancellation = None # type: Boolean
100
- self.canTpChannelRef = None # type: RefType
101
- self.dataPduRef = None # type: RefType
102
- self.flowControlPduRef = None # type: RefType
103
- self.maxBlockSize = None # type: Integer
104
- self.multicastRef = None # type: RefType
105
- self.paddingActivation = None # type: Boolean
106
- self.receiverRefs = [] # type: List[RefType]
107
- self.taType = None # type: NetworkTargetAddressType
108
- self.timeoutBr = None # type: TimeValue
109
- self.timeoutBs = None # type: TimeValue
110
- self.timeoutCr = None # type: TimeValue
111
- self.timeoutCs = None # type: TimeValue
112
- self.tpSduRef = None # type: RefType
113
- self.transmitterRef = None # type: RefType
114
-
115
- def getAddressingFormat(self):
116
- return self.addressingFormat
117
-
118
- def setAddressingFormat(self, value):
119
- if value is not None:
120
- self.addressingFormat = value
121
- return self
122
-
123
- def getCancellation(self):
124
- return self.cancellation
125
-
126
- def setCancellation(self, value):
127
- if value is not None:
128
- self.cancellation = value
129
- return self
130
-
131
- def getCanTpChannelRef(self):
132
- return self.canTpChannelRef
133
-
134
- def setCanTpChannelRef(self, value):
135
- if value is not None:
136
- self.canTpChannelRef = value
137
- return self
138
-
139
- def getDataPduRef(self):
140
- return self.dataPduRef
141
-
142
- def setDataPduRef(self, value):
143
- if value is not None:
144
- self.dataPduRef = value
145
- return self
146
-
147
- def getFlowControlPduRef(self):
148
- return self.flowControlPduRef
149
-
150
- def setFlowControlPduRef(self, value):
151
- if value is not None:
152
- self.flowControlPduRef = value
153
- return self
154
-
155
- def getMaxBlockSize(self):
156
- return self.maxBlockSize
157
-
158
- def setMaxBlockSize(self, value):
159
- if value is not None:
160
- self.maxBlockSize = value
161
- return self
162
-
163
- def getMulticastRef(self):
164
- return self.multicastRef
165
-
166
- def setMulticastRef(self, value):
167
- if value is not None:
168
- self.multicastRef = value
169
- return self
170
-
171
- def getPaddingActivation(self):
172
- return self.paddingActivation
173
-
174
- def setPaddingActivation(self, value):
175
- if value is not None:
176
- self.paddingActivation = value
177
- return self
178
-
179
- def getReceiverRefs(self):
180
- return self.receiverRefs
181
-
182
- def addReceiverRef(self, value):
183
- if value is not None:
184
- self.receiverRefs.append(value)
185
- return self
186
-
187
- def getTaType(self):
188
- return self.taType
189
-
190
- def setTaType(self, value):
191
- if value is not None:
192
- self.taType = value
193
- return self
194
-
195
- def getTimeoutBr(self):
196
- return self.timeoutBr
197
-
198
- def setTimeoutBr(self, value):
199
- if value is not None:
200
- self.timeoutBr = value
201
- return self
202
-
203
- def getTimeoutBs(self):
204
- return self.timeoutBs
205
-
206
- def setTimeoutBs(self, value):
207
- if value is not None:
208
- self.timeoutBs = value
209
- return self
210
-
211
- def getTimeoutCr(self):
212
- return self.timeoutCr
213
-
214
- def setTimeoutCr(self, value):
215
- if value is not None:
216
- self.timeoutCr = value
217
- return self
218
-
219
- def getTimeoutCs(self):
220
- return self.timeoutCs
221
-
222
- def setTimeoutCs(self, value):
223
- if value is not None:
224
- self.timeoutCs = value
225
- return self
226
-
227
- def getTpSduRef(self):
228
- return self.tpSduRef
229
-
230
- def setTpSduRef(self, value):
231
- if value is not None:
232
- self.tpSduRef = value
233
- return self
234
-
235
- def getTransmitterRef(self):
236
- return self.transmitterRef
237
-
238
- def setTransmitterRef(self, value):
239
- if value is not None:
240
- self.transmitterRef = value
241
- return self
242
-
243
- class CanTpEcu(ARObject):
244
- def __init__(self):
245
- super().__init__()
246
-
247
- self.cycleTimeMainFunction = None # type: TimeValue
248
- self.ecuInstanceRef = None # type: RefType
249
-
250
- def getCycleTimeMainFunction(self):
251
- return self.cycleTimeMainFunction
252
-
253
- def setCycleTimeMainFunction(self, value):
254
- if value is not None:
255
- self.cycleTimeMainFunction = value
256
- return self
257
-
258
- def getEcuInstanceRef(self):
259
- return self.ecuInstanceRef
260
-
261
- def setEcuInstanceRef(self, value):
262
- if value is not None:
263
- self.ecuInstanceRef = value
264
- return self
265
-
266
- class CanTpNode(Identifiable):
267
- def __init__(self, parent: ARObject, short_name: str):
268
- super().__init__(parent, short_name)
269
-
270
- self.connectorRef = None # type: RefType
271
- self.maxFcWait = None # type: Integer
272
- self.stMin = None # type: TimeValue
273
- self.timeoutAr = None # type: TimeValue
274
- self.timeoutAs = None # type: TimeValue
275
- self.tpAddressRef = None # type: RefType
276
-
277
- def getConnectorRef(self):
278
- return self.connectorRef
279
-
280
- def setConnectorRef(self, value):
281
- if value is not None:
282
- self.connectorRef = value
283
- return self
284
-
285
- def getMaxFcWait(self):
286
- return self.maxFcWait
287
-
288
- def setMaxFcWait(self, value):
289
- if value is not None:
290
- self.maxFcWait = value
291
- return self
292
-
293
- def getStMin(self):
294
- return self.stMin
295
-
296
- def setStMin(self, value):
297
- if value is not None:
298
- self.stMin = value
299
- return self
300
-
301
- def getTimeoutAr(self):
302
- return self.timeoutAr
303
-
304
- def setTimeoutAr(self, value):
305
- if value is not None:
306
- self.timeoutAr = value
307
- return self
308
-
309
- def getTimeoutAs(self):
310
- return self.timeoutAs
311
-
312
- def setTimeoutAs(self, value):
313
- if value is not None:
314
- self.timeoutAs = value
315
- return self
316
-
317
- def getTpAddressRef(self):
318
- return self.tpAddressRef
319
-
320
- def setTpAddressRef(self, value):
321
- if value is not None:
322
- self.tpAddressRef = value
323
- return self
324
-
325
-
326
-
327
- class CanTpConfig(TpConfig):
328
- def __init__(self, parent: ARObject, short_name: str):
329
- super().__init__(parent, short_name)
330
-
331
- self.tpAddresses = [] # type: List[CanTpAddress]
332
- self.tpChannels = [] # type: List[CanTpChannel]
333
- self.tpConnections =[] # type: List[CanTpConnection]
334
- self.tpEcus = [] # type: List[CanTpEcu]
335
- self.tpNodes = [] # type: List[CanTpNode]
336
-
337
- def getTpAddresses(self):
338
- return self.tpAddresses
339
-
340
- def createCanTpAddress(self, short_name: str):
341
- if (not self.IsElementExists(short_name)):
342
- address = CanTpAddress(self, short_name)
343
- self.addElement(address)
344
- self.tpAddresses.append(address)
345
- return self.getElement(short_name)
346
-
347
- def getTpChannels(self):
348
- return self.tpChannels
349
-
350
- def createCanTpChannel(self, short_name: str):
351
- if (not self.IsElementExists(short_name)):
352
- address = CanTpChannel(self, short_name)
353
- self.addElement(address)
354
- self.tpChannels.append(address)
355
- return self.getElement(short_name)
356
-
357
- def getTpConnections(self):
358
- return self.tpConnections
359
-
360
- def addTpConnection(self, value):
361
- if value is not None:
362
- self.tpConnections.append(value)
363
- return self
364
-
365
- def getTpEcus(self):
366
- return self.tpEcus
367
-
368
- def addTpEcu(self, value):
369
- if value is not None:
370
- self.tpEcus.append(value)
371
- return self
372
-
373
- def getTpNodes(self):
374
- return self.tpNodes
375
-
376
- def createCanTpNode(self, short_name: str):
377
- if (not self.IsElementExists(short_name)):
378
- address = CanTpNode(self, short_name)
379
- self.addElement(address)
380
- self.tpNodes.append(address)
381
- return self.getElement(short_name)
382
-
383
- class DoIpLogicAddress(Identifiable):
384
- def __init__(self, parent: ARObject, short_name: str):
385
- super().__init__(parent, short_name)
386
-
387
- self.address = None # type: Integer
388
- self.doIpLogicAddressProps = None # type: AbstractDoIpLogicAddressProps
389
-
390
- def getAddress(self):
391
- return self.address
392
-
393
- def setAddress(self, value):
394
- if value is not None:
395
- self.address = value
396
- return self
397
-
398
- def getDoIpLogicAddressProps(self):
399
- return self.doIpLogicAddressProps
400
-
401
- def setDoIpLogicAddressProps(self, value):
402
- if value is not None:
403
- self.doIpLogicAddressProps = value
404
- return self
405
-
406
- class DoIpTpConnection(TpConnection):
407
- def __init__(self):
408
- super().__init__()
409
-
410
- self.doIpSourceAddressRef = None # type: RefType
411
- self.doIpTargetAddressRef = None # type: RefType
412
- self.tpSduRef = None # type: RefType
413
-
414
- def getDoIpSourceAddressRef(self):
415
- return self.doIpSourceAddressRef
416
-
417
- def setDoIpSourceAddressRef(self, value):
418
- if value is not None:
419
- self.doIpSourceAddressRef = value
420
- return self
421
-
422
- def getDoIpTargetAddressRef(self):
423
- return self.doIpTargetAddressRef
424
-
425
- def setDoIpTargetAddressRef(self, value):
426
- if value is not None:
427
- self.doIpTargetAddressRef = value
428
- return self
429
-
430
- def getTpSduRef(self):
431
- return self.tpSduRef
432
-
433
- def setTpSduRef(self, value):
434
- if value is not None:
435
- self.tpSduRef = value
436
- return self
437
-
438
-
439
- class DoIpTpConfig(TpConfig):
440
- def __init__(self, parent: ARObject, short_name: str):
441
- super().__init__(parent, short_name)
442
-
443
- self.doIpLogicAddresses = [] # type: List[DoIpLogicAddress]
444
- self.tpConnections = [] # type: List[DoIpTpConnection]
445
-
446
- def getDoIpLogicAddresses(self):
447
- return self.doIpLogicAddresses
448
-
449
- def createDoIpLogicAddress(self, short_name: str):
450
- if (not self.IsElementExists(short_name)):
451
- address = DoIpLogicAddress(self, short_name)
452
- self.addElement(address)
453
- self.doIpLogicAddresses.append(address)
454
- return self.getElement(short_name)
455
-
456
- def getTpConnections(self):
457
- return self.tpConnections
458
-
459
- def addTpConnection(self, value):
460
- if value is not None:
461
- self.tpConnections.append(value)
462
- return self
463
-
464
- class TpAddress(Identifiable):
465
- def __init__(self, parent, short_name):
466
- super().__init__(parent, short_name)
467
-
468
- self.tpAddress = None # type: Integer
469
-
470
- def getTpAddress(self):
471
- return self.tpAddress
472
-
473
- def setTpAddress(self, value):
474
- if value is not None:
475
- self.tpAddress = value
476
- return self
477
-
478
- class LinTpConnection(TpConnection):
479
- def __init__(self):
480
- super().__init__()
481
-
482
- self.dataPduRef = None # type: RefType
483
- self.flowControlRef = None # type: RefType
484
- self.linTpNSduRef = None # type: RefType
485
- self.multicastRef = None # type: RefType
486
- self.receiverRefs = [] # type: List[RefType]
487
- self.timeoutAs = None # type: TimeValue
488
- self.timeoutCr = None # type: TimeValue
489
- self.timeoutCs = None # type: TimeValue
490
- self.transmitterRef = None # type: RefType
491
-
492
- def getDataPduRef(self):
493
- return self.dataPduRef
494
-
495
- def setDataPduRef(self, value):
496
- if value is not None:
497
- self.dataPduRef = value
498
- return self
499
-
500
- def getFlowControlRef(self):
501
- return self.flowControlRef
502
-
503
- def setFlowControlRef(self, value):
504
- if value is not None:
505
- self.flowControlRef = value
506
- return self
507
-
508
- def getLinTpNSduRef(self):
509
- return self.linTpNSduRef
510
-
511
- def setLinTpNSduRef(self, value):
512
- if value is not None:
513
- self.linTpNSduRef = value
514
- return self
515
-
516
- def getMulticastRef(self):
517
- return self.multicastRef
518
-
519
- def setMulticastRef(self, value):
520
- if value is not None:
521
- self.multicastRef = value
522
- return self
523
-
524
- def getReceiverRefs(self):
525
- return self.receiverRefs
526
-
527
- def addReceiverRef(self, value):
528
- if value is not None:
529
- self.receiverRefs.append(value)
530
- return self
531
-
532
- def getTimeoutAs(self):
533
- return self.timeoutAs
534
-
535
- def setTimeoutAs(self, value):
536
- if value is not None:
537
- self.timeoutAs = value
538
- return self
539
-
540
- def getTimeoutCr(self):
541
- return self.timeoutCr
542
-
543
- def setTimeoutCr(self, value):
544
- if value is not None:
545
- self.timeoutCr = value
546
- return self
547
-
548
- def getTimeoutCs(self):
549
- return self.timeoutCs
550
-
551
- def setTimeoutCs(self, value):
552
- if value is not None:
553
- self.timeoutCs = value
554
- return self
555
-
556
- def getTransmitterRef(self):
557
- return self.transmitterRef
558
-
559
- def setTransmitterRef(self, value):
560
- if value is not None:
561
- self.transmitterRef = value
562
- return self
563
-
564
- class LinTpNode(Identifiable):
565
- def __init__(self, parent: ARObject, short_name: str):
566
- super().__init__(parent, short_name)
567
-
568
- self.connectorRef = None # type: RefType
569
- self.dropNotRequestedNad = None # type: Boolean
570
- self.maxNumberOfRespPendingFrames = None # type: Integer
571
- self.p2Max = None # type: TimeValue
572
- self.p2Timing = None # type: TimeValue
573
- self.tpAddressRef = None # type: RefType
574
-
575
- def getConnectorRef(self):
576
- return self.connectorRef
577
-
578
- def setConnectorRef(self, value):
579
- if value is not None:
580
- self.connectorRef = value
581
- return self
582
-
583
- def getDropNotRequestedNad(self):
584
- return self.dropNotRequestedNad
585
-
586
- def setDropNotRequestedNad(self, value):
587
- if value is not None:
588
- self.dropNotRequestedNad = value
589
- return self
590
-
591
- def getMaxNumberOfRespPendingFrames(self):
592
- return self.maxNumberOfRespPendingFrames
593
-
594
- def setMaxNumberOfRespPendingFrames(self, value):
595
- if value is not None:
596
- self.maxNumberOfRespPendingFrames = value
597
- return self
598
-
599
- def getP2Max(self):
600
- return self.p2Max
601
-
602
- def setP2Max(self, value):
603
- if value is not None:
604
- self.p2Max = value
605
- return self
606
-
607
- def getP2Timing(self):
608
- return self.p2Timing
609
-
610
- def setP2Timing(self, value):
611
- if value is not None:
612
- self.p2Timing = value
613
- return self
614
-
615
- def getTpAddressRef(self):
616
- return self.tpAddressRef
617
-
618
- def setTpAddressRef(self, value):
619
- if value is not None:
620
- self.tpAddressRef = value
621
- return self
622
-
623
-
624
- class LinTpConfig(TpConfig):
625
- def __init__(self, parent: ARObject, short_name: str):
626
- super().__init__(parent, short_name)
627
-
628
- self.tpAddresses = [] # type: List[TpAddress]
629
- self.tpConnections = [] # type: List[LinTpConnection]
630
- self.tpNodes = [] # type: List[LinTpNode]
631
-
632
- def getTpAddresses(self):
633
- return self.tpAddresses
634
-
635
- def createTpAddress(self, short_name: str):
636
- if (not self.IsElementExists(short_name)):
637
- address = TpAddress(self, short_name)
638
- self.addElement(address)
639
- self.tpAddresses.append(address)
640
- return self.getElement(short_name)
641
-
642
- def getTpConnections(self):
643
- return self.tpConnections
644
-
645
- def addTpConnection(self, value):
646
- if value is not None:
647
- self.tpConnections.append(value)
648
- return self
649
-
650
- def getTpNodes(self):
651
- return self.tpNodes
652
-
653
- def createLinTpNode(self, short_name: str):
654
- if (not self.IsElementExists(short_name)):
655
- address = LinTpNode(self, short_name)
656
- self.addElement(address)
657
- self.tpNodes.append(address)
658
- return self.getElement(short_name)
1
+ # This module contains AUTOSAR System Template classes for transport protocols
2
+ # It defines CAN, DoIP, and LIN transport protocol configurations and connections
3
+
4
+ from abc import ABC
5
+ from typing import List
6
+
7
+ from armodel.models.M2.AUTOSARTemplates.SystemTemplate.DoIp import AbstractDoIpLogicAddressProps
8
+ from armodel.models.M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.Identifiable import Identifiable, Referrable
9
+ from armodel.models.M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import Boolean, Integer, PositiveInteger, RefType, TimeValue
10
+ from armodel.models.M2.AUTOSARTemplates.SystemTemplate.Fibex.FibexCore.CoreCommunication import FibexElement
11
+ from armodel.models.M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.ArObject import ARObject
12
+
13
+ class TpConfig(FibexElement, ABC):
14
+ """
15
+ Abstract base class for transport protocol configurations,
16
+ defining common properties for different types of transport
17
+ protocol implementations including communication cluster references.
18
+ """
19
+ def __init__(self, parent: ARObject, short_name: str):
20
+ if type(self) == TpConfig:
21
+ raise TypeError("TpConfig is an abstract class.")
22
+
23
+ super().__init__(parent, short_name)
24
+
25
+ self.communicationClusterRef: RefType = None
26
+
27
+ def getCommunicationClusterRef(self):
28
+ return self.communicationClusterRef
29
+
30
+ def setCommunicationClusterRef(self, value):
31
+ if value is not None:
32
+ self.communicationClusterRef = value
33
+ return self
34
+
35
+ class CanTpAddress(Identifiable):
36
+ """
37
+ Represents a CAN transport protocol address in the system,
38
+ defining the transport address and address extension values
39
+ for CAN communication endpoints.
40
+ """
41
+ def __init__(self, parent: ARObject, short_name: str):
42
+ super().__init__(parent, short_name)
43
+
44
+ self.tpAddress: Integer = None
45
+ self.tpAddressExtensionValue: Integer = None
46
+
47
+ def getTpAddress(self):
48
+ return self.tpAddress
49
+
50
+ def setTpAddress(self, value):
51
+ if value is not None:
52
+ self.tpAddress = value
53
+ return self
54
+
55
+ def getTpAddressExtensionValue(self):
56
+ return self.tpAddressExtensionValue
57
+
58
+ def setTpAddressExtensionValue(self, value):
59
+ if value is not None:
60
+ self.tpAddressExtensionValue = value
61
+ return self
62
+
63
+ class CanTpChannel(Identifiable):
64
+ """
65
+ Represents a CAN transport protocol channel in the system,
66
+ defining the channel ID and channel mode for CAN TP communication.
67
+ """
68
+ def __init__(self, parent: ARObject, short_name: str):
69
+ super().__init__(parent, short_name)
70
+
71
+ self.channelId: PositiveInteger = None
72
+ self.channelMode = None
73
+
74
+ def getChannelId(self):
75
+ return self.channelId
76
+
77
+ def setChannelId(self, value):
78
+ if value is not None:
79
+ self.channelId = value
80
+ return self
81
+
82
+ def getChannelMode(self):
83
+ return self.channelMode
84
+
85
+ def setChannelMode(self, value):
86
+ if value is not None:
87
+ self.channelMode = value
88
+ return self
89
+
90
+ class TpConnectionIdent(Referrable):
91
+ """
92
+ Represents a transport protocol connection identifier,
93
+ providing a referenceable identifier for transport protocol
94
+ connections in the communication system.
95
+ """
96
+ def __init__(self, parent, short_name):
97
+ super().__init__(parent, short_name)
98
+
99
+ class TpConnection(ARObject, ABC):
100
+ """
101
+ Abstract base class for transport protocol connections,
102
+ defining common properties for different types of transport
103
+ protocol connections including connection identification.
104
+ """
105
+ def __init__(self):
106
+ if type(self) == TpConnection:
107
+ raise TypeError("TpConnection is an abstract class.")
108
+
109
+ super().__init__()
110
+
111
+ self.ident: TpConnectionIdent = None
112
+
113
+ def getIdent(self):
114
+ return self.ident
115
+
116
+ def createTpConnectionIdent(self, short_name: str):
117
+ ident = TpConnectionIdent(self, short_name)
118
+ self.ident = ident
119
+ return ident
120
+
121
+ class CanTpConnection(TpConnection):
122
+ """
123
+ Represents a CAN transport protocol connection in the system,
124
+ defining addressing format, cancellation settings, channel
125
+ configuration, and timing parameters for CAN TP communication.
126
+ """
127
+ def __init__(self):
128
+ super().__init__()
129
+
130
+ self.addressingFormat = None
131
+ self.cancellation: Boolean = None
132
+ self.canTpChannelRef: RefType = None
133
+ self.dataPduRef: RefType = None
134
+ self.flowControlPduRef: RefType = None
135
+ self.maxBlockSize: Integer = None
136
+ self.multicastRef: RefType = None
137
+ self.paddingActivation: Boolean = None
138
+ self.receiverRefs: List[RefType] = []
139
+ self.taType = None
140
+ self.timeoutBr: TimeValue = None
141
+ self.timeoutBs: TimeValue = None
142
+ self.timeoutCr: TimeValue = None
143
+ self.timeoutCs: TimeValue = None
144
+ self.tpSduRef: RefType = None
145
+ self.transmitterRef: RefType = None
146
+
147
+ def getAddressingFormat(self):
148
+ return self.addressingFormat
149
+
150
+ def setAddressingFormat(self, value):
151
+ if value is not None:
152
+ self.addressingFormat = value
153
+ return self
154
+
155
+ def getCancellation(self):
156
+ return self.cancellation
157
+
158
+ def setCancellation(self, value):
159
+ if value is not None:
160
+ self.cancellation = value
161
+ return self
162
+
163
+ def getCanTpChannelRef(self):
164
+ return self.canTpChannelRef
165
+
166
+ def setCanTpChannelRef(self, value):
167
+ if value is not None:
168
+ self.canTpChannelRef = value
169
+ return self
170
+
171
+ def getDataPduRef(self):
172
+ return self.dataPduRef
173
+
174
+ def setDataPduRef(self, value):
175
+ if value is not None:
176
+ self.dataPduRef = value
177
+ return self
178
+
179
+ def getFlowControlPduRef(self):
180
+ return self.flowControlPduRef
181
+
182
+ def setFlowControlPduRef(self, value):
183
+ if value is not None:
184
+ self.flowControlPduRef = value
185
+ return self
186
+
187
+ def getMaxBlockSize(self):
188
+ return self.maxBlockSize
189
+
190
+ def setMaxBlockSize(self, value):
191
+ if value is not None:
192
+ self.maxBlockSize = value
193
+ return self
194
+
195
+ def getMulticastRef(self):
196
+ return self.multicastRef
197
+
198
+ def setMulticastRef(self, value):
199
+ if value is not None:
200
+ self.multicastRef = value
201
+ return self
202
+
203
+ def getPaddingActivation(self):
204
+ return self.paddingActivation
205
+
206
+ def setPaddingActivation(self, value):
207
+ if value is not None:
208
+ self.paddingActivation = value
209
+ return self
210
+
211
+ def getReceiverRefs(self):
212
+ return self.receiverRefs
213
+
214
+ def addReceiverRef(self, value):
215
+ if value is not None:
216
+ self.receiverRefs.append(value)
217
+ return self
218
+
219
+ def getTaType(self):
220
+ return self.taType
221
+
222
+ def setTaType(self, value):
223
+ if value is not None:
224
+ self.taType = value
225
+ return self
226
+
227
+ def getTimeoutBr(self):
228
+ return self.timeoutBr
229
+
230
+ def setTimeoutBr(self, value):
231
+ if value is not None:
232
+ self.timeoutBr = value
233
+ return self
234
+
235
+ def getTimeoutBs(self):
236
+ return self.timeoutBs
237
+
238
+ def setTimeoutBs(self, value):
239
+ if value is not None:
240
+ self.timeoutBs = value
241
+ return self
242
+
243
+ def getTimeoutCr(self):
244
+ return self.timeoutCr
245
+
246
+ def setTimeoutCr(self, value):
247
+ if value is not None:
248
+ self.timeoutCr = value
249
+ return self
250
+
251
+ def getTimeoutCs(self):
252
+ return self.timeoutCs
253
+
254
+ def setTimeoutCs(self, value):
255
+ if value is not None:
256
+ self.timeoutCs = value
257
+ return self
258
+
259
+ def getTpSduRef(self):
260
+ return self.tpSduRef
261
+
262
+ def setTpSduRef(self, value):
263
+ if value is not None:
264
+ self.tpSduRef = value
265
+ return self
266
+
267
+ def getTransmitterRef(self):
268
+ return self.transmitterRef
269
+
270
+ def setTransmitterRef(self, value):
271
+ if value is not None:
272
+ self.transmitterRef = value
273
+ return self
274
+
275
+ class CanTpEcu(ARObject):
276
+ """
277
+ Represents a CAN transport protocol ECU configuration,
278
+ defining cycle time for the main function and ECU instance
279
+ references for CAN TP communication management.
280
+ """
281
+ def __init__(self):
282
+ super().__init__()
283
+
284
+ self.cycleTimeMainFunction: TimeValue = None
285
+ self.ecuInstanceRef: RefType = None
286
+
287
+ def getCycleTimeMainFunction(self):
288
+ return self.cycleTimeMainFunction
289
+
290
+ def setCycleTimeMainFunction(self, value):
291
+ if value is not None:
292
+ self.cycleTimeMainFunction = value
293
+ return self
294
+
295
+ def getEcuInstanceRef(self):
296
+ return self.ecuInstanceRef
297
+
298
+ def setEcuInstanceRef(self, value):
299
+ if value is not None:
300
+ self.ecuInstanceRef = value
301
+ return self
302
+
303
+ class CanTpNode(Identifiable):
304
+ """
305
+ Represents a CAN transport protocol node in the system,
306
+ defining connector references, timing parameters, and
307
+ address references for CAN TP node configuration.
308
+ """
309
+ def __init__(self, parent: ARObject, short_name: str):
310
+ super().__init__(parent, short_name)
311
+
312
+ self.connectorRef: RefType = None
313
+ self.maxFcWait: Integer = None
314
+ self.stMin: TimeValue = None
315
+ self.timeoutAr: TimeValue = None
316
+ self.timeoutAs: TimeValue = None
317
+ self.tpAddressRef: RefType = None
318
+
319
+ def getConnectorRef(self):
320
+ return self.connectorRef
321
+
322
+ def setConnectorRef(self, value):
323
+ if value is not None:
324
+ self.connectorRef = value
325
+ return self
326
+
327
+ def getMaxFcWait(self):
328
+ return self.maxFcWait
329
+
330
+ def setMaxFcWait(self, value):
331
+ if value is not None:
332
+ self.maxFcWait = value
333
+ return self
334
+
335
+ def getStMin(self):
336
+ return self.stMin
337
+
338
+ def setStMin(self, value):
339
+ if value is not None:
340
+ self.stMin = value
341
+ return self
342
+
343
+ def getTimeoutAr(self):
344
+ return self.timeoutAr
345
+
346
+ def setTimeoutAr(self, value):
347
+ if value is not None:
348
+ self.timeoutAr = value
349
+ return self
350
+
351
+ def getTimeoutAs(self):
352
+ return self.timeoutAs
353
+
354
+ def setTimeoutAs(self, value):
355
+ if value is not None:
356
+ self.timeoutAs = value
357
+ return self
358
+
359
+ def getTpAddressRef(self):
360
+ return self.tpAddressRef
361
+
362
+ def setTpAddressRef(self, value):
363
+ if value is not None:
364
+ self.tpAddressRef = value
365
+ return self
366
+
367
+
368
+
369
+ class CanTpConfig(TpConfig):
370
+ """
371
+ Represents CAN transport protocol configuration in the system,
372
+ organizing addresses, channels, connections, ECUs, and nodes
373
+ for comprehensive CAN TP communication setup.
374
+ """
375
+ def __init__(self, parent: ARObject, short_name: str):
376
+ super().__init__(parent, short_name)
377
+
378
+ self.tpAddresses: List[CanTpAddress] = []
379
+ self.tpChannels: List[CanTpChannel] = []
380
+ self.tpConnections:List[CanTpConnection] = []
381
+ self.tpEcus: List[CanTpEcu] = []
382
+ self.tpNodes: List[CanTpNode] = []
383
+
384
+ def getTpAddresses(self):
385
+ return self.tpAddresses
386
+
387
+ def createCanTpAddress(self, short_name: str):
388
+ if (not self.IsElementExists(short_name)):
389
+ address = CanTpAddress(self, short_name)
390
+ self.addElement(address)
391
+ self.tpAddresses.append(address)
392
+ return self.getElement(short_name)
393
+
394
+ def getTpChannels(self):
395
+ return self.tpChannels
396
+
397
+ def createCanTpChannel(self, short_name: str):
398
+ if (not self.IsElementExists(short_name)):
399
+ address = CanTpChannel(self, short_name)
400
+ self.addElement(address)
401
+ self.tpChannels.append(address)
402
+ return self.getElement(short_name)
403
+
404
+ def getTpConnections(self):
405
+ return self.tpConnections
406
+
407
+ def addTpConnection(self, value):
408
+ if value is not None:
409
+ self.tpConnections.append(value)
410
+ return self
411
+
412
+ def getTpEcus(self):
413
+ return self.tpEcus
414
+
415
+ def addTpEcu(self, value):
416
+ if value is not None:
417
+ self.tpEcus.append(value)
418
+ return self
419
+
420
+ def getTpNodes(self):
421
+ return self.tpNodes
422
+
423
+ def createCanTpNode(self, short_name: str):
424
+ if (not self.IsElementExists(short_name)):
425
+ address = CanTpNode(self, short_name)
426
+ self.addElement(address)
427
+ self.tpNodes.append(address)
428
+ return self.getElement(short_name)
429
+
430
+ class DoIpLogicAddress(Identifiable):
431
+ """
432
+ Represents a DoIP (Diagnostics over IP) logic address in the system,
433
+ defining the address value and logic address properties for
434
+ DoIP communication endpoints.
435
+ """
436
+ def __init__(self, parent: ARObject, short_name: str):
437
+ super().__init__(parent, short_name)
438
+
439
+ self.address: Integer = None
440
+ self.doIpLogicAddressProps: AbstractDoIpLogicAddressProps = None
441
+
442
+ def getAddress(self):
443
+ return self.address
444
+
445
+ def setAddress(self, value):
446
+ if value is not None:
447
+ self.address = value
448
+ return self
449
+
450
+ def getDoIpLogicAddressProps(self):
451
+ return self.doIpLogicAddressProps
452
+
453
+ def setDoIpLogicAddressProps(self, value):
454
+ if value is not None:
455
+ self.doIpLogicAddressProps = value
456
+ return self
457
+
458
+ class DoIpTpConnection(TpConnection):
459
+ """
460
+ Represents a DoIP transport protocol connection in the system,
461
+ defining source and target address references and SDU
462
+ references for DoIP communication.
463
+ """
464
+ def __init__(self):
465
+ super().__init__()
466
+
467
+ self.doIpSourceAddressRef: RefType = None
468
+ self.doIpTargetAddressRef: RefType = None
469
+ self.tpSduRef: RefType = None
470
+
471
+ def getDoIpSourceAddressRef(self):
472
+ return self.doIpSourceAddressRef
473
+
474
+ def setDoIpSourceAddressRef(self, value):
475
+ if value is not None:
476
+ self.doIpSourceAddressRef = value
477
+ return self
478
+
479
+ def getDoIpTargetAddressRef(self):
480
+ return self.doIpTargetAddressRef
481
+
482
+ def setDoIpTargetAddressRef(self, value):
483
+ if value is not None:
484
+ self.doIpTargetAddressRef = value
485
+ return self
486
+
487
+ def getTpSduRef(self):
488
+ return self.tpSduRef
489
+
490
+ def setTpSduRef(self, value):
491
+ if value is not None:
492
+ self.tpSduRef = value
493
+ return self
494
+
495
+
496
+ class DoIpTpConfig(TpConfig):
497
+ """
498
+ Represents DoIP transport protocol configuration in the system,
499
+ organizing logic addresses and connections for comprehensive
500
+ DoIP communication setup.
501
+ """
502
+ def __init__(self, parent: ARObject, short_name: str):
503
+ super().__init__(parent, short_name)
504
+
505
+ self.doIpLogicAddresses: List[DoIpLogicAddress] = []
506
+ self.tpConnections: List[DoIpTpConnection] = []
507
+
508
+ def getDoIpLogicAddresses(self):
509
+ return self.doIpLogicAddresses
510
+
511
+ def createDoIpLogicAddress(self, short_name: str):
512
+ if (not self.IsElementExists(short_name)):
513
+ address = DoIpLogicAddress(self, short_name)
514
+ self.addElement(address)
515
+ self.doIpLogicAddresses.append(address)
516
+ return self.getElement(short_name)
517
+
518
+ def getTpConnections(self):
519
+ return self.tpConnections
520
+
521
+ def addTpConnection(self, value):
522
+ if value is not None:
523
+ self.tpConnections.append(value)
524
+ return self
525
+
526
+ class TpAddress(Identifiable):
527
+ """
528
+ Represents a generic transport protocol address in the system,
529
+ defining the transport address value for communication endpoints.
530
+ """
531
+ def __init__(self, parent, short_name):
532
+ super().__init__(parent, short_name)
533
+
534
+ self.tpAddress: Integer = None
535
+
536
+ def getTpAddress(self):
537
+ return self.tpAddress
538
+
539
+ def setTpAddress(self, value):
540
+ if value is not None:
541
+ self.tpAddress = value
542
+ return self
543
+
544
+ class LinTpConnection(TpConnection):
545
+ """
546
+ Represents a LIN transport protocol connection in the system,
547
+ defining PDU references, timeout parameters, and transmitter/
548
+ receiver configurations for LIN TP communication.
549
+ """
550
+ def __init__(self):
551
+ super().__init__()
552
+
553
+ self.dataPduRef: RefType = None
554
+ self.flowControlRef: RefType = None
555
+ self.linTpNSduRef: RefType = None
556
+ self.multicastRef: RefType = None
557
+ self.receiverRefs: List[RefType] = []
558
+ self.timeoutAs: TimeValue = None
559
+ self.timeoutCr: TimeValue = None
560
+ self.timeoutCs: TimeValue = None
561
+ self.transmitterRef: RefType = None
562
+
563
+ def getDataPduRef(self):
564
+ return self.dataPduRef
565
+
566
+ def setDataPduRef(self, value):
567
+ if value is not None:
568
+ self.dataPduRef = value
569
+ return self
570
+
571
+ def getFlowControlRef(self):
572
+ return self.flowControlRef
573
+
574
+ def setFlowControlRef(self, value):
575
+ if value is not None:
576
+ self.flowControlRef = value
577
+ return self
578
+
579
+ def getLinTpNSduRef(self):
580
+ return self.linTpNSduRef
581
+
582
+ def setLinTpNSduRef(self, value):
583
+ if value is not None:
584
+ self.linTpNSduRef = value
585
+ return self
586
+
587
+ def getMulticastRef(self):
588
+ return self.multicastRef
589
+
590
+ def setMulticastRef(self, value):
591
+ if value is not None:
592
+ self.multicastRef = value
593
+ return self
594
+
595
+ def getReceiverRefs(self):
596
+ return self.receiverRefs
597
+
598
+ def addReceiverRef(self, value):
599
+ if value is not None:
600
+ self.receiverRefs.append(value)
601
+ return self
602
+
603
+ def getTimeoutAs(self):
604
+ return self.timeoutAs
605
+
606
+ def setTimeoutAs(self, value):
607
+ if value is not None:
608
+ self.timeoutAs = value
609
+ return self
610
+
611
+ def getTimeoutCr(self):
612
+ return self.timeoutCr
613
+
614
+ def setTimeoutCr(self, value):
615
+ if value is not None:
616
+ self.timeoutCr = value
617
+ return self
618
+
619
+ def getTimeoutCs(self):
620
+ return self.timeoutCs
621
+
622
+ def setTimeoutCs(self, value):
623
+ if value is not None:
624
+ self.timeoutCs = value
625
+ return self
626
+
627
+ def getTransmitterRef(self):
628
+ return self.transmitterRef
629
+
630
+ def setTransmitterRef(self, value):
631
+ if value is not None:
632
+ self.transmitterRef = value
633
+ return self
634
+
635
+ class LinTpNode(Identifiable):
636
+ """
637
+ Represents a LIN transport protocol node in the system,
638
+ defining connector references, response pending settings,
639
+ and timing parameters for LIN TP node configuration.
640
+ """
641
+ def __init__(self, parent: ARObject, short_name: str):
642
+ super().__init__(parent, short_name)
643
+
644
+ self.connectorRef: RefType = None
645
+ self.dropNotRequestedNad: Boolean = None
646
+ self.maxNumberOfRespPendingFrames: Integer = None
647
+ self.p2Max: TimeValue = None
648
+ self.p2Timing: TimeValue = None
649
+ self.tpAddressRef: RefType = None
650
+
651
+ def getConnectorRef(self):
652
+ return self.connectorRef
653
+
654
+ def setConnectorRef(self, value):
655
+ if value is not None:
656
+ self.connectorRef = value
657
+ return self
658
+
659
+ def getDropNotRequestedNad(self):
660
+ return self.dropNotRequestedNad
661
+
662
+ def setDropNotRequestedNad(self, value):
663
+ if value is not None:
664
+ self.dropNotRequestedNad = value
665
+ return self
666
+
667
+ def getMaxNumberOfRespPendingFrames(self):
668
+ return self.maxNumberOfRespPendingFrames
669
+
670
+ def setMaxNumberOfRespPendingFrames(self, value):
671
+ if value is not None:
672
+ self.maxNumberOfRespPendingFrames = value
673
+ return self
674
+
675
+ def getP2Max(self):
676
+ return self.p2Max
677
+
678
+ def setP2Max(self, value):
679
+ if value is not None:
680
+ self.p2Max = value
681
+ return self
682
+
683
+ def getP2Timing(self):
684
+ return self.p2Timing
685
+
686
+ def setP2Timing(self, value):
687
+ if value is not None:
688
+ self.p2Timing = value
689
+ return self
690
+
691
+ def getTpAddressRef(self):
692
+ return self.tpAddressRef
693
+
694
+ def setTpAddressRef(self, value):
695
+ if value is not None:
696
+ self.tpAddressRef = value
697
+ return self
698
+
699
+
700
+ class LinTpConfig(TpConfig):
701
+ """
702
+ Represents LIN transport protocol configuration in the system,
703
+ organizing addresses, connections, and nodes for comprehensive
704
+ LIN TP communication setup.
705
+ """
706
+ def __init__(self, parent: ARObject, short_name: str):
707
+ super().__init__(parent, short_name)
708
+
709
+ self.tpAddresses: List[TpAddress] = []
710
+ self.tpConnections: List[LinTpConnection] = []
711
+ self.tpNodes: List[LinTpNode] = []
712
+
713
+ def getTpAddresses(self):
714
+ return self.tpAddresses
715
+
716
+ def createTpAddress(self, short_name: str):
717
+ if (not self.IsElementExists(short_name)):
718
+ address = TpAddress(self, short_name)
719
+ self.addElement(address)
720
+ self.tpAddresses.append(address)
721
+ return self.getElement(short_name)
722
+
723
+ def getTpConnections(self):
724
+ return self.tpConnections
725
+
726
+ def addTpConnection(self, value):
727
+ if value is not None:
728
+ self.tpConnections.append(value)
729
+ return self
730
+
731
+ def getTpNodes(self):
732
+ return self.tpNodes
733
+
734
+ def createLinTpNode(self, short_name: str):
735
+ if (not self.IsElementExists(short_name)):
736
+ address = LinTpNode(self, short_name)
737
+ self.addElement(address)
738
+ self.tpNodes.append(address)
739
+ return self.getElement(short_name)