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
armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/PrimitiveTypes.py
CHANGED
|
@@ -1,594 +1,902 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
def
|
|
19
|
-
self.
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
def
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
def
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
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
|
-
|
|
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
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
if
|
|
152
|
-
|
|
153
|
-
return self
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
self.
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
def
|
|
183
|
-
if
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
def
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
def __init__(self)
|
|
221
|
-
super().__init__()
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
def
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
return
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
def
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
* xml.xsd.
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
1
|
+
"""
|
|
2
|
+
This module contains primitive type classes for AUTOSAR models
|
|
3
|
+
in the GenericStructure module.
|
|
4
|
+
"""
|
|
5
|
+
|
|
6
|
+
from abc import ABC
|
|
7
|
+
import re
|
|
8
|
+
from typing import List, Optional, Union, Any
|
|
9
|
+
from armodel.models.M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.ArObject import ARObject
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
class ARType(ABC):
|
|
13
|
+
"""
|
|
14
|
+
Abstract base class for all AUTOSAR types.
|
|
15
|
+
This class provides the basic structure for all AUTOSAR type definitions.
|
|
16
|
+
"""
|
|
17
|
+
|
|
18
|
+
def __init__(self) -> None:
|
|
19
|
+
self.timestamp: Optional[str] = None
|
|
20
|
+
self.uuid: Optional[str] = None
|
|
21
|
+
self._value: Optional[Any] = None
|
|
22
|
+
|
|
23
|
+
@property
|
|
24
|
+
def value(self) -> Optional[Any]:
|
|
25
|
+
"""Optional[Any]: The current value of this AUTOSAR type."""
|
|
26
|
+
return self._value
|
|
27
|
+
|
|
28
|
+
@value.setter
|
|
29
|
+
def value(self, val: Optional[Any]):
|
|
30
|
+
self._value = val
|
|
31
|
+
|
|
32
|
+
def getValue(self) -> Optional[Any]:
|
|
33
|
+
"""
|
|
34
|
+
Gets the current value of this AUTOSAR type.
|
|
35
|
+
|
|
36
|
+
Returns:
|
|
37
|
+
The current value, or None if not set
|
|
38
|
+
"""
|
|
39
|
+
return self.value
|
|
40
|
+
|
|
41
|
+
def setValue(self, val: Optional[Any]):
|
|
42
|
+
"""
|
|
43
|
+
Sets the value of this AUTOSAR type.
|
|
44
|
+
Only sets the value if it is not None.
|
|
45
|
+
|
|
46
|
+
Args:
|
|
47
|
+
val: The value to set
|
|
48
|
+
|
|
49
|
+
Returns:
|
|
50
|
+
self for method chaining
|
|
51
|
+
"""
|
|
52
|
+
if val is not None:
|
|
53
|
+
self.value = val
|
|
54
|
+
return self
|
|
55
|
+
|
|
56
|
+
def getText(self) -> str:
|
|
57
|
+
"""
|
|
58
|
+
Gets the text representation of this type.
|
|
59
|
+
|
|
60
|
+
Returns:
|
|
61
|
+
String representation of this type
|
|
62
|
+
"""
|
|
63
|
+
return str(self)
|
|
64
|
+
|
|
65
|
+
|
|
66
|
+
class ARNumerical(ARType):
|
|
67
|
+
"""
|
|
68
|
+
Base class for numerical AUTOSAR types.
|
|
69
|
+
This class provides functionality for numerical values in AUTOSAR models.
|
|
70
|
+
"""
|
|
71
|
+
|
|
72
|
+
def __init__(self) -> None:
|
|
73
|
+
super().__init__()
|
|
74
|
+
|
|
75
|
+
self.shortLabel: Optional[str] = None
|
|
76
|
+
self._text: Optional[str] = None
|
|
77
|
+
|
|
78
|
+
def _convertStringToNumberValue(self, value: str) -> Union[int, float]:
|
|
79
|
+
"""
|
|
80
|
+
Converts a string value to a numerical value.
|
|
81
|
+
|
|
82
|
+
Args:
|
|
83
|
+
value: The string value to convert
|
|
84
|
+
|
|
85
|
+
Returns:
|
|
86
|
+
The converted numerical value
|
|
87
|
+
|
|
88
|
+
Raises:
|
|
89
|
+
ValueError: If the value cannot be converted to a numerical type
|
|
90
|
+
"""
|
|
91
|
+
try:
|
|
92
|
+
if value == 'true':
|
|
93
|
+
return 1
|
|
94
|
+
elif value == 'false':
|
|
95
|
+
return 0
|
|
96
|
+
else:
|
|
97
|
+
m = re.match(r"0x([0-9a-f]+)", value, re.I)
|
|
98
|
+
if m:
|
|
99
|
+
return int(m.group(1), 16)
|
|
100
|
+
m = re.match(r'0b([\d]+)', value, re.I)
|
|
101
|
+
if m:
|
|
102
|
+
return int(m.group(1), 2)
|
|
103
|
+
m = re.match(r"^[-+]?(\d+(\.\d*)?|\.\d+)([eE][-+]?\d+)?$", value)
|
|
104
|
+
if m:
|
|
105
|
+
return float(value)
|
|
106
|
+
return int(value)
|
|
107
|
+
except: # noqa E722
|
|
108
|
+
raise ValueError("Invalid Numerical Type <%s>" % value)
|
|
109
|
+
|
|
110
|
+
@property
|
|
111
|
+
def value(self) -> Optional[Union[int, float]]:
|
|
112
|
+
"""Optional[Union[int, float]]: The numerical value."""
|
|
113
|
+
return self._value
|
|
114
|
+
|
|
115
|
+
@value.setter
|
|
116
|
+
def value(self, val: Optional[Union[int, float, str]]):
|
|
117
|
+
if isinstance(val, int):
|
|
118
|
+
self._value = val
|
|
119
|
+
elif isinstance(val, str):
|
|
120
|
+
self._text = val
|
|
121
|
+
self._value = self._convertStringToNumberValue(val)
|
|
122
|
+
else:
|
|
123
|
+
raise ValueError("Unsupported Type <%s>", type(val))
|
|
124
|
+
|
|
125
|
+
def __str__(self) -> str:
|
|
126
|
+
if self._text is not None:
|
|
127
|
+
return self._text
|
|
128
|
+
else:
|
|
129
|
+
return str(self._value)
|
|
130
|
+
|
|
131
|
+
def getValue(self) -> Optional[Union[int, float]]:
|
|
132
|
+
"""
|
|
133
|
+
Gets the numerical value of this type.
|
|
134
|
+
|
|
135
|
+
Returns:
|
|
136
|
+
The numerical value, or None if not set
|
|
137
|
+
"""
|
|
138
|
+
return self.value
|
|
139
|
+
|
|
140
|
+
def setShortLabel(self, val: Optional[str]):
|
|
141
|
+
"""
|
|
142
|
+
Sets the short label for this numerical type.
|
|
143
|
+
Only sets the value if it is not None.
|
|
144
|
+
|
|
145
|
+
Args:
|
|
146
|
+
val: The short label to set
|
|
147
|
+
|
|
148
|
+
Returns:
|
|
149
|
+
self for method chaining
|
|
150
|
+
"""
|
|
151
|
+
if val is not None:
|
|
152
|
+
self.shortLabel = val
|
|
153
|
+
return self
|
|
154
|
+
|
|
155
|
+
def getShortLabel(self) -> Optional[str]:
|
|
156
|
+
"""
|
|
157
|
+
Gets the short label of this numerical type.
|
|
158
|
+
|
|
159
|
+
Returns:
|
|
160
|
+
The short label, or None if not set
|
|
161
|
+
"""
|
|
162
|
+
return self.shortLabel
|
|
163
|
+
|
|
164
|
+
|
|
165
|
+
class ARFloat(ARNumerical):
|
|
166
|
+
"""
|
|
167
|
+
Base class for floating-point AUTOSAR types.
|
|
168
|
+
This class provides functionality for floating-point values in AUTOSAR models.
|
|
169
|
+
"""
|
|
170
|
+
|
|
171
|
+
def __init__(self) -> None:
|
|
172
|
+
super().__init__()
|
|
173
|
+
|
|
174
|
+
self._text: Optional[str] = None
|
|
175
|
+
|
|
176
|
+
@property
|
|
177
|
+
def value(self) -> Optional[float]:
|
|
178
|
+
"""Optional[float]: The floating-point value."""
|
|
179
|
+
return self._value
|
|
180
|
+
|
|
181
|
+
@value.setter
|
|
182
|
+
def value(self, val: Optional[Union[float, int, str]]):
|
|
183
|
+
if isinstance(val, float):
|
|
184
|
+
self._value = val
|
|
185
|
+
elif isinstance(val, int):
|
|
186
|
+
self._value = val * 1.0
|
|
187
|
+
elif isinstance(val, str):
|
|
188
|
+
self._text = val
|
|
189
|
+
self._value = self._convertStringToNumberValue(val)
|
|
190
|
+
else:
|
|
191
|
+
raise ValueError("Unsupported Type <%s>", type(val))
|
|
192
|
+
|
|
193
|
+
def __str__(self) -> str:
|
|
194
|
+
if self._text is not None:
|
|
195
|
+
return self._text
|
|
196
|
+
else:
|
|
197
|
+
return str(self._value)
|
|
198
|
+
|
|
199
|
+
|
|
200
|
+
class Float(ARFloat):
|
|
201
|
+
'''
|
|
202
|
+
An instance of Float is an element from the set of real numbers.
|
|
203
|
+
Tags:
|
|
204
|
+
* xml.xsd.customType=FLOAT
|
|
205
|
+
* xml.xsd.type=double
|
|
206
|
+
'''
|
|
207
|
+
def __init__(self):
|
|
208
|
+
super().__init__()
|
|
209
|
+
|
|
210
|
+
|
|
211
|
+
class TimeValue(ARFloat):
|
|
212
|
+
'''
|
|
213
|
+
This primitive type is taken for expressing time values. The numerical value is supposed to be interpreted
|
|
214
|
+
in the physical unit second.
|
|
215
|
+
Tags:
|
|
216
|
+
* xml.xsd.customType=TIME-VALUE
|
|
217
|
+
* xml.xsd.type=double
|
|
218
|
+
'''
|
|
219
|
+
|
|
220
|
+
def __init__(self):
|
|
221
|
+
super().__init__()
|
|
222
|
+
|
|
223
|
+
|
|
224
|
+
class ARLiteral(ARType):
|
|
225
|
+
"""
|
|
226
|
+
Base class for literal AUTOSAR types.
|
|
227
|
+
This class provides functionality for literal values in AUTOSAR models.
|
|
228
|
+
"""
|
|
229
|
+
|
|
230
|
+
def __init__(self) -> None:
|
|
231
|
+
super().__init__()
|
|
232
|
+
|
|
233
|
+
@property
|
|
234
|
+
def value(self) -> str:
|
|
235
|
+
"""str: The literal value."""
|
|
236
|
+
if self._value is None:
|
|
237
|
+
return ""
|
|
238
|
+
return self._value
|
|
239
|
+
|
|
240
|
+
@value.setter
|
|
241
|
+
def value(self, val: Any):
|
|
242
|
+
if isinstance(val, str):
|
|
243
|
+
self._value = val
|
|
244
|
+
else:
|
|
245
|
+
self._value = str(val)
|
|
246
|
+
|
|
247
|
+
def __str__(self) -> str:
|
|
248
|
+
return self.value
|
|
249
|
+
|
|
250
|
+
def upper(self) -> str:
|
|
251
|
+
"""
|
|
252
|
+
Gets the uppercase representation of this literal.
|
|
253
|
+
|
|
254
|
+
Returns:
|
|
255
|
+
Uppercase string representation
|
|
256
|
+
"""
|
|
257
|
+
return self.value.upper()
|
|
258
|
+
|
|
259
|
+
|
|
260
|
+
class AREnum(ARLiteral):
|
|
261
|
+
"""
|
|
262
|
+
Base class for enumeration AUTOSAR types.
|
|
263
|
+
This class provides functionality for enumeration values in AUTOSAR models.
|
|
264
|
+
"""
|
|
265
|
+
|
|
266
|
+
def __init__(self, enum_values: List[str]):
|
|
267
|
+
super().__init__()
|
|
268
|
+
|
|
269
|
+
self.enumValues: List[str] = enum_values
|
|
270
|
+
|
|
271
|
+
def getEnumValues(self) -> List[str]:
|
|
272
|
+
"""
|
|
273
|
+
Gets the list of possible enum values.
|
|
274
|
+
|
|
275
|
+
Returns:
|
|
276
|
+
List of possible enum values
|
|
277
|
+
"""
|
|
278
|
+
return self.enumValues
|
|
279
|
+
|
|
280
|
+
def setEnumValues(self, values: List[str]):
|
|
281
|
+
"""
|
|
282
|
+
Sets the list of possible enum values.
|
|
283
|
+
|
|
284
|
+
Args:
|
|
285
|
+
values: The list of possible enum values to set
|
|
286
|
+
|
|
287
|
+
Returns:
|
|
288
|
+
self for method chaining
|
|
289
|
+
"""
|
|
290
|
+
self.enumValues = values
|
|
291
|
+
return self
|
|
292
|
+
|
|
293
|
+
def validateEnumValue(self, value: str) -> bool:
|
|
294
|
+
"""
|
|
295
|
+
Validates if the provided value is one of the allowed enum values.
|
|
296
|
+
|
|
297
|
+
Args:
|
|
298
|
+
value: The value to validate
|
|
299
|
+
|
|
300
|
+
Returns:
|
|
301
|
+
True if the value is valid, False otherwise
|
|
302
|
+
"""
|
|
303
|
+
if value in self.enumValues:
|
|
304
|
+
return True
|
|
305
|
+
return False
|
|
306
|
+
|
|
307
|
+
|
|
308
|
+
class String(ARLiteral):
|
|
309
|
+
"""
|
|
310
|
+
Represents a string AUTOSAR type.
|
|
311
|
+
This class provides functionality for string values in AUTOSAR models.
|
|
312
|
+
"""
|
|
313
|
+
|
|
314
|
+
def __init__(self):
|
|
315
|
+
super().__init__()
|
|
316
|
+
|
|
317
|
+
|
|
318
|
+
class ReferrableSubtypesEnum(ARLiteral):
|
|
319
|
+
"""
|
|
320
|
+
Represents an enum for referrable subtypes in AUTOSAR models.
|
|
321
|
+
"""
|
|
322
|
+
|
|
323
|
+
def __init__(self):
|
|
324
|
+
super().__init__()
|
|
325
|
+
|
|
326
|
+
|
|
327
|
+
class ARPositiveInteger(ARNumerical):
|
|
328
|
+
"""
|
|
329
|
+
Base class for positive integer AUTOSAR types.
|
|
330
|
+
This class provides functionality for positive integer values in AUTOSAR models.
|
|
331
|
+
"""
|
|
332
|
+
|
|
333
|
+
def __init__(self) -> None:
|
|
334
|
+
super().__init__()
|
|
335
|
+
|
|
336
|
+
@property
|
|
337
|
+
def value(self) -> Optional[int]:
|
|
338
|
+
"""Optional[int]: The positive integer value."""
|
|
339
|
+
return self._value
|
|
340
|
+
|
|
341
|
+
@value.setter
|
|
342
|
+
def value(self, val: Optional[Union[int, str]]):
|
|
343
|
+
if isinstance(val, int):
|
|
344
|
+
if val < 0:
|
|
345
|
+
raise ValueError("Invalid Positive Integer <%s>" % val)
|
|
346
|
+
self._value = val
|
|
347
|
+
elif isinstance(val, str):
|
|
348
|
+
self._text = val
|
|
349
|
+
self._value = self._convertStringToNumberValue(val)
|
|
350
|
+
else:
|
|
351
|
+
raise ValueError("Unsupported Type <%s>", type(val))
|
|
352
|
+
|
|
353
|
+
|
|
354
|
+
class ARBoolean(ARType):
|
|
355
|
+
"""
|
|
356
|
+
Base class for boolean AUTOSAR types.
|
|
357
|
+
This class provides functionality for boolean values in AUTOSAR models.
|
|
358
|
+
"""
|
|
359
|
+
|
|
360
|
+
def __init__(self) -> None:
|
|
361
|
+
super().__init__()
|
|
362
|
+
|
|
363
|
+
self._text: Optional[str] = None
|
|
364
|
+
|
|
365
|
+
def _convertNumberToBoolean(self, value: int) -> bool:
|
|
366
|
+
"""
|
|
367
|
+
Converts a numerical value to a boolean value.
|
|
368
|
+
|
|
369
|
+
Args:
|
|
370
|
+
value: The numerical value to convert
|
|
371
|
+
|
|
372
|
+
Returns:
|
|
373
|
+
Boolean representation of the value
|
|
374
|
+
"""
|
|
375
|
+
if value == 0:
|
|
376
|
+
return False
|
|
377
|
+
return True
|
|
378
|
+
|
|
379
|
+
def _convertStringToBoolean(self, value: str) -> bool:
|
|
380
|
+
"""
|
|
381
|
+
Converts a string value to a boolean value.
|
|
382
|
+
|
|
383
|
+
Args:
|
|
384
|
+
value: The string value to convert
|
|
385
|
+
|
|
386
|
+
Returns:
|
|
387
|
+
Boolean representation of the value
|
|
388
|
+
"""
|
|
389
|
+
value = value.lower()
|
|
390
|
+
if value == "true" or value == "1":
|
|
391
|
+
return True
|
|
392
|
+
elif value == "false" or value == "0":
|
|
393
|
+
return False
|
|
394
|
+
else:
|
|
395
|
+
return self._convertNumberToBoolean(int(value))
|
|
396
|
+
|
|
397
|
+
@property
|
|
398
|
+
def value(self) -> Optional[bool]:
|
|
399
|
+
"""Optional[bool]: The boolean value."""
|
|
400
|
+
return self._value
|
|
401
|
+
|
|
402
|
+
@value.setter
|
|
403
|
+
def value(self, val: Optional[Union[bool, int, str]]):
|
|
404
|
+
if isinstance(val, bool):
|
|
405
|
+
self._value = val
|
|
406
|
+
elif isinstance(val, int):
|
|
407
|
+
self._value = self._convertNumberToBoolean(val)
|
|
408
|
+
self._text = str(val)
|
|
409
|
+
elif isinstance(val, str):
|
|
410
|
+
self._value = self._convertStringToBoolean(val.strip())
|
|
411
|
+
self._text = val.strip()
|
|
412
|
+
else:
|
|
413
|
+
raise ValueError("Unsupported Type <%s>", type(val))
|
|
414
|
+
|
|
415
|
+
def __str__(self) -> str:
|
|
416
|
+
if self._text is not None:
|
|
417
|
+
return self._text
|
|
418
|
+
else:
|
|
419
|
+
if self._value:
|
|
420
|
+
return "true"
|
|
421
|
+
else:
|
|
422
|
+
return "false"
|
|
423
|
+
|
|
424
|
+
|
|
425
|
+
class NameToken(ARLiteral):
|
|
426
|
+
'''
|
|
427
|
+
This is an identifier as used in xml, e.g. xml-names. Typical usages are, for example, the names of type
|
|
428
|
+
emitters, protocols, or profiles. For details see NMTOKEN definition on the W3C website
|
|
429
|
+
(https://www.w3.org/TR/xml/#NT-Nmtoken).
|
|
430
|
+
|
|
431
|
+
Note: Although NameToken supports a wide range of characters, the actually allowed patterns for a
|
|
432
|
+
certain attribute typed by NameToken may be further restricted by the specification of that attribute.
|
|
433
|
+
|
|
434
|
+
Tags:
|
|
435
|
+
* xml.xsd.customType=NMTOKEN-STRING
|
|
436
|
+
* xml.xsd.type=NMTOKEN
|
|
437
|
+
'''
|
|
438
|
+
def __init__(self):
|
|
439
|
+
super().__init__()
|
|
440
|
+
|
|
441
|
+
|
|
442
|
+
class PositiveInteger(ARPositiveInteger):
|
|
443
|
+
r'''\n
|
|
444
|
+
This is a positive integer which can be denoted in decimal, binary, octal and hexadecimal. The value is
|
|
445
|
+
between 0 and 4294967295.
|
|
446
|
+
|
|
447
|
+
Tags:
|
|
448
|
+
* xml.xsd.customType=POSITIVE-INTEGER
|
|
449
|
+
* xml.xsd.pattern=0|[\+]?[1-9][0-9]*|0[xX][0-9a-fA-F]+|0[bB][0-1]+|0[0-7]+
|
|
450
|
+
* xml.xsd.type=string
|
|
451
|
+
\n
|
|
452
|
+
'''
|
|
453
|
+
def __init__(self):
|
|
454
|
+
super().__init__()
|
|
455
|
+
|
|
456
|
+
|
|
457
|
+
class PositiveUnlimitedInteger(ARPositiveInteger):
|
|
458
|
+
r'''
|
|
459
|
+
This is a positive unlimited integer which can be denoted in decimal, binary, octal and hexadecimal.
|
|
460
|
+
|
|
461
|
+
Tags:
|
|
462
|
+
* xml.xsd.customType=POSITIVE-UNLIMITED-INTEGER
|
|
463
|
+
* xml.xsd.pattern=0|[\+]?[1-9][0-9]*|0[xX][0-9a-fA-F]+|0[bB][0-1]+|0[0-7]+
|
|
464
|
+
* xml.xsd.type=string
|
|
465
|
+
'''
|
|
466
|
+
|
|
467
|
+
|
|
468
|
+
class Integer(ARNumerical):
|
|
469
|
+
r'''
|
|
470
|
+
An instance of Integer is an element in the set of integer numbers ( ..., -2, -1, 0, 1, 2, ...).
|
|
471
|
+
The value can be expressed in decimal, octal, hexadecimal and binary representation. Negative numbers
|
|
472
|
+
can only be expressed in decimal notation
|
|
473
|
+
Range is from -2147483648 and 2147483647.
|
|
474
|
+
|
|
475
|
+
Tags:
|
|
476
|
+
* xml.xsd.customType=INTEGER
|
|
477
|
+
* xml.xsd.pattern=0|[\+\-]?[1-9][0-9]*|0[xX][0-9a-fA-F]+|0[bB][0-1]+|0[0-7]+
|
|
478
|
+
* xml.xsd.type=string
|
|
479
|
+
'''
|
|
480
|
+
def __init__(self):
|
|
481
|
+
super().__init__()
|
|
482
|
+
|
|
483
|
+
|
|
484
|
+
class UnlimitedInteger(Integer):
|
|
485
|
+
r'''
|
|
486
|
+
An instance of UnlimitedInteger is an element in the set of integer numbers ( ..., -2, -1, 0, 1, 2, ...).
|
|
487
|
+
The range is limited by constraint 2534.
|
|
488
|
+
The value can be expressed in decimal, octal, hexadecimal and binary representation. Negative numbers
|
|
489
|
+
can only be expressed in decimal notation.
|
|
490
|
+
|
|
491
|
+
Tags:
|
|
492
|
+
* xml.xsd.customType=UNLIMITED-INTEGER
|
|
493
|
+
* xml.xsd.pattern=0|[\+\-]?[1-9][0-9]*|0[xX][0-9a-fA-F]+|0[bB][0-1]+|0[0-7]+
|
|
494
|
+
* xml.xsd.type=string
|
|
495
|
+
'''
|
|
496
|
+
def __init__(self):
|
|
497
|
+
super().__init__()
|
|
498
|
+
|
|
499
|
+
|
|
500
|
+
class Boolean(ARBoolean):
|
|
501
|
+
'''
|
|
502
|
+
A Boolean value denotes a logical condition that is either 'true' or 'false'. It can be one of "0", "1", "true",
|
|
503
|
+
"false"
|
|
504
|
+
|
|
505
|
+
Tags:
|
|
506
|
+
* xml.xsd.customType=BOOLEAN
|
|
507
|
+
* xml.xsd.pattern=0|1|true|false
|
|
508
|
+
* xml.xsd.type=string
|
|
509
|
+
'''
|
|
510
|
+
def __init__(self):
|
|
511
|
+
super().__init__()
|
|
512
|
+
|
|
513
|
+
|
|
514
|
+
class Identifier(ARLiteral):
|
|
515
|
+
'''
|
|
516
|
+
An Identifier is a string with a number of constraints on its appearance, satisfying the requirements typical
|
|
517
|
+
programming languages define for their Identifiers.
|
|
518
|
+
This datatype represents a string, that can be used as a c-Identifier.
|
|
519
|
+
It shall start with a letter, may consist of letters, digits and underscores.
|
|
520
|
+
|
|
521
|
+
Tags:
|
|
522
|
+
* xml.xsd.customType=IDENTIFIER
|
|
523
|
+
* xml.xsd.maxLength=128
|
|
524
|
+
* xml.xsd.pattern=[a-zA-Z][a-zA-Z0-9_]*
|
|
525
|
+
* xml.xsd.type=string
|
|
526
|
+
'''
|
|
527
|
+
def __init__(self):
|
|
528
|
+
super().__init__()
|
|
529
|
+
|
|
530
|
+
|
|
531
|
+
class CIdentifier(ARLiteral):
|
|
532
|
+
'''
|
|
533
|
+
This datatype represents a string, that follows the rules of C-identifiers.
|
|
534
|
+
|
|
535
|
+
Tags:
|
|
536
|
+
* xml.xsd.customType=C-IDENTIFIER
|
|
537
|
+
* xml.xsd.pattern=[a-zA-Z_][a-zA-Z0-9_]*
|
|
538
|
+
* xml.xsd.type=string
|
|
539
|
+
'''
|
|
540
|
+
def __init__(self):
|
|
541
|
+
super().__init__()
|
|
542
|
+
|
|
543
|
+
self.blueprintValue: Optional[str] = None
|
|
544
|
+
self.namePattern: Optional[str] = None
|
|
545
|
+
|
|
546
|
+
def getBlueprintValue(self) -> Optional[str]:
|
|
547
|
+
"""
|
|
548
|
+
Gets the blueprint value of this C identifier.
|
|
549
|
+
|
|
550
|
+
Returns:
|
|
551
|
+
The blueprint value, or None if not set
|
|
552
|
+
"""
|
|
553
|
+
return self.blueprintValue
|
|
554
|
+
|
|
555
|
+
def setBlueprintValue(self, value: str):
|
|
556
|
+
"""
|
|
557
|
+
Sets the blueprint value of this C identifier.
|
|
558
|
+
|
|
559
|
+
Args:
|
|
560
|
+
value: The blueprint value to set
|
|
561
|
+
|
|
562
|
+
Returns:
|
|
563
|
+
self for method chaining
|
|
564
|
+
"""
|
|
565
|
+
self.blueprintValue = value
|
|
566
|
+
return self
|
|
567
|
+
|
|
568
|
+
def getNamePattern(self) -> Optional[str]:
|
|
569
|
+
"""
|
|
570
|
+
Gets the name pattern of this C identifier.
|
|
571
|
+
|
|
572
|
+
Returns:
|
|
573
|
+
The name pattern, or None if not set
|
|
574
|
+
"""
|
|
575
|
+
return self.namePattern
|
|
576
|
+
|
|
577
|
+
def setNamePattern(self, value: str):
|
|
578
|
+
"""
|
|
579
|
+
Sets the name pattern of this C identifier.
|
|
580
|
+
|
|
581
|
+
Args:
|
|
582
|
+
value: The name pattern to set
|
|
583
|
+
|
|
584
|
+
Returns:
|
|
585
|
+
self for method chaining
|
|
586
|
+
"""
|
|
587
|
+
self.namePattern = value
|
|
588
|
+
return self
|
|
589
|
+
|
|
590
|
+
|
|
591
|
+
class RevisionLabelString(ARLiteral):
|
|
592
|
+
'''
|
|
593
|
+
This primitive represents an internal AUTOSAR revision label which identifies an engineering object. It
|
|
594
|
+
represents a pattern which
|
|
595
|
+
* supports three integers representing from left to right MajorVersion, MinorVersion, PatchVersion.
|
|
596
|
+
* may add an application specific suffix separated by one of ".", "_", ";".
|
|
597
|
+
Legal patterns are for example:
|
|
598
|
+
* 4.0.0
|
|
599
|
+
* 4.0.0.1234565
|
|
600
|
+
* 4.0.0_vendor specific;13
|
|
601
|
+
* 4.0.0;12
|
|
602
|
+
'''
|
|
603
|
+
|
|
604
|
+
|
|
605
|
+
class Limit(ARObject):
|
|
606
|
+
"""
|
|
607
|
+
Represents a limit in AUTOSAR models.
|
|
608
|
+
This class defines limits with interval type and value.
|
|
609
|
+
"""
|
|
610
|
+
|
|
611
|
+
def __init__(self):
|
|
612
|
+
super().__init__()
|
|
613
|
+
|
|
614
|
+
self.intervalType: Optional[str] = None
|
|
615
|
+
self.value: Optional[str] = None
|
|
616
|
+
|
|
617
|
+
def getIntervalType(self) -> Optional[str]:
|
|
618
|
+
"""
|
|
619
|
+
Gets the interval type of this limit.
|
|
620
|
+
|
|
621
|
+
Returns:
|
|
622
|
+
The interval type, or None if not set
|
|
623
|
+
"""
|
|
624
|
+
return self.intervalType
|
|
625
|
+
|
|
626
|
+
def setIntervalType(self, value: str):
|
|
627
|
+
"""
|
|
628
|
+
Sets the interval type of this limit.
|
|
629
|
+
|
|
630
|
+
Args:
|
|
631
|
+
value: The interval type to set
|
|
632
|
+
|
|
633
|
+
Returns:
|
|
634
|
+
self for method chaining
|
|
635
|
+
"""
|
|
636
|
+
self.intervalType = value
|
|
637
|
+
return self
|
|
638
|
+
|
|
639
|
+
def getValue(self) -> Optional[str]:
|
|
640
|
+
"""
|
|
641
|
+
Gets the value of this limit.
|
|
642
|
+
|
|
643
|
+
Returns:
|
|
644
|
+
The limit value, or None if not set
|
|
645
|
+
"""
|
|
646
|
+
return self.value
|
|
647
|
+
|
|
648
|
+
def setValue(self, value: str):
|
|
649
|
+
"""
|
|
650
|
+
Sets the value of this limit.
|
|
651
|
+
|
|
652
|
+
Args:
|
|
653
|
+
value: The limit value to set
|
|
654
|
+
|
|
655
|
+
Returns:
|
|
656
|
+
self for method chaining
|
|
657
|
+
"""
|
|
658
|
+
self.value = value
|
|
659
|
+
return self
|
|
660
|
+
|
|
661
|
+
|
|
662
|
+
class RefType(ARObject):
|
|
663
|
+
"""
|
|
664
|
+
Represents a reference type in AUTOSAR models.
|
|
665
|
+
This class defines references with base, destination and value properties.
|
|
666
|
+
"""
|
|
667
|
+
|
|
668
|
+
def __init__(self):
|
|
669
|
+
super().__init__()
|
|
670
|
+
|
|
671
|
+
self.base: Optional[str] = None
|
|
672
|
+
self.dest: Optional[str] = None
|
|
673
|
+
self.value: Optional[str] = None
|
|
674
|
+
|
|
675
|
+
def getBase(self) -> Optional[str]:
|
|
676
|
+
"""
|
|
677
|
+
Gets the base of this reference type.
|
|
678
|
+
|
|
679
|
+
Returns:
|
|
680
|
+
The base string, or None if not set
|
|
681
|
+
"""
|
|
682
|
+
return self.base
|
|
683
|
+
|
|
684
|
+
def setBase(self, value: str):
|
|
685
|
+
"""
|
|
686
|
+
Sets the base of this reference type.
|
|
687
|
+
|
|
688
|
+
Args:
|
|
689
|
+
value: The base to set
|
|
690
|
+
|
|
691
|
+
Returns:
|
|
692
|
+
self for method chaining
|
|
693
|
+
"""
|
|
694
|
+
self.base = value
|
|
695
|
+
return self
|
|
696
|
+
|
|
697
|
+
def getDest(self) -> Optional[str]:
|
|
698
|
+
"""
|
|
699
|
+
Gets the destination of this reference type.
|
|
700
|
+
|
|
701
|
+
Returns:
|
|
702
|
+
The destination string, or None if not set
|
|
703
|
+
"""
|
|
704
|
+
return self.dest
|
|
705
|
+
|
|
706
|
+
def setDest(self, value: str):
|
|
707
|
+
"""
|
|
708
|
+
Sets the destination of this reference type.
|
|
709
|
+
|
|
710
|
+
Args:
|
|
711
|
+
value: The destination to set
|
|
712
|
+
|
|
713
|
+
Returns:
|
|
714
|
+
self for method chaining
|
|
715
|
+
"""
|
|
716
|
+
self.dest = value
|
|
717
|
+
return self
|
|
718
|
+
|
|
719
|
+
def getValue(self) -> Optional[str]:
|
|
720
|
+
"""
|
|
721
|
+
Gets the value of this reference type.
|
|
722
|
+
|
|
723
|
+
Returns:
|
|
724
|
+
The reference value, or None if not set
|
|
725
|
+
"""
|
|
726
|
+
return self.value
|
|
727
|
+
|
|
728
|
+
def setValue(self, value: str):
|
|
729
|
+
"""
|
|
730
|
+
Sets the value of this reference type.
|
|
731
|
+
|
|
732
|
+
Args:
|
|
733
|
+
value: The reference value to set
|
|
734
|
+
|
|
735
|
+
Returns:
|
|
736
|
+
self for method chaining
|
|
737
|
+
"""
|
|
738
|
+
self.value = value
|
|
739
|
+
return self
|
|
740
|
+
|
|
741
|
+
def getShortValue(self) -> str:
|
|
742
|
+
"""
|
|
743
|
+
Gets the short value of this reference type.
|
|
744
|
+
|
|
745
|
+
Returns:
|
|
746
|
+
The short value as a string
|
|
747
|
+
|
|
748
|
+
Raises:
|
|
749
|
+
ValueError: If the value is None
|
|
750
|
+
"""
|
|
751
|
+
if self.value is None:
|
|
752
|
+
raise ValueError("Invalid value of RefType")
|
|
753
|
+
m = re.match(r'\/[\w\/]+\/(\w+)', self.value)
|
|
754
|
+
if m:
|
|
755
|
+
return m.group(1)
|
|
756
|
+
return self.value
|
|
757
|
+
|
|
758
|
+
|
|
759
|
+
class TRefType(RefType):
|
|
760
|
+
"""
|
|
761
|
+
Represents a typed reference type in AUTOSAR models.
|
|
762
|
+
This class extends RefType with additional type-specific functionality.
|
|
763
|
+
"""
|
|
764
|
+
|
|
765
|
+
def __init__(self):
|
|
766
|
+
super().__init__()
|
|
767
|
+
|
|
768
|
+
|
|
769
|
+
class DiagRequirementIdString(ARLiteral):
|
|
770
|
+
r'''
|
|
771
|
+
This string denotes an Identifier for a requirement.
|
|
772
|
+
|
|
773
|
+
Tags:
|
|
774
|
+
* xml.xsd.customType=DIAG-REQUIREMENT-ID-STRING
|
|
775
|
+
* xml.xsd.pattern=[0-9a-zA-Z_\-]+ # noqa W605
|
|
776
|
+
* xml.xsd.type=string
|
|
777
|
+
'''
|
|
778
|
+
def __init__(self):
|
|
779
|
+
super().__init__()
|
|
780
|
+
|
|
781
|
+
|
|
782
|
+
class ArgumentDirectionEnum(AREnum):
|
|
783
|
+
"""
|
|
784
|
+
Enumeration for argument direction in AUTOSAR models.
|
|
785
|
+
Defines the direction of arguments in function interfaces.
|
|
786
|
+
"""
|
|
787
|
+
IN = "in"
|
|
788
|
+
INOUT = "inout"
|
|
789
|
+
OUT = "out"
|
|
790
|
+
|
|
791
|
+
def __init__(self):
|
|
792
|
+
super().__init__((
|
|
793
|
+
ArgumentDirectionEnum.IN,
|
|
794
|
+
ArgumentDirectionEnum.INOUT,
|
|
795
|
+
ArgumentDirectionEnum.OUT
|
|
796
|
+
))
|
|
797
|
+
|
|
798
|
+
|
|
799
|
+
class Ip4AddressString(ARLiteral):
|
|
800
|
+
r'''
|
|
801
|
+
This is used to specify an IP4 address. Notation: 255.255.255.255
|
|
802
|
+
|
|
803
|
+
Tags
|
|
804
|
+
* xml.xsd.customType=IP4-ADDRESS-STRING
|
|
805
|
+
* xml.xsd.pattern=(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)|ANY # noqa E501
|
|
806
|
+
* xml.xsd.type=string
|
|
807
|
+
'''
|
|
808
|
+
def __init__(self):
|
|
809
|
+
super().__init__()
|
|
810
|
+
|
|
811
|
+
|
|
812
|
+
class Ip6AddressString(ARLiteral):
|
|
813
|
+
r'''
|
|
814
|
+
This is used to specify an IP6 address. Notation: FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF
|
|
815
|
+
Alternative notations, short-cuts with duplicate colons like ::, etc. or mixtures using colons and dots, are
|
|
816
|
+
not allowed.
|
|
817
|
+
|
|
818
|
+
Tags:
|
|
819
|
+
* xml.xsd.customType=IP6-ADDRESS-STRING
|
|
820
|
+
* xml.xsd.pattern=[0-9A-Fa-f]{1,4}(:[0-9A-Fa-f]{1,4}){7,7}|ANY
|
|
821
|
+
* xml.xsd.type=string
|
|
822
|
+
'''
|
|
823
|
+
def __init__(self):
|
|
824
|
+
super().__init__()
|
|
825
|
+
|
|
826
|
+
|
|
827
|
+
class MacAddressString(ARLiteral):
|
|
828
|
+
'''
|
|
829
|
+
This primitive specifies a Mac Address. Notation: FF:FF:FF:FF:FF:FF
|
|
830
|
+
Alternative notations, e.g. using dash instead of colon, or another grouping of numbers, is not allowed.
|
|
831
|
+
|
|
832
|
+
Tags:
|
|
833
|
+
* xml.xsd.customType=MAC-ADDRESS-STRING
|
|
834
|
+
* xml.xsd.pattern=([0-9a-fA-F]{2}:){5}[0-9a-fA-F]{2}
|
|
835
|
+
* xml.xsd.type=string
|
|
836
|
+
'''
|
|
837
|
+
def __init__(self):
|
|
838
|
+
super().__init__()
|
|
839
|
+
|
|
840
|
+
|
|
841
|
+
class CategoryString(ARLiteral):
|
|
842
|
+
'''
|
|
843
|
+
This represents the pattern applicable to categories.
|
|
844
|
+
It is basically the same as Identifier but has a different semantics. Therefore it is modeled as a primitive
|
|
845
|
+
of its own.
|
|
846
|
+
|
|
847
|
+
Tags:
|
|
848
|
+
* xml.xsd.customType=CATEGORY-STRING
|
|
849
|
+
* xml.xsd.pattern=[a-zA-Z][a-zA-Z0-9_]*
|
|
850
|
+
* xml.xsd.type=string
|
|
851
|
+
'''
|
|
852
|
+
def __init__(self):
|
|
853
|
+
super().__init__()
|
|
854
|
+
|
|
855
|
+
|
|
856
|
+
class ByteOrderEnum(AREnum):
|
|
857
|
+
"""
|
|
858
|
+
Enumeration for byte order in AUTOSAR models.
|
|
859
|
+
"""
|
|
860
|
+
|
|
861
|
+
def __init__(self):
|
|
862
|
+
super().__init__([])
|
|
863
|
+
|
|
864
|
+
|
|
865
|
+
class DateTime(ARLiteral):
|
|
866
|
+
r'''
|
|
867
|
+
A datatype representing a timestamp. The smallest granularity is 1 second.
|
|
868
|
+
This datatype represents a timestamp in the format yyyy-mm-dd followed by an optional time. The lead-in
|
|
869
|
+
character for the time is "T" and the format is hh:mm:ss. In addition, a time zone designator shall be
|
|
870
|
+
specified. The time zone designator can either be "Z" (for UTC) or the time offset to UTC, i.e. (+|-)hh:mm.
|
|
871
|
+
|
|
872
|
+
Examples:
|
|
873
|
+
2009-07-23
|
|
874
|
+
2009-07-23T14:38:00+01:00
|
|
875
|
+
2009-07-23T13:38:00Z
|
|
876
|
+
Tags:
|
|
877
|
+
xml.xsd.customType=DATE
|
|
878
|
+
xml.xsd.pattern=([0-9]{4}-[0-9]{2}-[0-9]{2})(T[0-9]{2}:[0-9]{2}:[0-9]{2}(Z|([+\-][0-9]{2}:[0-9]{2})))?
|
|
879
|
+
xml.xsd.type=string
|
|
880
|
+
'''
|
|
881
|
+
def __init__(self):
|
|
882
|
+
super().__init__()
|
|
883
|
+
|
|
884
|
+
|
|
885
|
+
class VerbatimString(ARLiteral):
|
|
886
|
+
"""
|
|
887
|
+
Represents a verbatim string in AUTOSAR models.
|
|
888
|
+
This class is used for strings that should be preserved exactly as written.
|
|
889
|
+
"""
|
|
890
|
+
|
|
891
|
+
def __init__(self):
|
|
892
|
+
super().__init__()
|
|
893
|
+
|
|
894
|
+
|
|
895
|
+
class RegularExpression(ARLiteral):
|
|
896
|
+
"""
|
|
897
|
+
Represents a regular expression in AUTOSAR models.
|
|
898
|
+
This class is used for storing and handling regular expression patterns.
|
|
899
|
+
"""
|
|
900
|
+
|
|
901
|
+
def __init__(self):
|
|
902
|
+
super().__init__()
|