armodel 1.8.7__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.
- armodel/__init__.py +19 -3
- armodel/cli/arxml_dump_cli.py +196 -197
- armodel/cli/arxml_format_cli.py +84 -84
- armodel/cli/connector2xlsx_cli.py +73 -73
- armodel/cli/connector_update_cli.py +73 -73
- armodel/cli/file_list_cli.py +69 -69
- armodel/cli/format_xml_cli.py +62 -62
- armodel/cli/memory_section_cli.py +74 -75
- armodel/cli/swc_list_cli.py +79 -79
- armodel/cli/system_signal_cli.py +73 -73
- armodel/cli/uuid_checker_cli.py +95 -95
- armodel/data_models/sw_connector.py +21 -21
- armodel/lib/__init__.py +4 -4
- armodel/lib/cli_args_parser.py +36 -35
- armodel/lib/sw_component.py +34 -35
- armodel/lib/system_signal.py +36 -36
- armodel/models/M2/AUTOSARTemplates/AdaptivePlatform/PlatformModuleDeployment/Firewall/FirewallRule.py +62 -0
- armodel/models/M2/AUTOSARTemplates/AdaptivePlatform/PlatformModuleDeployment/Firewall/FirewallRuleProps.py +83 -0
- armodel/models/M2/AUTOSARTemplates/AdaptivePlatform/PlatformModuleDeployment/Firewall/StateDependentFirewall.py +62 -0
- armodel/models/M2/AUTOSARTemplates/AdaptivePlatform/PlatformModuleDeployment/Firewall/__init__.py +5 -0
- armodel/models/M2/AUTOSARTemplates/AdaptivePlatform/PlatformModuleDeployment/__init__.py +3 -0
- armodel/models/M2/AUTOSARTemplates/AdaptivePlatform/__init__.py +3 -0
- armodel/models/M2/AUTOSARTemplates/AutosarTopLevelStructure/__init__.py +320 -0
- armodel/models/M2/AUTOSARTemplates/AutosarTopLevelStructure.py +315 -318
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswBehavior/BswAsynchronousServerCallReturnsEvent.py +27 -0
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswBehavior/BswExclusiveAreaPolicy.py +22 -0
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswBehavior/BswInterruptEvent.py +18 -0
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswBehavior/BswModeManagerErrorEvent.py +18 -0
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswBehavior/BswModeReceiverPolicy.py +22 -0
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswBehavior/BswSchedulerNamePrefix.py +26 -0
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswBehavior/BswServiceDependency.py +27 -0
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswBehavior/BswTriggerDirectImplementation.py +21 -0
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswBehavior/RoleBasedBswModuleEntryAssignment.py +35 -0
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswBehavior.py +2223 -791
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswImplementation.py +180 -60
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswInterfaces/BswEntryRelationship.py +26 -0
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswInterfaces/BswEntryRelationshipEnum.py +24 -0
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswInterfaces/BswEntryRelationshipSet.py +24 -0
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswInterfaces.py +586 -200
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswOverview/ModeInBswModuleDescriptionInstanceRef.py +17 -0
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswOverview.py +445 -179
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Constants/__init__.py +670 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Filter.py +243 -96
- armodel/models/M2/AUTOSARTemplates/CommonStructure/FlatMap.py +273 -69
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Implementation.py +756 -243
- armodel/models/M2/AUTOSARTemplates/CommonStructure/ImplementationDataTypes.py +336 -170
- armodel/models/M2/AUTOSARTemplates/CommonStructure/InternalBehavior.py +430 -136
- armodel/models/M2/AUTOSARTemplates/CommonStructure/McGroups.py +53 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/ImplementationElementInParameterInstanceRef.py +15 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/McDataAccessDetails.py +60 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/McDataInstance.py +62 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/McFunction.py +62 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/McParameterElementGroup.py +39 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/McSupportData.py +62 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/McSwEmulationMethodSupport.py +37 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/RoleBasedMcDataAssignment.py +61 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/RptSupport/McFunctionDataRefSet.py +39 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/RptSupport/RptAccessEnum.py +12 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/RptSupport/RptComponent.py +60 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/RptSupport/RptEnablerImplTypeEnum.py +11 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/RptSupport/RptExecutableEntity.py +62 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/RptSupport/RptExecutableEntityEvent.py +62 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/RptSupport/RptExecutionContext.py +38 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/RptSupport/RptExecutionControlEnum.py +11 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/RptSupport/RptPreparationEnum.py +11 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/RptSupport/RptServicePoint.py +62 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/RptSupport/RptSupportData.py +111 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/RptSupport/RptSwPrototypingAccess.py +62 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/RptSupport/__init__.py +27 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/__init__.py +19 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/ModeDeclaration.py +424 -148
- armodel/models/M2/AUTOSARTemplates/CommonStructure/ModeDeclarationExtra.py +73 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/ExecutionTime/__init__.py +132 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/HardwareConfiguration.py +93 -32
- armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/HeapUsage.py +78 -10
- armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/MemorySectionUsage.py +239 -81
- armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/SoftwareContext.py +68 -23
- armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/StackUsage.py +274 -92
- armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/__init__.py +135 -53
- armodel/models/M2/AUTOSARTemplates/CommonStructure/ServiceNeeds.py +2955 -839
- armodel/models/M2/AUTOSARTemplates/CommonStructure/SignalServiceTranslation/SignalServiceTranslationControlEnum.py +11 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/SignalServiceTranslation/SignalServiceTranslationElementProps.py +37 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/SignalServiceTranslation/SignalServiceTranslationEventProps.py +37 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/SignalServiceTranslation/SignalServiceTranslationProps.py +38 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/SignalServiceTranslation/SignalServiceTranslationPropsSet.py +38 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/SignalServiceTranslation/__init__.py +13 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/StandardizationTemplate/AbstractBlueprintStructure/AtpBlueprint.py +32 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/StandardizationTemplate/AbstractBlueprintStructure/__init__.py +7 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/StandardizationTemplate/BlueprintDedicated/PortPrototypeBlueprint.py +186 -73
- armodel/models/M2/AUTOSARTemplates/CommonStructure/StandardizationTemplate/BlueprintDedicated/__init__.py +10 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/StandardizationTemplate/BlueprintGenerator/BlueprintGenerator.py +37 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/StandardizationTemplate/BlueprintGenerator/__init__.py +3 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/StandardizationTemplate/BlueprintMapping/BlueprintMappingSet.py +38 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/StandardizationTemplate/BlueprintMapping/__init__.py +3 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/StandardizationTemplate/Keyword.py +126 -45
- armodel/models/M2/AUTOSARTemplates/CommonStructure/StandardizationTemplate/__init__.py +5 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/SwcBswMapping.py +290 -77
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingClock/TDLETZoneClock.py +61 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingClock/TimingClock.py +60 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingClock/TimingClockSyncAccuracy.py +60 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingClock/__init__.py +5 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingCondition/ModeInBswInstanceRef.py +14 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingCondition/ModeInSwcInstanceRef.py +14 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingCondition/TimingCondition.py +61 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingCondition/TimingConditionFormula.py +37 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingCondition/TimingExtensionResource.py +60 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingCondition/TimingModeInstance.py +61 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingCondition/__init__.py +15 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/AgeConstraint.py +57 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/EventTriggeringConstraint.py +203 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/ExecutionOrderConstraint.py +193 -45
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/ExecutionTimeConstraint.py +101 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/LatencyTimingConstraint.py +100 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/OffsetConstraint.py +56 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/SynchronizationPointConstraint.py +57 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/SynchronizationTiming.py +117 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/TimingConstraint.py +59 -24
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/TimingExtensions.py +69 -32
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/__init__.py +48 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/Traceable.py +11 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/__init__.py +16 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/TriggerDeclaration.py +147 -52
- armodel/models/M2/AUTOSARTemplates/CommonStructure/__init__.py +17 -205
- armodel/models/M2/AUTOSARTemplates/DiagnosticExtract/DiagnosticCommonElement.py +11 -0
- armodel/models/M2/AUTOSARTemplates/DiagnosticExtract/DiagnosticContribution.py +137 -47
- armodel/models/M2/AUTOSARTemplates/DiagnosticExtract/__init__.py +10 -0
- armodel/models/M2/AUTOSARTemplates/ECUCDescriptionTemplate.py +285 -346
- armodel/models/M2/AUTOSARTemplates/ECUCParameterDefTemplate.py +1561 -1249
- armodel/models/M2/AUTOSARTemplates/EcuResourceTemplate/HwAttributeValue.py +117 -0
- armodel/models/M2/AUTOSARTemplates/EcuResourceTemplate/HwElementCategory.py +176 -59
- armodel/models/M2/AUTOSARTemplates/EcuResourceTemplate/HwElementConnector.py +73 -0
- armodel/models/M2/AUTOSARTemplates/EcuResourceTemplate/__init__.py +401 -145
- armodel/models/M2/AUTOSARTemplates/GenericStructure/AbstractStructure.py +293 -92
- armodel/models/M2/AUTOSARTemplates/GenericStructure/DocumentationOnM1/__init__.py +39 -0
- armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/ARPackage.py +1314 -816
- armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/AnyInstanceRef.py +88 -0
- armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/ArObject.py +37 -17
- armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/ElementCollection.py +197 -74
- armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/EngineeringObject.py +129 -51
- armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/Enumerations.py +16 -0
- armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/Identifiable.py +599 -236
- armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/PrimitiveTypes.py +902 -594
- armodel/models/M2/AUTOSARTemplates/GenericStructure/LifeCycles.py +395 -155
- armodel/models/M2/AUTOSARTemplates/GenericStructure/RolesAndRights/AtpDefinition.py +36 -0
- armodel/models/M2/AUTOSARTemplates/GenericStructure/RolesAndRights/__init__.py +7 -0
- armodel/models/M2/AUTOSARTemplates/GenericStructure/VariantHandling/AttributeValueVariationPoints/__init__.py +36 -0
- armodel/models/M2/AUTOSARTemplates/GenericStructure/VariantHandling/__init__.py +182 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/ApplicationAttributes/__init__.py +97 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Communication.py +784 -712
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Components/InstanceRefs.py +186 -179
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Components/__init__.py +363 -463
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Composition/InstanceRefs.py +160 -154
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Composition/__init__.py +160 -100
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Datatype/DataPrototypes.py +145 -145
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Datatype/Datatypes.py +137 -131
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/EndToEndProtection.py +191 -184
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/PortInterface/InstanceRefs.py +45 -39
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/PortInterface/__init__.py +647 -641
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/RPTScenario.py +21 -17
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SoftwareComponentDocumentation.py +84 -80
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwComponentType.py +76 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcImplementation.py +37 -34
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/AccessCount.py +26 -21
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/AutosarVariableRef.py +39 -34
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/DataElements.py +57 -52
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/IncludedDataTypes.py +32 -24
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/InstanceRefsUsage.py +160 -155
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/ModeDeclarationGroup.py +68 -63
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/PerInstanceMemory.py +46 -40
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/PortAPIOptions.py +91 -86
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/RTEEvents.py +219 -206
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/ServerCall.py +33 -26
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/ServiceMapping.py +148 -137
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/Trigger.py +54 -49
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/__init__.py +488 -489
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/DataMapping.py +334 -259
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/DiagnosticConnection.py +62 -58
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/DoIp.py +48 -29
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/{EcuResourceMapping.py → ECUResourceMapping.py} +48 -45
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Can/CanCommunication.py +139 -122
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Can/CanTopology.py +628 -344
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Can/__init__.py +2 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet/EthernetCommunication.py +267 -244
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet/EthernetFrame.py +30 -16
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet/EthernetTopology.py +750 -685
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet/NetworkEndpoint.py +375 -327
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet/ServiceInstances.py +924 -975
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Flexray/FlexrayCommunication.py +92 -76
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Flexray/FlexrayTopology.py +669 -654
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Lin/LinCommunication.py +193 -149
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Lin/LinTopology.py +110 -92
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Multiplatform.py +205 -205
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/FibexCore/CoreCommunication.py +1376 -1232
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/FibexCore/CoreTopology.py +800 -662
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/FibexCore/EcuInstance.py +269 -270
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/FibexCore/Timing.py +172 -172
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/InstanceRefs.py +90 -87
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/NetworkManagement.py +899 -789
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/RteEventToOsTaskMapping.py +43 -35
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/SWmapping.py +65 -52
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/SecureCommunication.py +105 -83
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Transformer/__init__.py +574 -524
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/TransportProtocols.py +739 -658
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/__init__.py +493 -458
- armodel/models/M2/MSR/AsamHdo/AdminData.py +150 -136
- armodel/models/M2/MSR/AsamHdo/BaseTypes.py +95 -76
- armodel/models/M2/MSR/AsamHdo/ComputationMethod.py +367 -329
- armodel/models/M2/MSR/AsamHdo/Constraints/GlobalConstraints.py +58 -41
- armodel/models/M2/MSR/AsamHdo/SpecialData.py +99 -87
- armodel/models/M2/MSR/AsamHdo/Units.py +159 -105
- armodel/models/M2/MSR/CalibrationData/CalibrationValue.py +55 -57
- armodel/models/M2/MSR/DataDictionary/AuxillaryObjects.py +40 -41
- armodel/models/M2/MSR/DataDictionary/Axis.py +142 -144
- armodel/models/M2/MSR/DataDictionary/CalibrationParameter.py +35 -36
- armodel/models/M2/MSR/DataDictionary/DataDefProperties.py +383 -351
- armodel/models/M2/MSR/DataDictionary/RecordLayout.py +207 -209
- armodel/models/M2/MSR/DataDictionary/ServiceProcessTask.py +31 -33
- armodel/models/M2/MSR/DataDictionary/SystemConstant.py +32 -0
- armodel/models/M2/MSR/Documentation/Annotation.py +40 -41
- armodel/models/M2/MSR/Documentation/BlockElements/Figure.py +162 -163
- armodel/models/M2/MSR/Documentation/BlockElements/Formula/__init__.py +26 -0
- armodel/models/M2/MSR/Documentation/TextModel/BlockElements/ListElements.py +55 -56
- armodel/models/M2/MSR/Documentation/TextModel/BlockElements/PaginationAndView.py +35 -30
- armodel/models/M2/MSR/Documentation/TextModel/BlockElements/__init__.py +110 -110
- armodel/models/M2/MSR/Documentation/TextModel/LanguageDataModel.py +57 -44
- armodel/models/M2/MSR/Documentation/TextModel/MultilanguageData.py +59 -58
- armodel/models/M2/MSR/Documentation/__init__.py +3 -3
- armodel/models/M2/MSR/documentation/__init__.py +3 -0
- armodel/models/__init__.py +86 -86
- armodel/models/utils/uuid_mgr.py +28 -29
- armodel/parser/__init__.py +2 -2
- armodel/parser/abstract_arxml_parser.py +323 -325
- armodel/parser/arxml_parser.py +5832 -5830
- armodel/parser/connector_xlsx_parser.py +192 -193
- armodel/parser/excel_parser.py +17 -17
- armodel/parser/file_parser.py +46 -46
- armodel/report/__init__.py +1 -1
- armodel/report/connector_xls_report.py +76 -77
- armodel/report/excel_report.py +41 -41
- armodel/transformer/abstract.py +6 -6
- armodel/transformer/admin_data.py +31 -31
- armodel/writer/__init__.py +1 -1
- armodel/writer/abstract_arxml_writer.py +146 -147
- armodel/writer/arxml_writer.py +5969 -5965
- {armodel-1.8.7.dist-info → armodel-1.9.1.dist-info}/METADATA +850 -662
- armodel-1.9.1.dist-info/RECORD +273 -0
- {armodel-1.8.7.dist-info → armodel-1.9.1.dist-info}/WHEEL +1 -1
- {armodel-1.8.7.dist-info → armodel-1.9.1.dist-info}/entry_points.txt +0 -1
- {armodel-1.8.7.dist-info → armodel-1.9.1.dist-info/licenses}/LICENSE +21 -21
- armodel/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/__pycache__/BswBehavior.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/__pycache__/BswImplementation.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/__pycache__/BswInterfaces.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/__pycache__/BswOverview.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/__pycache__/HardwareConfiguration.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/__pycache__/HeapUsage.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/__pycache__/MemorySectionUsage.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/__pycache__/SoftwareContext.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/__pycache__/StackUsage.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/StandardizationTemplate/BlueprintDedicated/__pycache__/PortPrototypeBlueprint.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/StandardizationTemplate/BlueprintDedicated/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/StandardizationTemplate/__pycache__/Keyword.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/StandardizationTemplate/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/SwcInternalBehavior/ModeDeclarationGroup.py +0 -24
- armodel/models/M2/AUTOSARTemplates/CommonStructure/SwcInternalBehavior/__init__.py +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/__pycache__/ExecutionOrderConstraint.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/__pycache__/TimingConstraint.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/__pycache__/TimingExtensions.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/__pycache__/Filter.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/__pycache__/FlatMap.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/__pycache__/Implementation.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/__pycache__/ImplementationDataTypes.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/__pycache__/InternalBehavior.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/__pycache__/ModeDeclaration.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/__pycache__/ServiceNeeds.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/__pycache__/SwcBswMapping.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/__pycache__/TriggerDeclaration.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/DiagnosticExtract/__pycache__/DiagnosticContribution.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/DiagnosticExtract/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/EcuResourceTemplate/__pycache__/HwElementCategory.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/EcuResourceTemplate/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/__pycache__/ARPackage.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/__pycache__/ArObject.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/__pycache__/ElementCollection.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/__pycache__/EngineeringObject.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/__pycache__/Identifiable.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/__pycache__/PrimitiveTypes.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/GenericStructure/__pycache__/AbstractStructure.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/GenericStructure/__pycache__/LifeCycles.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/GenericStructure/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Components/__pycache__/InstanceRefs.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Components/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Composition/__pycache__/InstanceRefs.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Composition/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Datatype/__pycache__/DataPrototypes.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Datatype/__pycache__/Datatypes.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Datatype/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/PortInterface/__pycache__/InstanceRefs.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/PortInterface/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/__pycache__/AccessCount.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/__pycache__/AutosarVariableRef.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/__pycache__/DataElements.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/__pycache__/IncludedDataTypes.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/__pycache__/InstanceRefsUsage.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/__pycache__/ModeDeclarationGroup.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/__pycache__/PerInstanceMemory.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/__pycache__/PortAPIOptions.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/__pycache__/RTEEvents.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/__pycache__/ServerCall.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/__pycache__/ServiceMapping.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/__pycache__/Trigger.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/__pycache__/Communication.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/__pycache__/EndToEndProtection.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/__pycache__/RPTScenario.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/__pycache__/SwcImplementation.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Can/__pycache__/CanCommunication.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Can/__pycache__/CanTopology.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Can/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet/__pycache__/EthernetCommunication.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet/__pycache__/EthernetFrame.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet/__pycache__/EthernetTopology.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet/__pycache__/NetworkEndpoint.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet/__pycache__/ServiceInstances.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Flexray/__pycache__/FlexrayCommunication.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Flexray/__pycache__/FlexrayTopology.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Flexray/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Lin/__pycache__/LinCommunication.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Lin/__pycache__/LinTopology.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Lin/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/FibexCore/__pycache__/CoreCommunication.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/FibexCore/__pycache__/CoreTopology.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/FibexCore/__pycache__/EcuInstance.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/FibexCore/__pycache__/Timing.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/FibexCore/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/__pycache__/Fibex4Multiplatform.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Transformer/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/__pycache__/DataMapping.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/__pycache__/DiagnosticConnection.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/__pycache__/DoIp.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/__pycache__/EcuResourceMapping.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/__pycache__/InstanceRefs.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/__pycache__/NetworkManagement.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/__pycache__/RteEventToOsTaskMapping.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/__pycache__/SWmapping.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/__pycache__/SecureCommunication.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/__pycache__/TransportProtocols.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/__pycache__/AutosarTopLevelStructure.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/__pycache__/ECUCDescriptionTemplate.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/__pycache__/ECUCParameterDefTemplate.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/AsamHdo/Constraints/__pycache__/GlobalConstraints.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/AsamHdo/Constraints/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/AsamHdo/__pycache__/AdminData.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/AsamHdo/__pycache__/BaseTypes.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/AsamHdo/__pycache__/ComputationMethod.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/AsamHdo/__pycache__/SpecialData.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/AsamHdo/__pycache__/Units.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/AsamHdo/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/CalibrationData/__pycache__/CalibrationValue.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/CalibrationData/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/DataDictionary/__pycache__/AuxillaryObjects.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/DataDictionary/__pycache__/Axis.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/DataDictionary/__pycache__/CalibrationParameter.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/DataDictionary/__pycache__/DataDefProperties.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/DataDictionary/__pycache__/RecordLayout.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/DataDictionary/__pycache__/ServiceProcessTask.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/DataDictionary/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/Documentation/BlockElements/__pycache__/Figure.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/Documentation/BlockElements/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/Documentation/BlockElements.py +0 -18
- armodel/models/M2/MSR/Documentation/TextModel/BlockElements/__pycache__/ListElements.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/Documentation/TextModel/BlockElements/__pycache__/PaginationAndView.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/Documentation/TextModel/BlockElements/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/Documentation/TextModel/__pycache__/LanguageDataModel.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/Documentation/TextModel/__pycache__/MultilanguageData.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/Documentation/TextModel/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/Documentation/__pycache__/Annotation.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/Documentation/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/utils/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/utils/__pycache__/uuid_mgr.cpython-312.pyc +0 -0
- armodel/parser/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/parser/__pycache__/abstract_arxml_parser.cpython-312.pyc +0 -0
- armodel/parser/__pycache__/arxml_parser.cpython-312.pyc +0 -0
- armodel/parser/__pycache__/file_parser.cpython-312.pyc +0 -0
- armodel/tests/__init__.py +0 -0
- armodel/tests/test_armodel/__init__.py +0 -0
- armodel/tests/test_armodel/models/__init__.py +0 -0
- armodel/tests/test_armodel/models/test_ECUCParameterDefTemplate.py +0 -116
- armodel/tests/test_armodel/models/test_Identifiable.py +0 -85
- armodel/tests/test_armodel/models/test_ar_object.py +0 -154
- armodel/tests/test_armodel/models/test_ar_package.py +0 -304
- armodel/tests/test_armodel/models/test_ar_ref.py +0 -81
- armodel/tests/test_armodel/models/test_bsw_module_template.py +0 -52
- armodel/tests/test_armodel/models/test_common_structure.py +0 -82
- armodel/tests/test_armodel/models/test_data_dictionary.py +0 -30
- armodel/tests/test_armodel/models/test_data_prototype.py +0 -93
- armodel/tests/test_armodel/models/test_datatype.py +0 -251
- armodel/tests/test_armodel/models/test_general_structure.py +0 -56
- armodel/tests/test_armodel/models/test_implementation.py +0 -27
- armodel/tests/test_armodel/models/test_m2_msr.py +0 -79
- armodel/tests/test_armodel/models/test_port_interface.py +0 -202
- armodel/tests/test_armodel/models/test_port_prototype.py +0 -15
- armodel/tests/test_armodel/parser/__init__.py +0 -0
- armodel/tests/test_armodel/parser/test_arxml_parser.py +0 -53
- armodel/tests/test_armodel/parser/test_bsw_module_descriiption.py +0 -218
- armodel/tests/test_armodel/parser/test_implementation_data_type.py +0 -247
- armodel/tests/test_armodel/parser/test_parse_bswmd.py +0 -202
- armodel/tests/test_armodel/parser/test_rte_event.py +0 -142
- armodel/tests/test_armodel/parser/test_runnable_entity.py +0 -135
- armodel/tests/test_armodel/parser/test_sw_components.py +0 -484
- armodel/tests/test_armodel/parser/test_system.py +0 -23
- armodel/writer/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/writer/__pycache__/abstract_arxml_writer.cpython-312.pyc +0 -0
- armodel/writer/__pycache__/arxml_writer.cpython-312.pyc +0 -0
- armodel-1.8.7.dist-info/RECORD +0 -360
- {armodel-1.8.7.dist-info → armodel-1.9.1.dist-info}/top_level.txt +0 -0
|
@@ -1,236 +1,599 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
from
|
|
7
|
-
from
|
|
8
|
-
from
|
|
9
|
-
from
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
self.
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
return self.
|
|
36
|
-
|
|
37
|
-
@
|
|
38
|
-
def
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
def
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
def
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
class
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
self.
|
|
127
|
-
self.
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
return self
|
|
138
|
-
|
|
139
|
-
def
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
if
|
|
154
|
-
self.
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
return self
|
|
165
|
-
|
|
166
|
-
def
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
return self.
|
|
202
|
-
|
|
203
|
-
def
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
def
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
1
|
+
"""
|
|
2
|
+
This module contains classes for representing identifiable elements in AUTOSAR models
|
|
3
|
+
in the GenericStructure module.
|
|
4
|
+
"""
|
|
5
|
+
|
|
6
|
+
from armodel.models.M2.MSR.Documentation.TextModel.BlockElements import DocumentationBlock
|
|
7
|
+
from armodel.models.M2.MSR.AsamHdo.AdminData import AdminData
|
|
8
|
+
from armodel.models.M2.MSR.Documentation.TextModel.MultilanguageData import MultilanguageLongName
|
|
9
|
+
from armodel.models.M2.MSR.Documentation.Annotation import Annotation
|
|
10
|
+
from armodel.models.M2.MSR.Documentation.TextModel.MultilanguageData import MultiLanguageOverviewParagraph
|
|
11
|
+
from armodel.models.M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.ArObject import ARObject
|
|
12
|
+
from armodel.models.M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import CategoryString
|
|
13
|
+
from abc import ABC
|
|
14
|
+
from typing import Dict, List, Optional, Any
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
class Referrable(ARObject, ABC):
|
|
18
|
+
"""
|
|
19
|
+
Abstract class for elements that can be referenced by other elements in AUTOSAR models.
|
|
20
|
+
This class provides basic functionality for managing short names and parent-child relationships.
|
|
21
|
+
"""
|
|
22
|
+
|
|
23
|
+
def __init__(self, parent: ARObject, short_name: str):
|
|
24
|
+
if type(self) is Referrable:
|
|
25
|
+
raise TypeError("Referrable is an abstract class.")
|
|
26
|
+
|
|
27
|
+
ARObject.__init__(self)
|
|
28
|
+
|
|
29
|
+
self.parent = parent
|
|
30
|
+
self.short_name = short_name
|
|
31
|
+
|
|
32
|
+
@property
|
|
33
|
+
def shortName(self) -> str:
|
|
34
|
+
"""str: The short name of this referrable element."""
|
|
35
|
+
return self.short_name
|
|
36
|
+
|
|
37
|
+
@shortName.setter
|
|
38
|
+
def shortName(self, value: str):
|
|
39
|
+
self.short_name = value
|
|
40
|
+
|
|
41
|
+
def getShortName(self) -> str:
|
|
42
|
+
"""
|
|
43
|
+
Gets the short name of this referrable element.
|
|
44
|
+
|
|
45
|
+
Returns:
|
|
46
|
+
The short name of this element
|
|
47
|
+
"""
|
|
48
|
+
return self.short_name
|
|
49
|
+
|
|
50
|
+
def getParent(self) -> ARObject:
|
|
51
|
+
"""
|
|
52
|
+
Gets the parent of this referrable element.
|
|
53
|
+
|
|
54
|
+
Returns:
|
|
55
|
+
The parent ARObject
|
|
56
|
+
"""
|
|
57
|
+
return self.parent
|
|
58
|
+
|
|
59
|
+
@property
|
|
60
|
+
def full_name(self) -> str:
|
|
61
|
+
"""
|
|
62
|
+
str: The full name of this element, including the parent's full name.
|
|
63
|
+
"""
|
|
64
|
+
return self.parent.full_name + "/" + self.short_name
|
|
65
|
+
|
|
66
|
+
def getFullName(self) -> str:
|
|
67
|
+
"""
|
|
68
|
+
Gets the full name of this element, including the parent's full name.
|
|
69
|
+
|
|
70
|
+
Returns:
|
|
71
|
+
The full name of this element
|
|
72
|
+
"""
|
|
73
|
+
return self.full_name
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
class MultilanguageReferrable(Referrable, ABC):
|
|
77
|
+
"""
|
|
78
|
+
Abstract class for referrable elements that support multilingual text.
|
|
79
|
+
This class extends Referrable with multilingual support functionality.
|
|
80
|
+
"""
|
|
81
|
+
|
|
82
|
+
def __init__(self, parent: ARObject, short_name: str):
|
|
83
|
+
if type(self) is MultilanguageReferrable:
|
|
84
|
+
raise TypeError("MultilanguageReferrable is an abstract class.")
|
|
85
|
+
|
|
86
|
+
super().__init__(parent, short_name)
|
|
87
|
+
|
|
88
|
+
# self._parent = parent
|
|
89
|
+
self.longName: Optional[MultilanguageLongName] = None
|
|
90
|
+
|
|
91
|
+
def getLongName(self) -> Optional[MultilanguageLongName]:
|
|
92
|
+
"""
|
|
93
|
+
Gets the long name of this multilingual referrable element.
|
|
94
|
+
|
|
95
|
+
Returns:
|
|
96
|
+
MultilanguageLongName representing the long name, or None if not set
|
|
97
|
+
"""
|
|
98
|
+
return self.longName
|
|
99
|
+
|
|
100
|
+
def setLongName(self, value: MultilanguageLongName):
|
|
101
|
+
"""
|
|
102
|
+
Sets the long name of this multilingual referrable element.
|
|
103
|
+
|
|
104
|
+
Args:
|
|
105
|
+
value: The long name to set
|
|
106
|
+
|
|
107
|
+
Returns:
|
|
108
|
+
self for method chaining
|
|
109
|
+
"""
|
|
110
|
+
self.longName = value
|
|
111
|
+
return self
|
|
112
|
+
|
|
113
|
+
|
|
114
|
+
class CollectableElement(ARObject, ABC):
|
|
115
|
+
"""
|
|
116
|
+
Abstract class for elements that can collect other referrable elements.
|
|
117
|
+
This class provides functionality for managing collections of elements with lookup capabilities.
|
|
118
|
+
"""
|
|
119
|
+
|
|
120
|
+
def __init__(self):
|
|
121
|
+
if type(self) is CollectableElement:
|
|
122
|
+
raise TypeError("CollectableElement is an abstract class.")
|
|
123
|
+
|
|
124
|
+
super().__init__()
|
|
125
|
+
|
|
126
|
+
self.elements: List[Referrable] = []
|
|
127
|
+
self.element_mappings: Dict[str, List[Referrable]] = {}
|
|
128
|
+
|
|
129
|
+
def getTotalElement(self) -> int:
|
|
130
|
+
"""
|
|
131
|
+
Gets the total number of elements in this collection.
|
|
132
|
+
|
|
133
|
+
Returns:
|
|
134
|
+
The count of elements in the collection
|
|
135
|
+
"""
|
|
136
|
+
# return len(list(filter(lambda a: not isinstance(a, ARPackage) , self.elements)))
|
|
137
|
+
return len(self.elements)
|
|
138
|
+
|
|
139
|
+
def removeElement(self, short_name: str, type=None):
|
|
140
|
+
"""
|
|
141
|
+
Removes an element from this collection.
|
|
142
|
+
|
|
143
|
+
Args:
|
|
144
|
+
short_name: The short name of the element to remove
|
|
145
|
+
type: The type of element to remove (optional)
|
|
146
|
+
"""
|
|
147
|
+
if short_name not in self.element_mappings:
|
|
148
|
+
raise KeyError("Invalid key <%s> for removing element" % short_name)
|
|
149
|
+
if type is None:
|
|
150
|
+
item = self.element_mappings[short_name][0]
|
|
151
|
+
else:
|
|
152
|
+
item = next(filter(lambda a: isinstance(a, type), self.element_mappings[short_name]))
|
|
153
|
+
if item is not None:
|
|
154
|
+
self.elements.remove(item)
|
|
155
|
+
self.element_mappings[short_name].remove(item)
|
|
156
|
+
|
|
157
|
+
def getElements(self) -> List[Referrable]:
|
|
158
|
+
"""
|
|
159
|
+
Gets the list of elements in this collection.
|
|
160
|
+
|
|
161
|
+
Returns:
|
|
162
|
+
List of Referrable instances
|
|
163
|
+
"""
|
|
164
|
+
return self.elements
|
|
165
|
+
|
|
166
|
+
def addElement(self, element: Referrable):
|
|
167
|
+
"""
|
|
168
|
+
Adds an element to this collection.
|
|
169
|
+
|
|
170
|
+
Args:
|
|
171
|
+
element: The element to add
|
|
172
|
+
|
|
173
|
+
Returns:
|
|
174
|
+
self for method chaining
|
|
175
|
+
"""
|
|
176
|
+
short_name = element.getShortName()
|
|
177
|
+
if not self.IsElementExists(short_name, type(element)):
|
|
178
|
+
self.elements.append(element)
|
|
179
|
+
if short_name not in self.element_mappings:
|
|
180
|
+
self.element_mappings[short_name] = []
|
|
181
|
+
self.element_mappings[short_name].append(element)
|
|
182
|
+
|
|
183
|
+
def getElement(self, short_name: str, type=None) -> Optional[Referrable]:
|
|
184
|
+
"""
|
|
185
|
+
Gets an element from this collection by short name and type.
|
|
186
|
+
|
|
187
|
+
Args:
|
|
188
|
+
short_name: The short name of the element to find
|
|
189
|
+
type: The type of element to find (optional)
|
|
190
|
+
|
|
191
|
+
Returns:
|
|
192
|
+
The found Referrable instance, or None if not found
|
|
193
|
+
"""
|
|
194
|
+
if (short_name not in self.element_mappings):
|
|
195
|
+
return None
|
|
196
|
+
if type is not None:
|
|
197
|
+
result = list(filter(lambda a: isinstance(a, type), self.element_mappings[short_name]))
|
|
198
|
+
if len(result) == 0:
|
|
199
|
+
return None
|
|
200
|
+
return result[0]
|
|
201
|
+
return self.element_mappings[short_name][0]
|
|
202
|
+
|
|
203
|
+
def IsElementExists(self, short_name: str, type=None) -> bool:
|
|
204
|
+
"""
|
|
205
|
+
Checks if an element with the specified short name and type exists in this collection.
|
|
206
|
+
|
|
207
|
+
Args:
|
|
208
|
+
short_name: The short name of the element to check
|
|
209
|
+
type: The type of element to check (optional)
|
|
210
|
+
|
|
211
|
+
Returns:
|
|
212
|
+
True if the element exists, False otherwise
|
|
213
|
+
"""
|
|
214
|
+
if type is None:
|
|
215
|
+
return short_name in self.element_mappings
|
|
216
|
+
if short_name in self.element_mappings:
|
|
217
|
+
return any(isinstance(a, type) for a in self.element_mappings[short_name])
|
|
218
|
+
return False
|
|
219
|
+
|
|
220
|
+
|
|
221
|
+
class Identifiable(MultilanguageReferrable, ABC):
|
|
222
|
+
"""
|
|
223
|
+
Abstract class for identifiable elements in AUTOSAR models.
|
|
224
|
+
This class combines multilingual referrable functionality with element collection capabilities.
|
|
225
|
+
"""
|
|
226
|
+
|
|
227
|
+
def __init__(self, parent: ARObject, short_name: str):
|
|
228
|
+
if type(self) is Identifiable:
|
|
229
|
+
raise TypeError("Identifiable is an abstract class.")
|
|
230
|
+
|
|
231
|
+
MultilanguageReferrable.__init__(self, parent, short_name)
|
|
232
|
+
|
|
233
|
+
self.elements: List[Referrable] = []
|
|
234
|
+
self.element_mappings: Dict[str, List[Referrable]] = {}
|
|
235
|
+
|
|
236
|
+
self.annotations: List[Annotation] = []
|
|
237
|
+
self.adminData: Optional[AdminData] = None
|
|
238
|
+
self.category: Optional[CategoryString] = None
|
|
239
|
+
self.introduction: Optional[DocumentationBlock] = None
|
|
240
|
+
self.desc: Optional[MultiLanguageOverviewParagraph] = None
|
|
241
|
+
|
|
242
|
+
def getTotalElement(self) -> int:
|
|
243
|
+
"""
|
|
244
|
+
Gets the total number of elements in this collection.
|
|
245
|
+
|
|
246
|
+
Returns:
|
|
247
|
+
The count of elements in the collection
|
|
248
|
+
"""
|
|
249
|
+
return len(self.elements)
|
|
250
|
+
|
|
251
|
+
def removeElement(self, short_name: str, type=None):
|
|
252
|
+
"""
|
|
253
|
+
Removes an element from this collection.
|
|
254
|
+
|
|
255
|
+
Args:
|
|
256
|
+
short_name: The short name of the element to remove
|
|
257
|
+
type: The type of element to remove (optional)
|
|
258
|
+
"""
|
|
259
|
+
if short_name not in self.element_mappings:
|
|
260
|
+
raise KeyError("Invalid key <%s> for removing element" % short_name)
|
|
261
|
+
if type is None:
|
|
262
|
+
item = self.element_mappings[short_name][0]
|
|
263
|
+
else:
|
|
264
|
+
item = next(filter(lambda a: isinstance(a, type), self.element_mappings[short_name]))
|
|
265
|
+
if item is not None:
|
|
266
|
+
self.elements.remove(item)
|
|
267
|
+
self.element_mappings[short_name].remove(item)
|
|
268
|
+
|
|
269
|
+
def getElements(self) -> List[Referrable]:
|
|
270
|
+
"""
|
|
271
|
+
Gets the list of elements in this collection.
|
|
272
|
+
|
|
273
|
+
Returns:
|
|
274
|
+
List of Referrable instances
|
|
275
|
+
"""
|
|
276
|
+
return self.elements
|
|
277
|
+
|
|
278
|
+
def addElement(self, element: Referrable):
|
|
279
|
+
"""
|
|
280
|
+
Adds an element to this collection.
|
|
281
|
+
|
|
282
|
+
Args:
|
|
283
|
+
element: The element to add
|
|
284
|
+
|
|
285
|
+
Returns:
|
|
286
|
+
self for method chaining
|
|
287
|
+
"""
|
|
288
|
+
short_name = element.getShortName()
|
|
289
|
+
if not self.IsElementExists(short_name, type(element)):
|
|
290
|
+
self.elements.append(element)
|
|
291
|
+
if short_name not in self.element_mappings:
|
|
292
|
+
self.element_mappings[short_name] = []
|
|
293
|
+
self.element_mappings[short_name].append(element)
|
|
294
|
+
|
|
295
|
+
def getElement(self, short_name: str, type=None) -> Optional[Referrable]:
|
|
296
|
+
"""
|
|
297
|
+
Gets an element from this collection by short name and type.
|
|
298
|
+
|
|
299
|
+
Args:
|
|
300
|
+
short_name: The short name of the element to find
|
|
301
|
+
type: The type of element to find (optional)
|
|
302
|
+
|
|
303
|
+
Returns:
|
|
304
|
+
The found Referrable instance, or None if not found
|
|
305
|
+
"""
|
|
306
|
+
if (short_name not in self.element_mappings):
|
|
307
|
+
return None
|
|
308
|
+
if type is not None:
|
|
309
|
+
result = list(filter(lambda a: isinstance(a, type), self.element_mappings[short_name]))
|
|
310
|
+
if len(result) == 0:
|
|
311
|
+
return None
|
|
312
|
+
return result[0]
|
|
313
|
+
return self.element_mappings[short_name][0]
|
|
314
|
+
|
|
315
|
+
def IsElementExists(self, short_name: str, type=None) -> bool:
|
|
316
|
+
"""
|
|
317
|
+
Checks if an element with the specified short name and type exists in this collection.
|
|
318
|
+
|
|
319
|
+
Args:
|
|
320
|
+
short_name: The short name of the element to check
|
|
321
|
+
type: The type of element to check (optional)
|
|
322
|
+
|
|
323
|
+
Returns:
|
|
324
|
+
True if the element exists, False otherwise
|
|
325
|
+
"""
|
|
326
|
+
if type is None:
|
|
327
|
+
return short_name in self.element_mappings
|
|
328
|
+
if short_name in self.element_mappings:
|
|
329
|
+
return any(isinstance(a, type) for a in self.element_mappings[short_name])
|
|
330
|
+
return False
|
|
331
|
+
|
|
332
|
+
def getAdminData(self) -> Optional[AdminData]:
|
|
333
|
+
"""
|
|
334
|
+
Gets the administrative data for this identifiable element.
|
|
335
|
+
|
|
336
|
+
Returns:
|
|
337
|
+
AdminData instance, or None if not set
|
|
338
|
+
"""
|
|
339
|
+
return self.adminData
|
|
340
|
+
|
|
341
|
+
def setAdminData(self, value: AdminData):
|
|
342
|
+
"""
|
|
343
|
+
Sets the administrative data for this identifiable element.
|
|
344
|
+
Only sets the value if it is not None.
|
|
345
|
+
|
|
346
|
+
Args:
|
|
347
|
+
value: The administrative data to set
|
|
348
|
+
|
|
349
|
+
Returns:
|
|
350
|
+
self for method chaining
|
|
351
|
+
"""
|
|
352
|
+
if value is not None:
|
|
353
|
+
self.adminData = value
|
|
354
|
+
return self
|
|
355
|
+
|
|
356
|
+
def removeAdminData(self):
|
|
357
|
+
"""
|
|
358
|
+
Removes the administrative data for this identifiable element.
|
|
359
|
+
"""
|
|
360
|
+
self.adminData = None
|
|
361
|
+
|
|
362
|
+
def getDesc(self) -> Optional[MultiLanguageOverviewParagraph]:
|
|
363
|
+
"""
|
|
364
|
+
Gets the description for this identifiable element.
|
|
365
|
+
|
|
366
|
+
Returns:
|
|
367
|
+
MultiLanguageOverviewParagraph instance, or None if not set
|
|
368
|
+
"""
|
|
369
|
+
return self.desc
|
|
370
|
+
|
|
371
|
+
def setDesc(self, value: MultiLanguageOverviewParagraph):
|
|
372
|
+
"""
|
|
373
|
+
Sets the description for this identifiable element.
|
|
374
|
+
|
|
375
|
+
Args:
|
|
376
|
+
value: The description to set
|
|
377
|
+
|
|
378
|
+
Returns:
|
|
379
|
+
self for method chaining
|
|
380
|
+
"""
|
|
381
|
+
self.desc = value
|
|
382
|
+
return self
|
|
383
|
+
|
|
384
|
+
def getCategory(self) -> Optional[CategoryString]:
|
|
385
|
+
"""
|
|
386
|
+
Gets the category for this identifiable element.
|
|
387
|
+
|
|
388
|
+
Returns:
|
|
389
|
+
CategoryString instance, or None if not set
|
|
390
|
+
"""
|
|
391
|
+
return self.category
|
|
392
|
+
|
|
393
|
+
def setCategory(self, value: Any):
|
|
394
|
+
"""
|
|
395
|
+
Sets the category for this identifiable element.
|
|
396
|
+
If the value is a string, it will be converted to a CategoryString.
|
|
397
|
+
|
|
398
|
+
Args:
|
|
399
|
+
value: The category to set
|
|
400
|
+
|
|
401
|
+
Returns:
|
|
402
|
+
self for method chaining
|
|
403
|
+
"""
|
|
404
|
+
if isinstance(value, str):
|
|
405
|
+
self.category = CategoryString().setValue(value)
|
|
406
|
+
else:
|
|
407
|
+
self.category = value
|
|
408
|
+
return self
|
|
409
|
+
|
|
410
|
+
def getIntroduction(self) -> Optional[DocumentationBlock]:
|
|
411
|
+
"""
|
|
412
|
+
Gets the introduction documentation for this identifiable element.
|
|
413
|
+
|
|
414
|
+
Returns:
|
|
415
|
+
DocumentationBlock instance, or None if not set
|
|
416
|
+
"""
|
|
417
|
+
return self.introduction
|
|
418
|
+
|
|
419
|
+
def setIntroduction(self, value: DocumentationBlock):
|
|
420
|
+
"""
|
|
421
|
+
Sets the introduction documentation for this identifiable element.
|
|
422
|
+
|
|
423
|
+
Args:
|
|
424
|
+
value: The introduction documentation to set
|
|
425
|
+
|
|
426
|
+
Returns:
|
|
427
|
+
self for method chaining
|
|
428
|
+
"""
|
|
429
|
+
self.introduction = value
|
|
430
|
+
return self
|
|
431
|
+
|
|
432
|
+
def addAnnotation(self, annotation: Annotation):
|
|
433
|
+
"""
|
|
434
|
+
Adds an annotation to this identifiable element.
|
|
435
|
+
|
|
436
|
+
Args:
|
|
437
|
+
annotation: The annotation to add
|
|
438
|
+
|
|
439
|
+
Returns:
|
|
440
|
+
self for method chaining
|
|
441
|
+
"""
|
|
442
|
+
self.annotations.append(annotation)
|
|
443
|
+
return self
|
|
444
|
+
|
|
445
|
+
def getAnnotations(self) -> List[Annotation]:
|
|
446
|
+
"""
|
|
447
|
+
Gets the list of annotations for this identifiable element.
|
|
448
|
+
|
|
449
|
+
Returns:
|
|
450
|
+
List of Annotation instances
|
|
451
|
+
"""
|
|
452
|
+
return self.annotations
|
|
453
|
+
|
|
454
|
+
|
|
455
|
+
class PackageableElement(Identifiable, ABC):
|
|
456
|
+
"""
|
|
457
|
+
Abstract class for elements that can be packaged in AUTOSAR models.
|
|
458
|
+
This class extends Identifiable with packaging functionality.
|
|
459
|
+
"""
|
|
460
|
+
|
|
461
|
+
def __init__(self, parent: ARObject, short_name: str):
|
|
462
|
+
if type(self) is PackageableElement:
|
|
463
|
+
raise TypeError("PackageableElement is an abstract class.")
|
|
464
|
+
super().__init__(parent, short_name)
|
|
465
|
+
|
|
466
|
+
|
|
467
|
+
class ARElement(PackageableElement, ABC):
|
|
468
|
+
"""
|
|
469
|
+
Abstract class for AUTOSAR elements.
|
|
470
|
+
This class represents the basic structure for all AUTOSAR model elements.
|
|
471
|
+
"""
|
|
472
|
+
|
|
473
|
+
def __init__(self, parent: ARObject, short_name: str):
|
|
474
|
+
if type(self) is ARElement:
|
|
475
|
+
raise TypeError("ARElement is an abstract class.")
|
|
476
|
+
super().__init__(parent, short_name)
|
|
477
|
+
|
|
478
|
+
|
|
479
|
+
class Describable(ARObject, ABC):
|
|
480
|
+
"""
|
|
481
|
+
Abstract class for elements that can be described in AUTOSAR models.
|
|
482
|
+
This class provides basic description functionality for AUTOSAR elements.
|
|
483
|
+
"""
|
|
484
|
+
|
|
485
|
+
def __init__(self):
|
|
486
|
+
if type(self) is Describable:
|
|
487
|
+
raise TypeError("Describable is an abstract class.")
|
|
488
|
+
|
|
489
|
+
super().__init__()
|
|
490
|
+
|
|
491
|
+
self.desc = None
|
|
492
|
+
self.category = None
|
|
493
|
+
self.adminData = None
|
|
494
|
+
self.introduction = None
|
|
495
|
+
|
|
496
|
+
def getDesc(self) -> Optional[MultiLanguageOverviewParagraph]:
|
|
497
|
+
"""
|
|
498
|
+
Gets the description for this describable element.
|
|
499
|
+
|
|
500
|
+
Returns:
|
|
501
|
+
MultiLanguageOverviewParagraph instance, or None if not set
|
|
502
|
+
"""
|
|
503
|
+
return self.desc
|
|
504
|
+
|
|
505
|
+
def setDesc(self, value: MultiLanguageOverviewParagraph):
|
|
506
|
+
"""
|
|
507
|
+
Sets the description for this describable element.
|
|
508
|
+
Only sets the value if it is not None.
|
|
509
|
+
|
|
510
|
+
Args:
|
|
511
|
+
value: The description to set
|
|
512
|
+
|
|
513
|
+
Returns:
|
|
514
|
+
self for method chaining
|
|
515
|
+
"""
|
|
516
|
+
if value is not None:
|
|
517
|
+
self.desc = value
|
|
518
|
+
return self
|
|
519
|
+
|
|
520
|
+
def getCategory(self) -> Optional[CategoryString]:
|
|
521
|
+
"""
|
|
522
|
+
Gets the category for this describable element.
|
|
523
|
+
|
|
524
|
+
Returns:
|
|
525
|
+
CategoryString instance, or None if not set
|
|
526
|
+
"""
|
|
527
|
+
return self.category
|
|
528
|
+
|
|
529
|
+
def setCategory(self, value: CategoryString):
|
|
530
|
+
"""
|
|
531
|
+
Sets the category for this describable element.
|
|
532
|
+
Only sets the value if it is not None.
|
|
533
|
+
|
|
534
|
+
Args:
|
|
535
|
+
value: The category to set
|
|
536
|
+
|
|
537
|
+
Returns:
|
|
538
|
+
self for method chaining
|
|
539
|
+
"""
|
|
540
|
+
if value is not None:
|
|
541
|
+
self.category = value
|
|
542
|
+
return self
|
|
543
|
+
|
|
544
|
+
def getAdminData(self) -> Optional[AdminData]:
|
|
545
|
+
"""
|
|
546
|
+
Gets the administrative data for this describable element.
|
|
547
|
+
|
|
548
|
+
Returns:
|
|
549
|
+
AdminData instance, or None if not set
|
|
550
|
+
"""
|
|
551
|
+
return self.adminData
|
|
552
|
+
|
|
553
|
+
def setAdminData(self, value: AdminData):
|
|
554
|
+
"""
|
|
555
|
+
Sets the administrative data for this describable element.
|
|
556
|
+
Only sets the value if it is not None.
|
|
557
|
+
|
|
558
|
+
Args:
|
|
559
|
+
value: The administrative data to set
|
|
560
|
+
|
|
561
|
+
Returns:
|
|
562
|
+
self for method chaining
|
|
563
|
+
"""
|
|
564
|
+
if value is not None:
|
|
565
|
+
self.adminData = value
|
|
566
|
+
return self
|
|
567
|
+
|
|
568
|
+
def removeAdminData(self):
|
|
569
|
+
"""
|
|
570
|
+
Removes the administrative data for this describable element.
|
|
571
|
+
"""
|
|
572
|
+
self.adminData = None
|
|
573
|
+
|
|
574
|
+
def getIntroduction(self) -> Optional[DocumentationBlock]:
|
|
575
|
+
"""
|
|
576
|
+
Gets the introduction documentation for this describable element.
|
|
577
|
+
|
|
578
|
+
Returns:
|
|
579
|
+
DocumentationBlock instance, or None if not set
|
|
580
|
+
"""
|
|
581
|
+
return self.introduction
|
|
582
|
+
|
|
583
|
+
def setIntroduction(self, value: DocumentationBlock):
|
|
584
|
+
"""
|
|
585
|
+
Sets the introduction documentation for this describable element.
|
|
586
|
+
Only sets the value if it is not None.
|
|
587
|
+
|
|
588
|
+
Args:
|
|
589
|
+
value: The introduction documentation to set
|
|
590
|
+
|
|
591
|
+
Returns:
|
|
592
|
+
self for method chaining
|
|
593
|
+
"""
|
|
594
|
+
if value is not None:
|
|
595
|
+
self.introduction = value
|
|
596
|
+
return self
|
|
597
|
+
|
|
598
|
+
|
|
599
|
+
|