armodel 1.8.6__py3-none-any.whl → 1.9.1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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 -296
- 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 -792
- 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/BswModuleTemplate/__init__.py +0 -4
- 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 -85
- 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.6.dist-info → armodel-1.9.1.dist-info}/METADATA +850 -656
- armodel-1.9.1.dist-info/RECORD +273 -0
- {armodel-1.8.6.dist-info → armodel-1.9.1.dist-info}/WHEEL +1 -1
- {armodel-1.8.6.dist-info → armodel-1.9.1.dist-info}/entry_points.txt +0 -1
- {armodel-1.8.6.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.6.dist-info/RECORD +0 -360
- {armodel-1.8.6.dist-info → armodel-1.9.1.dist-info}/top_level.txt +0 -0
|
@@ -1,200 +1,586 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
from
|
|
8
|
-
from
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
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
|
-
def
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
self.
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
return self.
|
|
102
|
-
|
|
103
|
-
def
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
return self.
|
|
126
|
-
|
|
127
|
-
def
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
return
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
class
|
|
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
|
-
if
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
1
|
+
"""
|
|
2
|
+
This module contains classes for representing AUTOSAR Basic Software (BSW) interfaces.
|
|
3
|
+
BSW interfaces define how BSW modules interact with other software components,
|
|
4
|
+
including dependencies, module entries, and client-server interfaces.
|
|
5
|
+
"""
|
|
6
|
+
|
|
7
|
+
from typing import List
|
|
8
|
+
from enum import Enum
|
|
9
|
+
|
|
10
|
+
from armodel.models.M2.AUTOSARTemplates.GenericStructure.AbstractStructure import AtpBlueprintable
|
|
11
|
+
from armodel.models.M2.MSR.DataDictionary.ServiceProcessTask import SwServiceArg
|
|
12
|
+
from armodel.models.M2.AUTOSARTemplates.CommonStructure.ServiceNeeds import ServiceNeeds
|
|
13
|
+
from armodel.models.M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.ArObject import ARObject
|
|
14
|
+
from armodel.models.M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.Identifiable import ARElement, Identifiable, Referrable
|
|
15
|
+
from armodel.models.M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import ARNumerical, Boolean, Identifier, NameToken, RefType
|
|
16
|
+
from armodel.models.M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import PositiveInteger
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
class BswEntryKindEnum(str, Enum):
|
|
20
|
+
"""
|
|
21
|
+
Enumeration for BSW Entry Kind values.
|
|
22
|
+
Defines the types of entries that can exist in BSW modules.
|
|
23
|
+
"""
|
|
24
|
+
# Function entry type for BSW module entries
|
|
25
|
+
FUNCTION = "FUNCTION"
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
class BswCallType(str, Enum):
|
|
29
|
+
"""
|
|
30
|
+
Enumeration for BSW Call Type values.
|
|
31
|
+
Defines how BSW module entries can be called (synchronously or asynchronously).
|
|
32
|
+
"""
|
|
33
|
+
# Synchronous call type - caller waits for completion
|
|
34
|
+
SYNCHRONOUS = "SYNCHRONOUS"
|
|
35
|
+
# Asynchronous call type - caller does not wait for completion
|
|
36
|
+
ASYNCHRONOUS = "ASYNCHRONOUS"
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
class BswExecutionContext(str, Enum):
|
|
40
|
+
"""
|
|
41
|
+
Enumeration for BSW Execution Context values.
|
|
42
|
+
Defines where BSW module entries can execute in the system.
|
|
43
|
+
"""
|
|
44
|
+
# Execution in a hook function context
|
|
45
|
+
HOOK = "HOOK"
|
|
46
|
+
# Execution in interrupt category 1 context (high priority)
|
|
47
|
+
INTERRUPT_CAT_1 = "INTERRUPT-CAT-1"
|
|
48
|
+
# Execution in interrupt category 2 context (medium priority)
|
|
49
|
+
INTERRUPT_CAT_2 = "INTERRUPT-CAT-2"
|
|
50
|
+
# Execution in a task context
|
|
51
|
+
TASK = "TASK"
|
|
52
|
+
# Execution context is unspecified
|
|
53
|
+
UNSPECIFIED = "UNSPECIFIED"
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
class SwServiceImplPolicyEnum(str, Enum):
|
|
57
|
+
"""
|
|
58
|
+
Enumeration for SW Service Implementation Policy values.
|
|
59
|
+
Defines how software service implementations should be generated in code.
|
|
60
|
+
"""
|
|
61
|
+
# Implementation should be inlined
|
|
62
|
+
INLINE = "INLINE"
|
|
63
|
+
# Implementation should be inlined conditionally based on configuration
|
|
64
|
+
INLINE_CONDITIONAL = "INLINE-CONDITIONAL"
|
|
65
|
+
# Implementation should be generated as a macro
|
|
66
|
+
MACRO = "MACRO"
|
|
67
|
+
# Standard implementation (not inlined)
|
|
68
|
+
STANDARD = "STANDARD"
|
|
69
|
+
|
|
70
|
+
|
|
71
|
+
class BswModuleDependency(Identifiable):
|
|
72
|
+
"""
|
|
73
|
+
Represents a dependency relationship between BSW modules.
|
|
74
|
+
This class defines how one BSW module depends on services from another module.
|
|
75
|
+
"""
|
|
76
|
+
|
|
77
|
+
def __init__(self, parent: ARObject, short_name: str):
|
|
78
|
+
"""
|
|
79
|
+
Initializes the BSW module dependency with a parent and short name.
|
|
80
|
+
|
|
81
|
+
Args:
|
|
82
|
+
parent: The parent ARObject that contains this dependency
|
|
83
|
+
short_name: The unique short name of this dependency
|
|
84
|
+
"""
|
|
85
|
+
super().__init__(parent, short_name)
|
|
86
|
+
|
|
87
|
+
# List of service needs that this dependency requires
|
|
88
|
+
self.serviceItems: List[ServiceNeeds] = []
|
|
89
|
+
# Unique identifier for the target module in the dependency
|
|
90
|
+
self.targetModuleId: PositiveInteger = None
|
|
91
|
+
# Reference to the target module in the dependency
|
|
92
|
+
self.targetModuleRef: RefType = None
|
|
93
|
+
|
|
94
|
+
def getServiceItems(self):
|
|
95
|
+
"""
|
|
96
|
+
Gets the list of service needs that this dependency requires.
|
|
97
|
+
|
|
98
|
+
Returns:
|
|
99
|
+
List of ServiceNeeds instances
|
|
100
|
+
"""
|
|
101
|
+
return self.serviceItems
|
|
102
|
+
|
|
103
|
+
def setServiceItems(self, value):
|
|
104
|
+
"""
|
|
105
|
+
Sets the list of service needs that this dependency requires.
|
|
106
|
+
Only sets the value if it is not None.
|
|
107
|
+
|
|
108
|
+
Args:
|
|
109
|
+
value: List of ServiceNeeds instances to set
|
|
110
|
+
|
|
111
|
+
Returns:
|
|
112
|
+
self for method chaining
|
|
113
|
+
"""
|
|
114
|
+
if value is not None:
|
|
115
|
+
self.serviceItems = value
|
|
116
|
+
return self
|
|
117
|
+
|
|
118
|
+
def getTargetModuleId(self):
|
|
119
|
+
"""
|
|
120
|
+
Gets the unique identifier for the target module in the dependency.
|
|
121
|
+
|
|
122
|
+
Returns:
|
|
123
|
+
Positive integer representing the target module ID
|
|
124
|
+
"""
|
|
125
|
+
return self.targetModuleId
|
|
126
|
+
|
|
127
|
+
def setTargetModuleId(self, value):
|
|
128
|
+
"""
|
|
129
|
+
Sets the unique identifier for the target module in the dependency.
|
|
130
|
+
Only sets the value if it is not None.
|
|
131
|
+
|
|
132
|
+
Args:
|
|
133
|
+
value: The target module ID to set
|
|
134
|
+
|
|
135
|
+
Returns:
|
|
136
|
+
self for method chaining
|
|
137
|
+
"""
|
|
138
|
+
if value is not None:
|
|
139
|
+
self.targetModuleId = value
|
|
140
|
+
return self
|
|
141
|
+
|
|
142
|
+
def getTargetModuleRef(self):
|
|
143
|
+
"""
|
|
144
|
+
Gets the reference to the target module in the dependency.
|
|
145
|
+
|
|
146
|
+
Returns:
|
|
147
|
+
RefType to the target module
|
|
148
|
+
"""
|
|
149
|
+
return self.targetModuleRef
|
|
150
|
+
|
|
151
|
+
def setTargetModuleRef(self, value):
|
|
152
|
+
"""
|
|
153
|
+
Sets the reference to the target module in the dependency.
|
|
154
|
+
Only sets the value if it is not None.
|
|
155
|
+
|
|
156
|
+
Args:
|
|
157
|
+
value: The target module reference to set
|
|
158
|
+
|
|
159
|
+
Returns:
|
|
160
|
+
self for method chaining
|
|
161
|
+
"""
|
|
162
|
+
if value is not None:
|
|
163
|
+
self.targetModuleRef = value
|
|
164
|
+
return self
|
|
165
|
+
|
|
166
|
+
|
|
167
|
+
class BswModuleEntry(AtpBlueprintable):
|
|
168
|
+
"""
|
|
169
|
+
Represents an entry point in a BSW module.
|
|
170
|
+
This class defines how BSW module functions can be accessed and executed.
|
|
171
|
+
"""
|
|
172
|
+
|
|
173
|
+
def __init__(self, parent: ARObject, short_name: str):
|
|
174
|
+
"""
|
|
175
|
+
Initializes the BSW module entry with a parent and short name.
|
|
176
|
+
|
|
177
|
+
Args:
|
|
178
|
+
parent: The parent ARObject that contains this entry
|
|
179
|
+
short_name: The unique short name of this entry
|
|
180
|
+
"""
|
|
181
|
+
super().__init__(parent, short_name)
|
|
182
|
+
|
|
183
|
+
# List of arguments for this module entry
|
|
184
|
+
self.arguments: List[SwServiceArg] = []
|
|
185
|
+
# Kind of BSW entry (e.g., FUNCTION)
|
|
186
|
+
self.bswEntryKind: BswEntryKindEnum = None
|
|
187
|
+
# Call type (synchronous or asynchronous)
|
|
188
|
+
self.callType: BswCallType = None
|
|
189
|
+
# Execution context where this entry runs
|
|
190
|
+
self.executionContext: BswExecutionContext = None
|
|
191
|
+
# Function prototype emitter name token
|
|
192
|
+
self.functionPrototypeEmitter: NameToken = None
|
|
193
|
+
# Flag indicating if this entry is reentrant (can be called concurrently)
|
|
194
|
+
self.isReentrant: Boolean = None
|
|
195
|
+
# Flag indicating if this entry is synchronous
|
|
196
|
+
self.isSynchronous: Boolean = None
|
|
197
|
+
# Return type of this entry
|
|
198
|
+
self.returnType: SwServiceArg = None
|
|
199
|
+
# Role identifier for this entry
|
|
200
|
+
self.role: Identifier = None
|
|
201
|
+
# Service identifier for this entry
|
|
202
|
+
self.serviceId: ARNumerical = None
|
|
203
|
+
# Software service implementation policy
|
|
204
|
+
self.swServiceImplPolicy: SwServiceImplPolicyEnum = None
|
|
205
|
+
|
|
206
|
+
def getArguments(self):
|
|
207
|
+
"""
|
|
208
|
+
Gets the list of arguments for this module entry.
|
|
209
|
+
|
|
210
|
+
Returns:
|
|
211
|
+
List of SwServiceArg instances
|
|
212
|
+
"""
|
|
213
|
+
return self.arguments
|
|
214
|
+
|
|
215
|
+
def createArgument(self, short_name: str) -> SwServiceArg:
|
|
216
|
+
"""
|
|
217
|
+
Creates and adds an argument to this module entry.
|
|
218
|
+
|
|
219
|
+
Args:
|
|
220
|
+
short_name: The short name for the new argument
|
|
221
|
+
|
|
222
|
+
Returns:
|
|
223
|
+
The created SwServiceArg instance
|
|
224
|
+
"""
|
|
225
|
+
if (short_name not in self.elements):
|
|
226
|
+
arg = SwServiceArg(self, short_name)
|
|
227
|
+
self.addElement(arg)
|
|
228
|
+
self.arguments.append(arg)
|
|
229
|
+
return self.getElement(short_name)
|
|
230
|
+
|
|
231
|
+
def getBswEntryKind(self):
|
|
232
|
+
"""
|
|
233
|
+
Gets the kind of BSW entry.
|
|
234
|
+
|
|
235
|
+
Returns:
|
|
236
|
+
BswEntryKindEnum value
|
|
237
|
+
"""
|
|
238
|
+
return self.bswEntryKind
|
|
239
|
+
|
|
240
|
+
def setBswEntryKind(self, value):
|
|
241
|
+
"""
|
|
242
|
+
Sets the kind of BSW entry.
|
|
243
|
+
|
|
244
|
+
Args:
|
|
245
|
+
value: The BswEntryKindEnum value to set
|
|
246
|
+
|
|
247
|
+
Returns:
|
|
248
|
+
self for method chaining
|
|
249
|
+
"""
|
|
250
|
+
self.bswEntryKind = value
|
|
251
|
+
return self
|
|
252
|
+
|
|
253
|
+
def getCallType(self):
|
|
254
|
+
"""
|
|
255
|
+
Gets the call type for this module entry.
|
|
256
|
+
|
|
257
|
+
Returns:
|
|
258
|
+
BswCallType value
|
|
259
|
+
"""
|
|
260
|
+
return self.callType
|
|
261
|
+
|
|
262
|
+
def setCallType(self, value):
|
|
263
|
+
"""
|
|
264
|
+
Sets the call type for this module entry.
|
|
265
|
+
|
|
266
|
+
Args:
|
|
267
|
+
value: The BswCallType value to set
|
|
268
|
+
|
|
269
|
+
Returns:
|
|
270
|
+
self for method chaining
|
|
271
|
+
"""
|
|
272
|
+
self.callType = value
|
|
273
|
+
return self
|
|
274
|
+
|
|
275
|
+
def getExecutionContext(self):
|
|
276
|
+
"""
|
|
277
|
+
Gets the execution context for this module entry.
|
|
278
|
+
|
|
279
|
+
Returns:
|
|
280
|
+
BswExecutionContext value
|
|
281
|
+
"""
|
|
282
|
+
return self.executionContext
|
|
283
|
+
|
|
284
|
+
def setExecutionContext(self, value):
|
|
285
|
+
"""
|
|
286
|
+
Sets the execution context for this module entry.
|
|
287
|
+
Validates that the value is one of the allowed execution contexts.
|
|
288
|
+
|
|
289
|
+
Args:
|
|
290
|
+
value: The BswExecutionContext value to set
|
|
291
|
+
|
|
292
|
+
Returns:
|
|
293
|
+
self for method chaining
|
|
294
|
+
|
|
295
|
+
Raises:
|
|
296
|
+
ValueError: If the execution context is not valid
|
|
297
|
+
"""
|
|
298
|
+
if value.upper() not in ("HOOK", "INTERRUPT-CAT-1", "INTERRUPT-CAT-2", "TASK", "UNSPECIFIED"):
|
|
299
|
+
raise ValueError("Invalid execution context <%s> of BswModuleEntry <%s>" % (value, self.short_name))
|
|
300
|
+
self.executionContext = value
|
|
301
|
+
return self
|
|
302
|
+
|
|
303
|
+
def getFunctionPrototypeEmitter(self):
|
|
304
|
+
"""
|
|
305
|
+
Gets the function prototype emitter name token.
|
|
306
|
+
|
|
307
|
+
Returns:
|
|
308
|
+
NameToken for the function prototype emitter
|
|
309
|
+
"""
|
|
310
|
+
return self.functionPrototypeEmitter
|
|
311
|
+
|
|
312
|
+
def setFunctionPrototypeEmitter(self, value):
|
|
313
|
+
"""
|
|
314
|
+
Sets the function prototype emitter name token.
|
|
315
|
+
|
|
316
|
+
Args:
|
|
317
|
+
value: The NameToken to set
|
|
318
|
+
|
|
319
|
+
Returns:
|
|
320
|
+
self for method chaining
|
|
321
|
+
"""
|
|
322
|
+
self.functionPrototypeEmitter = value
|
|
323
|
+
return self
|
|
324
|
+
|
|
325
|
+
def getIsReentrant(self):
|
|
326
|
+
"""
|
|
327
|
+
Gets the reentrant flag for this module entry.
|
|
328
|
+
|
|
329
|
+
Returns:
|
|
330
|
+
Boolean indicating if this entry is reentrant
|
|
331
|
+
"""
|
|
332
|
+
return self.isReentrant
|
|
333
|
+
|
|
334
|
+
def setIsReentrant(self, value):
|
|
335
|
+
"""
|
|
336
|
+
Sets the reentrant flag for this module entry.
|
|
337
|
+
|
|
338
|
+
Args:
|
|
339
|
+
value: The reentrant flag to set
|
|
340
|
+
|
|
341
|
+
Returns:
|
|
342
|
+
self for method chaining
|
|
343
|
+
"""
|
|
344
|
+
self.isReentrant = value
|
|
345
|
+
return self
|
|
346
|
+
|
|
347
|
+
def getIsSynchronous(self):
|
|
348
|
+
"""
|
|
349
|
+
Gets the synchronous flag for this module entry.
|
|
350
|
+
|
|
351
|
+
Returns:
|
|
352
|
+
Boolean indicating if this entry is synchronous
|
|
353
|
+
"""
|
|
354
|
+
return self.isSynchronous
|
|
355
|
+
|
|
356
|
+
def setIsSynchronous(self, value):
|
|
357
|
+
"""
|
|
358
|
+
Sets the synchronous flag for this module entry.
|
|
359
|
+
|
|
360
|
+
Args:
|
|
361
|
+
value: The synchronous flag to set
|
|
362
|
+
|
|
363
|
+
Returns:
|
|
364
|
+
self for method chaining
|
|
365
|
+
"""
|
|
366
|
+
self.isSynchronous = value
|
|
367
|
+
return self
|
|
368
|
+
|
|
369
|
+
def getReturnType(self):
|
|
370
|
+
"""
|
|
371
|
+
Gets the return type for this module entry.
|
|
372
|
+
|
|
373
|
+
Returns:
|
|
374
|
+
SwServiceArg instance representing the return type
|
|
375
|
+
"""
|
|
376
|
+
return self.returnType
|
|
377
|
+
|
|
378
|
+
def createReturnType(self, short_name: str) -> SwServiceArg:
|
|
379
|
+
"""
|
|
380
|
+
Creates and sets the return type for this module entry.
|
|
381
|
+
|
|
382
|
+
Args:
|
|
383
|
+
short_name: The short name for the new return type
|
|
384
|
+
|
|
385
|
+
Returns:
|
|
386
|
+
The created SwServiceArg instance
|
|
387
|
+
"""
|
|
388
|
+
if (short_name not in self.elements):
|
|
389
|
+
arg = SwServiceArg(self, short_name)
|
|
390
|
+
self.addElement(arg)
|
|
391
|
+
self.returnType = arg
|
|
392
|
+
return self.getElement(short_name)
|
|
393
|
+
|
|
394
|
+
def getRole(self):
|
|
395
|
+
"""
|
|
396
|
+
Gets the role identifier for this module entry.
|
|
397
|
+
|
|
398
|
+
Returns:
|
|
399
|
+
Identifier for the role
|
|
400
|
+
"""
|
|
401
|
+
return self.role
|
|
402
|
+
|
|
403
|
+
def setRole(self, value):
|
|
404
|
+
"""
|
|
405
|
+
Sets the role identifier for this module entry.
|
|
406
|
+
|
|
407
|
+
Args:
|
|
408
|
+
value: The role identifier to set
|
|
409
|
+
|
|
410
|
+
Returns:
|
|
411
|
+
self for method chaining
|
|
412
|
+
"""
|
|
413
|
+
self.role = value
|
|
414
|
+
return self
|
|
415
|
+
|
|
416
|
+
def getServiceId(self):
|
|
417
|
+
"""
|
|
418
|
+
Gets the service identifier for this module entry.
|
|
419
|
+
|
|
420
|
+
Returns:
|
|
421
|
+
ARNumerical representing the service ID
|
|
422
|
+
"""
|
|
423
|
+
return self.serviceId
|
|
424
|
+
|
|
425
|
+
def setServiceId(self, value):
|
|
426
|
+
"""
|
|
427
|
+
Sets the service identifier for this module entry.
|
|
428
|
+
|
|
429
|
+
Args:
|
|
430
|
+
value: The service ID to set
|
|
431
|
+
|
|
432
|
+
Returns:
|
|
433
|
+
self for method chaining
|
|
434
|
+
"""
|
|
435
|
+
self.serviceId = value
|
|
436
|
+
return self
|
|
437
|
+
|
|
438
|
+
def getSwServiceImplPolicy(self):
|
|
439
|
+
"""
|
|
440
|
+
Gets the software service implementation policy for this module entry.
|
|
441
|
+
|
|
442
|
+
Returns:
|
|
443
|
+
SwServiceImplPolicyEnum value
|
|
444
|
+
"""
|
|
445
|
+
return self.swServiceImplPolicy
|
|
446
|
+
|
|
447
|
+
def setSwServiceImplPolicy(self, value):
|
|
448
|
+
"""
|
|
449
|
+
Sets the software service implementation policy for this module entry.
|
|
450
|
+
Validates that the value is one of the allowed implementation policies.
|
|
451
|
+
|
|
452
|
+
Args:
|
|
453
|
+
value: The SwServiceImplPolicyEnum value to set
|
|
454
|
+
|
|
455
|
+
Returns:
|
|
456
|
+
self for method chaining
|
|
457
|
+
|
|
458
|
+
Raises:
|
|
459
|
+
ValueError: If the implementation policy is not valid
|
|
460
|
+
"""
|
|
461
|
+
if value.upper() not in ("INLINE", "INLINE-CONDITIONAL", "MACRO", "STANDARD"):
|
|
462
|
+
raise ValueError("Invalid SwServiceImplPolicy <%s> of BswModuleEntry <%s>" % (value, self.short_name))
|
|
463
|
+
self.swServiceImplPolicy = value
|
|
464
|
+
return self
|
|
465
|
+
|
|
466
|
+
def __str__(self) -> str:
|
|
467
|
+
"""
|
|
468
|
+
Returns a string representation of this BSW module entry.
|
|
469
|
+
Shows the key properties of the entry in a formatted way.
|
|
470
|
+
|
|
471
|
+
Returns:
|
|
472
|
+
Formatted string representation of the BSW module entry
|
|
473
|
+
"""
|
|
474
|
+
result = []
|
|
475
|
+
|
|
476
|
+
result.append("short_name : %s" % self.short_name)
|
|
477
|
+
if self.serviceId is not None:
|
|
478
|
+
result.append("service_id : %d" % self.serviceId.getValue())
|
|
479
|
+
if self.isReentrant is not None:
|
|
480
|
+
result.append("is_reentrant : %s" % self.isReentrant)
|
|
481
|
+
if self.isSynchronous is not None:
|
|
482
|
+
result.append("is_synchronous : %s" % self.isSynchronous)
|
|
483
|
+
if self.callType is not None:
|
|
484
|
+
result.append("call_type : %s" % self.callType)
|
|
485
|
+
if self.executionContext is not None:
|
|
486
|
+
result.append("execution_context : %s" % self.executionContext)
|
|
487
|
+
if self.swServiceImplPolicy is not None:
|
|
488
|
+
result.append("sw_service_impl_policy : %s" % self.swServiceImplPolicy)
|
|
489
|
+
|
|
490
|
+
return "\n".join(result)
|
|
491
|
+
|
|
492
|
+
|
|
493
|
+
class BswModuleClientServerEntry(Referrable):
|
|
494
|
+
"""
|
|
495
|
+
Represents a client-server entry in a BSW module.
|
|
496
|
+
This class defines how BSW modules implement client-server communication patterns.
|
|
497
|
+
"""
|
|
498
|
+
|
|
499
|
+
def __init__(self, parent: ARObject, short_name: str):
|
|
500
|
+
"""
|
|
501
|
+
Initializes the BSW module client-server entry with a parent and short name.
|
|
502
|
+
|
|
503
|
+
Args:
|
|
504
|
+
parent: The parent ARObject that contains this client-server entry
|
|
505
|
+
short_name: The unique short name of this client-server entry
|
|
506
|
+
"""
|
|
507
|
+
super().__init__(parent, short_name)
|
|
508
|
+
|
|
509
|
+
# Reference to the encapsulated entry that this client-server entry wraps
|
|
510
|
+
self.encapsulatedEntryRef: RefType = None
|
|
511
|
+
# Flag indicating if this client-server entry is reentrant
|
|
512
|
+
self.isReentrant: Boolean = None
|
|
513
|
+
# Flag indicating if this client-server entry is synchronous
|
|
514
|
+
self.isSynchronous: Boolean = None
|
|
515
|
+
|
|
516
|
+
def getEncapsulatedEntryRef(self):
|
|
517
|
+
"""
|
|
518
|
+
Gets the reference to the encapsulated entry that this client-server entry wraps.
|
|
519
|
+
|
|
520
|
+
Returns:
|
|
521
|
+
RefType to the encapsulated entry
|
|
522
|
+
"""
|
|
523
|
+
return self.encapsulatedEntryRef
|
|
524
|
+
|
|
525
|
+
def setEncapsulatedEntryRef(self, value):
|
|
526
|
+
"""
|
|
527
|
+
Sets the reference to the encapsulated entry that this client-server entry wraps.
|
|
528
|
+
Only sets the value if it is not None.
|
|
529
|
+
|
|
530
|
+
Args:
|
|
531
|
+
value: The encapsulated entry reference to set
|
|
532
|
+
|
|
533
|
+
Returns:
|
|
534
|
+
self for method chaining
|
|
535
|
+
"""
|
|
536
|
+
if value is not None:
|
|
537
|
+
self.encapsulatedEntryRef = value
|
|
538
|
+
return self
|
|
539
|
+
|
|
540
|
+
def getIsReentrant(self):
|
|
541
|
+
"""
|
|
542
|
+
Gets the reentrant flag for this client-server entry.
|
|
543
|
+
|
|
544
|
+
Returns:
|
|
545
|
+
Boolean indicating if this entry is reentrant
|
|
546
|
+
"""
|
|
547
|
+
return self.isReentrant
|
|
548
|
+
|
|
549
|
+
def setIsReentrant(self, value):
|
|
550
|
+
"""
|
|
551
|
+
Sets the reentrant flag for this client-server entry.
|
|
552
|
+
Only sets the value if it is not None.
|
|
553
|
+
|
|
554
|
+
Args:
|
|
555
|
+
value: The reentrant flag to set
|
|
556
|
+
|
|
557
|
+
Returns:
|
|
558
|
+
self for method chaining
|
|
559
|
+
"""
|
|
560
|
+
if value is not None:
|
|
561
|
+
self.isReentrant = value
|
|
562
|
+
return self
|
|
563
|
+
|
|
564
|
+
def getIsSynchronous(self):
|
|
565
|
+
"""
|
|
566
|
+
Gets the synchronous flag for this client-server entry.
|
|
567
|
+
|
|
568
|
+
Returns:
|
|
569
|
+
Boolean indicating if this entry is synchronous
|
|
570
|
+
"""
|
|
571
|
+
return self.isSynchronous
|
|
572
|
+
|
|
573
|
+
def setIsSynchronous(self, value):
|
|
574
|
+
"""
|
|
575
|
+
Sets the synchronous flag for this client-server entry.
|
|
576
|
+
Only sets the value if it is not None.
|
|
577
|
+
|
|
578
|
+
Args:
|
|
579
|
+
value: The synchronous flag to set
|
|
580
|
+
|
|
581
|
+
Returns:
|
|
582
|
+
self for method chaining
|
|
583
|
+
"""
|
|
584
|
+
if value is not None:
|
|
585
|
+
self.isSynchronous = value
|
|
586
|
+
return self
|