armodel 1.8.7__py3-none-any.whl → 1.9.1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- armodel/__init__.py +19 -3
- armodel/cli/arxml_dump_cli.py +196 -197
- armodel/cli/arxml_format_cli.py +84 -84
- armodel/cli/connector2xlsx_cli.py +73 -73
- armodel/cli/connector_update_cli.py +73 -73
- armodel/cli/file_list_cli.py +69 -69
- armodel/cli/format_xml_cli.py +62 -62
- armodel/cli/memory_section_cli.py +74 -75
- armodel/cli/swc_list_cli.py +79 -79
- armodel/cli/system_signal_cli.py +73 -73
- armodel/cli/uuid_checker_cli.py +95 -95
- armodel/data_models/sw_connector.py +21 -21
- armodel/lib/__init__.py +4 -4
- armodel/lib/cli_args_parser.py +36 -35
- armodel/lib/sw_component.py +34 -35
- armodel/lib/system_signal.py +36 -36
- armodel/models/M2/AUTOSARTemplates/AdaptivePlatform/PlatformModuleDeployment/Firewall/FirewallRule.py +62 -0
- armodel/models/M2/AUTOSARTemplates/AdaptivePlatform/PlatformModuleDeployment/Firewall/FirewallRuleProps.py +83 -0
- armodel/models/M2/AUTOSARTemplates/AdaptivePlatform/PlatformModuleDeployment/Firewall/StateDependentFirewall.py +62 -0
- armodel/models/M2/AUTOSARTemplates/AdaptivePlatform/PlatformModuleDeployment/Firewall/__init__.py +5 -0
- armodel/models/M2/AUTOSARTemplates/AdaptivePlatform/PlatformModuleDeployment/__init__.py +3 -0
- armodel/models/M2/AUTOSARTemplates/AdaptivePlatform/__init__.py +3 -0
- armodel/models/M2/AUTOSARTemplates/AutosarTopLevelStructure/__init__.py +320 -0
- armodel/models/M2/AUTOSARTemplates/AutosarTopLevelStructure.py +315 -318
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswBehavior/BswAsynchronousServerCallReturnsEvent.py +27 -0
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswBehavior/BswExclusiveAreaPolicy.py +22 -0
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswBehavior/BswInterruptEvent.py +18 -0
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswBehavior/BswModeManagerErrorEvent.py +18 -0
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswBehavior/BswModeReceiverPolicy.py +22 -0
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswBehavior/BswSchedulerNamePrefix.py +26 -0
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswBehavior/BswServiceDependency.py +27 -0
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswBehavior/BswTriggerDirectImplementation.py +21 -0
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswBehavior/RoleBasedBswModuleEntryAssignment.py +35 -0
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswBehavior.py +2223 -791
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswImplementation.py +180 -60
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswInterfaces/BswEntryRelationship.py +26 -0
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswInterfaces/BswEntryRelationshipEnum.py +24 -0
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswInterfaces/BswEntryRelationshipSet.py +24 -0
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswInterfaces.py +586 -200
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswOverview/ModeInBswModuleDescriptionInstanceRef.py +17 -0
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswOverview.py +445 -179
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Constants/__init__.py +670 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Filter.py +243 -96
- armodel/models/M2/AUTOSARTemplates/CommonStructure/FlatMap.py +273 -69
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Implementation.py +756 -243
- armodel/models/M2/AUTOSARTemplates/CommonStructure/ImplementationDataTypes.py +336 -170
- armodel/models/M2/AUTOSARTemplates/CommonStructure/InternalBehavior.py +430 -136
- armodel/models/M2/AUTOSARTemplates/CommonStructure/McGroups.py +53 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/ImplementationElementInParameterInstanceRef.py +15 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/McDataAccessDetails.py +60 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/McDataInstance.py +62 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/McFunction.py +62 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/McParameterElementGroup.py +39 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/McSupportData.py +62 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/McSwEmulationMethodSupport.py +37 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/RoleBasedMcDataAssignment.py +61 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/RptSupport/McFunctionDataRefSet.py +39 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/RptSupport/RptAccessEnum.py +12 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/RptSupport/RptComponent.py +60 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/RptSupport/RptEnablerImplTypeEnum.py +11 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/RptSupport/RptExecutableEntity.py +62 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/RptSupport/RptExecutableEntityEvent.py +62 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/RptSupport/RptExecutionContext.py +38 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/RptSupport/RptExecutionControlEnum.py +11 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/RptSupport/RptPreparationEnum.py +11 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/RptSupport/RptServicePoint.py +62 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/RptSupport/RptSupportData.py +111 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/RptSupport/RptSwPrototypingAccess.py +62 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/RptSupport/__init__.py +27 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/MeasurementCalibrationSupport/__init__.py +19 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/ModeDeclaration.py +424 -148
- armodel/models/M2/AUTOSARTemplates/CommonStructure/ModeDeclarationExtra.py +73 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/ExecutionTime/__init__.py +132 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/HardwareConfiguration.py +93 -32
- armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/HeapUsage.py +78 -10
- armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/MemorySectionUsage.py +239 -81
- armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/SoftwareContext.py +68 -23
- armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/StackUsage.py +274 -92
- armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/__init__.py +135 -53
- armodel/models/M2/AUTOSARTemplates/CommonStructure/ServiceNeeds.py +2955 -839
- armodel/models/M2/AUTOSARTemplates/CommonStructure/SignalServiceTranslation/SignalServiceTranslationControlEnum.py +11 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/SignalServiceTranslation/SignalServiceTranslationElementProps.py +37 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/SignalServiceTranslation/SignalServiceTranslationEventProps.py +37 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/SignalServiceTranslation/SignalServiceTranslationProps.py +38 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/SignalServiceTranslation/SignalServiceTranslationPropsSet.py +38 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/SignalServiceTranslation/__init__.py +13 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/StandardizationTemplate/AbstractBlueprintStructure/AtpBlueprint.py +32 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/StandardizationTemplate/AbstractBlueprintStructure/__init__.py +7 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/StandardizationTemplate/BlueprintDedicated/PortPrototypeBlueprint.py +186 -73
- armodel/models/M2/AUTOSARTemplates/CommonStructure/StandardizationTemplate/BlueprintDedicated/__init__.py +10 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/StandardizationTemplate/BlueprintGenerator/BlueprintGenerator.py +37 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/StandardizationTemplate/BlueprintGenerator/__init__.py +3 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/StandardizationTemplate/BlueprintMapping/BlueprintMappingSet.py +38 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/StandardizationTemplate/BlueprintMapping/__init__.py +3 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/StandardizationTemplate/Keyword.py +126 -45
- armodel/models/M2/AUTOSARTemplates/CommonStructure/StandardizationTemplate/__init__.py +5 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/SwcBswMapping.py +290 -77
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingClock/TDLETZoneClock.py +61 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingClock/TimingClock.py +60 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingClock/TimingClockSyncAccuracy.py +60 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingClock/__init__.py +5 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingCondition/ModeInBswInstanceRef.py +14 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingCondition/ModeInSwcInstanceRef.py +14 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingCondition/TimingCondition.py +61 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingCondition/TimingConditionFormula.py +37 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingCondition/TimingExtensionResource.py +60 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingCondition/TimingModeInstance.py +61 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingCondition/__init__.py +15 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/AgeConstraint.py +57 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/EventTriggeringConstraint.py +203 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/ExecutionOrderConstraint.py +193 -45
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/ExecutionTimeConstraint.py +101 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/LatencyTimingConstraint.py +100 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/OffsetConstraint.py +56 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/SynchronizationPointConstraint.py +57 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/SynchronizationTiming.py +117 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/TimingConstraint.py +59 -24
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/TimingExtensions.py +69 -32
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/__init__.py +48 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/Traceable.py +11 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/__init__.py +16 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/TriggerDeclaration.py +147 -52
- armodel/models/M2/AUTOSARTemplates/CommonStructure/__init__.py +17 -205
- armodel/models/M2/AUTOSARTemplates/DiagnosticExtract/DiagnosticCommonElement.py +11 -0
- armodel/models/M2/AUTOSARTemplates/DiagnosticExtract/DiagnosticContribution.py +137 -47
- armodel/models/M2/AUTOSARTemplates/DiagnosticExtract/__init__.py +10 -0
- armodel/models/M2/AUTOSARTemplates/ECUCDescriptionTemplate.py +285 -346
- armodel/models/M2/AUTOSARTemplates/ECUCParameterDefTemplate.py +1561 -1249
- armodel/models/M2/AUTOSARTemplates/EcuResourceTemplate/HwAttributeValue.py +117 -0
- armodel/models/M2/AUTOSARTemplates/EcuResourceTemplate/HwElementCategory.py +176 -59
- armodel/models/M2/AUTOSARTemplates/EcuResourceTemplate/HwElementConnector.py +73 -0
- armodel/models/M2/AUTOSARTemplates/EcuResourceTemplate/__init__.py +401 -145
- armodel/models/M2/AUTOSARTemplates/GenericStructure/AbstractStructure.py +293 -92
- armodel/models/M2/AUTOSARTemplates/GenericStructure/DocumentationOnM1/__init__.py +39 -0
- armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/ARPackage.py +1314 -816
- armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/AnyInstanceRef.py +88 -0
- armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/ArObject.py +37 -17
- armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/ElementCollection.py +197 -74
- armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/EngineeringObject.py +129 -51
- armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/Enumerations.py +16 -0
- armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/Identifiable.py +599 -236
- armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/PrimitiveTypes.py +902 -594
- armodel/models/M2/AUTOSARTemplates/GenericStructure/LifeCycles.py +395 -155
- armodel/models/M2/AUTOSARTemplates/GenericStructure/RolesAndRights/AtpDefinition.py +36 -0
- armodel/models/M2/AUTOSARTemplates/GenericStructure/RolesAndRights/__init__.py +7 -0
- armodel/models/M2/AUTOSARTemplates/GenericStructure/VariantHandling/AttributeValueVariationPoints/__init__.py +36 -0
- armodel/models/M2/AUTOSARTemplates/GenericStructure/VariantHandling/__init__.py +182 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/ApplicationAttributes/__init__.py +97 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Communication.py +784 -712
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Components/InstanceRefs.py +186 -179
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Components/__init__.py +363 -463
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Composition/InstanceRefs.py +160 -154
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Composition/__init__.py +160 -100
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Datatype/DataPrototypes.py +145 -145
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Datatype/Datatypes.py +137 -131
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/EndToEndProtection.py +191 -184
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/PortInterface/InstanceRefs.py +45 -39
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/PortInterface/__init__.py +647 -641
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/RPTScenario.py +21 -17
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SoftwareComponentDocumentation.py +84 -80
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwComponentType.py +76 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcImplementation.py +37 -34
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/AccessCount.py +26 -21
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/AutosarVariableRef.py +39 -34
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/DataElements.py +57 -52
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/IncludedDataTypes.py +32 -24
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/InstanceRefsUsage.py +160 -155
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/ModeDeclarationGroup.py +68 -63
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/PerInstanceMemory.py +46 -40
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/PortAPIOptions.py +91 -86
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/RTEEvents.py +219 -206
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/ServerCall.py +33 -26
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/ServiceMapping.py +148 -137
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/Trigger.py +54 -49
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/__init__.py +488 -489
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/DataMapping.py +334 -259
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/DiagnosticConnection.py +62 -58
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/DoIp.py +48 -29
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/{EcuResourceMapping.py → ECUResourceMapping.py} +48 -45
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Can/CanCommunication.py +139 -122
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Can/CanTopology.py +628 -344
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Can/__init__.py +2 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet/EthernetCommunication.py +267 -244
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet/EthernetFrame.py +30 -16
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet/EthernetTopology.py +750 -685
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet/NetworkEndpoint.py +375 -327
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet/ServiceInstances.py +924 -975
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Flexray/FlexrayCommunication.py +92 -76
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Flexray/FlexrayTopology.py +669 -654
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Lin/LinCommunication.py +193 -149
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Lin/LinTopology.py +110 -92
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Multiplatform.py +205 -205
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/FibexCore/CoreCommunication.py +1376 -1232
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/FibexCore/CoreTopology.py +800 -662
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/FibexCore/EcuInstance.py +269 -270
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/FibexCore/Timing.py +172 -172
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/InstanceRefs.py +90 -87
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/NetworkManagement.py +899 -789
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/RteEventToOsTaskMapping.py +43 -35
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/SWmapping.py +65 -52
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/SecureCommunication.py +105 -83
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Transformer/__init__.py +574 -524
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/TransportProtocols.py +739 -658
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/__init__.py +493 -458
- armodel/models/M2/MSR/AsamHdo/AdminData.py +150 -136
- armodel/models/M2/MSR/AsamHdo/BaseTypes.py +95 -76
- armodel/models/M2/MSR/AsamHdo/ComputationMethod.py +367 -329
- armodel/models/M2/MSR/AsamHdo/Constraints/GlobalConstraints.py +58 -41
- armodel/models/M2/MSR/AsamHdo/SpecialData.py +99 -87
- armodel/models/M2/MSR/AsamHdo/Units.py +159 -105
- armodel/models/M2/MSR/CalibrationData/CalibrationValue.py +55 -57
- armodel/models/M2/MSR/DataDictionary/AuxillaryObjects.py +40 -41
- armodel/models/M2/MSR/DataDictionary/Axis.py +142 -144
- armodel/models/M2/MSR/DataDictionary/CalibrationParameter.py +35 -36
- armodel/models/M2/MSR/DataDictionary/DataDefProperties.py +383 -351
- armodel/models/M2/MSR/DataDictionary/RecordLayout.py +207 -209
- armodel/models/M2/MSR/DataDictionary/ServiceProcessTask.py +31 -33
- armodel/models/M2/MSR/DataDictionary/SystemConstant.py +32 -0
- armodel/models/M2/MSR/Documentation/Annotation.py +40 -41
- armodel/models/M2/MSR/Documentation/BlockElements/Figure.py +162 -163
- armodel/models/M2/MSR/Documentation/BlockElements/Formula/__init__.py +26 -0
- armodel/models/M2/MSR/Documentation/TextModel/BlockElements/ListElements.py +55 -56
- armodel/models/M2/MSR/Documentation/TextModel/BlockElements/PaginationAndView.py +35 -30
- armodel/models/M2/MSR/Documentation/TextModel/BlockElements/__init__.py +110 -110
- armodel/models/M2/MSR/Documentation/TextModel/LanguageDataModel.py +57 -44
- armodel/models/M2/MSR/Documentation/TextModel/MultilanguageData.py +59 -58
- armodel/models/M2/MSR/Documentation/__init__.py +3 -3
- armodel/models/M2/MSR/documentation/__init__.py +3 -0
- armodel/models/__init__.py +86 -86
- armodel/models/utils/uuid_mgr.py +28 -29
- armodel/parser/__init__.py +2 -2
- armodel/parser/abstract_arxml_parser.py +323 -325
- armodel/parser/arxml_parser.py +5832 -5830
- armodel/parser/connector_xlsx_parser.py +192 -193
- armodel/parser/excel_parser.py +17 -17
- armodel/parser/file_parser.py +46 -46
- armodel/report/__init__.py +1 -1
- armodel/report/connector_xls_report.py +76 -77
- armodel/report/excel_report.py +41 -41
- armodel/transformer/abstract.py +6 -6
- armodel/transformer/admin_data.py +31 -31
- armodel/writer/__init__.py +1 -1
- armodel/writer/abstract_arxml_writer.py +146 -147
- armodel/writer/arxml_writer.py +5969 -5965
- {armodel-1.8.7.dist-info → armodel-1.9.1.dist-info}/METADATA +850 -662
- armodel-1.9.1.dist-info/RECORD +273 -0
- {armodel-1.8.7.dist-info → armodel-1.9.1.dist-info}/WHEEL +1 -1
- {armodel-1.8.7.dist-info → armodel-1.9.1.dist-info}/entry_points.txt +0 -1
- {armodel-1.8.7.dist-info → armodel-1.9.1.dist-info/licenses}/LICENSE +21 -21
- armodel/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/__pycache__/BswBehavior.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/__pycache__/BswImplementation.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/__pycache__/BswInterfaces.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/__pycache__/BswOverview.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/__pycache__/HardwareConfiguration.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/__pycache__/HeapUsage.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/__pycache__/MemorySectionUsage.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/__pycache__/SoftwareContext.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/__pycache__/StackUsage.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/StandardizationTemplate/BlueprintDedicated/__pycache__/PortPrototypeBlueprint.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/StandardizationTemplate/BlueprintDedicated/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/StandardizationTemplate/__pycache__/Keyword.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/StandardizationTemplate/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/SwcInternalBehavior/ModeDeclarationGroup.py +0 -24
- armodel/models/M2/AUTOSARTemplates/CommonStructure/SwcInternalBehavior/__init__.py +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/__pycache__/ExecutionOrderConstraint.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/__pycache__/TimingConstraint.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/__pycache__/TimingExtensions.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/__pycache__/Filter.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/__pycache__/FlatMap.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/__pycache__/Implementation.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/__pycache__/ImplementationDataTypes.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/__pycache__/InternalBehavior.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/__pycache__/ModeDeclaration.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/__pycache__/ServiceNeeds.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/__pycache__/SwcBswMapping.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/__pycache__/TriggerDeclaration.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/DiagnosticExtract/__pycache__/DiagnosticContribution.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/DiagnosticExtract/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/EcuResourceTemplate/__pycache__/HwElementCategory.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/EcuResourceTemplate/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/__pycache__/ARPackage.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/__pycache__/ArObject.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/__pycache__/ElementCollection.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/__pycache__/EngineeringObject.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/__pycache__/Identifiable.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/__pycache__/PrimitiveTypes.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/GenericStructure/__pycache__/AbstractStructure.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/GenericStructure/__pycache__/LifeCycles.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/GenericStructure/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Components/__pycache__/InstanceRefs.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Components/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Composition/__pycache__/InstanceRefs.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Composition/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Datatype/__pycache__/DataPrototypes.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Datatype/__pycache__/Datatypes.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Datatype/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/PortInterface/__pycache__/InstanceRefs.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/PortInterface/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/__pycache__/AccessCount.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/__pycache__/AutosarVariableRef.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/__pycache__/DataElements.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/__pycache__/IncludedDataTypes.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/__pycache__/InstanceRefsUsage.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/__pycache__/ModeDeclarationGroup.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/__pycache__/PerInstanceMemory.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/__pycache__/PortAPIOptions.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/__pycache__/RTEEvents.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/__pycache__/ServerCall.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/__pycache__/ServiceMapping.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/__pycache__/Trigger.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/__pycache__/Communication.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/__pycache__/EndToEndProtection.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/__pycache__/RPTScenario.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/__pycache__/SwcImplementation.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Can/__pycache__/CanCommunication.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Can/__pycache__/CanTopology.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Can/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet/__pycache__/EthernetCommunication.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet/__pycache__/EthernetFrame.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet/__pycache__/EthernetTopology.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet/__pycache__/NetworkEndpoint.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet/__pycache__/ServiceInstances.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Flexray/__pycache__/FlexrayCommunication.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Flexray/__pycache__/FlexrayTopology.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Flexray/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Lin/__pycache__/LinCommunication.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Lin/__pycache__/LinTopology.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Lin/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/FibexCore/__pycache__/CoreCommunication.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/FibexCore/__pycache__/CoreTopology.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/FibexCore/__pycache__/EcuInstance.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/FibexCore/__pycache__/Timing.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/FibexCore/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/__pycache__/Fibex4Multiplatform.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Transformer/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/__pycache__/DataMapping.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/__pycache__/DiagnosticConnection.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/__pycache__/DoIp.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/__pycache__/EcuResourceMapping.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/__pycache__/InstanceRefs.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/__pycache__/NetworkManagement.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/__pycache__/RteEventToOsTaskMapping.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/__pycache__/SWmapping.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/__pycache__/SecureCommunication.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/__pycache__/TransportProtocols.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/__pycache__/AutosarTopLevelStructure.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/__pycache__/ECUCDescriptionTemplate.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/__pycache__/ECUCParameterDefTemplate.cpython-312.pyc +0 -0
- armodel/models/M2/AUTOSARTemplates/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/AsamHdo/Constraints/__pycache__/GlobalConstraints.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/AsamHdo/Constraints/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/AsamHdo/__pycache__/AdminData.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/AsamHdo/__pycache__/BaseTypes.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/AsamHdo/__pycache__/ComputationMethod.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/AsamHdo/__pycache__/SpecialData.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/AsamHdo/__pycache__/Units.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/AsamHdo/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/CalibrationData/__pycache__/CalibrationValue.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/CalibrationData/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/DataDictionary/__pycache__/AuxillaryObjects.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/DataDictionary/__pycache__/Axis.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/DataDictionary/__pycache__/CalibrationParameter.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/DataDictionary/__pycache__/DataDefProperties.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/DataDictionary/__pycache__/RecordLayout.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/DataDictionary/__pycache__/ServiceProcessTask.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/DataDictionary/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/Documentation/BlockElements/__pycache__/Figure.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/Documentation/BlockElements/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/Documentation/BlockElements.py +0 -18
- armodel/models/M2/MSR/Documentation/TextModel/BlockElements/__pycache__/ListElements.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/Documentation/TextModel/BlockElements/__pycache__/PaginationAndView.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/Documentation/TextModel/BlockElements/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/Documentation/TextModel/__pycache__/LanguageDataModel.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/Documentation/TextModel/__pycache__/MultilanguageData.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/Documentation/TextModel/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/Documentation/__pycache__/Annotation.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/Documentation/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/MSR/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/M2/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/utils/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/models/utils/__pycache__/uuid_mgr.cpython-312.pyc +0 -0
- armodel/parser/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/parser/__pycache__/abstract_arxml_parser.cpython-312.pyc +0 -0
- armodel/parser/__pycache__/arxml_parser.cpython-312.pyc +0 -0
- armodel/parser/__pycache__/file_parser.cpython-312.pyc +0 -0
- armodel/tests/__init__.py +0 -0
- armodel/tests/test_armodel/__init__.py +0 -0
- armodel/tests/test_armodel/models/__init__.py +0 -0
- armodel/tests/test_armodel/models/test_ECUCParameterDefTemplate.py +0 -116
- armodel/tests/test_armodel/models/test_Identifiable.py +0 -85
- armodel/tests/test_armodel/models/test_ar_object.py +0 -154
- armodel/tests/test_armodel/models/test_ar_package.py +0 -304
- armodel/tests/test_armodel/models/test_ar_ref.py +0 -81
- armodel/tests/test_armodel/models/test_bsw_module_template.py +0 -52
- armodel/tests/test_armodel/models/test_common_structure.py +0 -82
- armodel/tests/test_armodel/models/test_data_dictionary.py +0 -30
- armodel/tests/test_armodel/models/test_data_prototype.py +0 -93
- armodel/tests/test_armodel/models/test_datatype.py +0 -251
- armodel/tests/test_armodel/models/test_general_structure.py +0 -56
- armodel/tests/test_armodel/models/test_implementation.py +0 -27
- armodel/tests/test_armodel/models/test_m2_msr.py +0 -79
- armodel/tests/test_armodel/models/test_port_interface.py +0 -202
- armodel/tests/test_armodel/models/test_port_prototype.py +0 -15
- armodel/tests/test_armodel/parser/__init__.py +0 -0
- armodel/tests/test_armodel/parser/test_arxml_parser.py +0 -53
- armodel/tests/test_armodel/parser/test_bsw_module_descriiption.py +0 -218
- armodel/tests/test_armodel/parser/test_implementation_data_type.py +0 -247
- armodel/tests/test_armodel/parser/test_parse_bswmd.py +0 -202
- armodel/tests/test_armodel/parser/test_rte_event.py +0 -142
- armodel/tests/test_armodel/parser/test_runnable_entity.py +0 -135
- armodel/tests/test_armodel/parser/test_sw_components.py +0 -484
- armodel/tests/test_armodel/parser/test_system.py +0 -23
- armodel/writer/__pycache__/__init__.cpython-312.pyc +0 -0
- armodel/writer/__pycache__/abstract_arxml_writer.cpython-312.pyc +0 -0
- armodel/writer/__pycache__/arxml_writer.cpython-312.pyc +0 -0
- armodel-1.8.7.dist-info/RECORD +0 -360
- {armodel-1.8.7.dist-info → armodel-1.9.1.dist-info}/top_level.txt +0 -0
|
@@ -1,1232 +1,1376 @@
|
|
|
1
|
-
from abc import
|
|
2
|
-
from typing import List
|
|
3
|
-
from
|
|
4
|
-
from
|
|
5
|
-
from
|
|
6
|
-
from
|
|
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
|
-
self.
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
self
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
self.
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
self.
|
|
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
|
-
self.
|
|
152
|
-
self
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
return self
|
|
163
|
-
|
|
164
|
-
def
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
self.
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
return self
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
self.
|
|
240
|
-
self
|
|
241
|
-
|
|
242
|
-
def
|
|
243
|
-
return self.
|
|
244
|
-
|
|
245
|
-
def
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
self
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
def
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
def
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
self
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
self.
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
self.
|
|
291
|
-
self
|
|
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
|
-
def
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
return self
|
|
343
|
-
|
|
344
|
-
def
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
return self
|
|
351
|
-
|
|
352
|
-
def
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
return self
|
|
359
|
-
|
|
360
|
-
def
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
return self
|
|
367
|
-
|
|
368
|
-
def
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
return self
|
|
375
|
-
|
|
376
|
-
def
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
return self
|
|
383
|
-
|
|
384
|
-
def
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
return self
|
|
391
|
-
|
|
392
|
-
def
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
return self
|
|
399
|
-
|
|
400
|
-
def
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
return self
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
self.
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
self
|
|
420
|
-
|
|
421
|
-
def
|
|
422
|
-
return self.
|
|
423
|
-
|
|
424
|
-
def
|
|
425
|
-
if value is not None:
|
|
426
|
-
self.
|
|
427
|
-
return self
|
|
428
|
-
|
|
429
|
-
def
|
|
430
|
-
return self.
|
|
431
|
-
|
|
432
|
-
def
|
|
433
|
-
if value is not None:
|
|
434
|
-
self.
|
|
435
|
-
return self
|
|
436
|
-
|
|
437
|
-
def
|
|
438
|
-
return self.
|
|
439
|
-
|
|
440
|
-
def
|
|
441
|
-
if value is not None:
|
|
442
|
-
self.
|
|
443
|
-
return self
|
|
444
|
-
|
|
445
|
-
def
|
|
446
|
-
return self.
|
|
447
|
-
|
|
448
|
-
def
|
|
449
|
-
if value is not None:
|
|
450
|
-
self.
|
|
451
|
-
return self
|
|
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
|
-
def
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
self
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
self
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
return self
|
|
502
|
-
|
|
503
|
-
def
|
|
504
|
-
return self.
|
|
505
|
-
|
|
506
|
-
def
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
return self
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
self.
|
|
538
|
-
self.
|
|
539
|
-
self.
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
def
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
return self
|
|
550
|
-
|
|
551
|
-
def
|
|
552
|
-
return self.
|
|
553
|
-
|
|
554
|
-
def
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
return self
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
def
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
self.
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
return self
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
|
|
638
|
-
|
|
639
|
-
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
self.
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
self.
|
|
660
|
-
self
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
|
|
673
|
-
|
|
674
|
-
|
|
675
|
-
def
|
|
676
|
-
self.
|
|
677
|
-
|
|
678
|
-
|
|
679
|
-
|
|
680
|
-
return self
|
|
681
|
-
|
|
682
|
-
def
|
|
683
|
-
self.
|
|
684
|
-
|
|
685
|
-
|
|
686
|
-
|
|
687
|
-
return self
|
|
688
|
-
|
|
689
|
-
|
|
690
|
-
|
|
691
|
-
|
|
692
|
-
|
|
693
|
-
|
|
694
|
-
|
|
695
|
-
|
|
696
|
-
def
|
|
697
|
-
|
|
698
|
-
|
|
699
|
-
|
|
700
|
-
|
|
701
|
-
|
|
702
|
-
|
|
703
|
-
def
|
|
704
|
-
self.
|
|
705
|
-
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
return self
|
|
709
|
-
|
|
710
|
-
def
|
|
711
|
-
self.
|
|
712
|
-
|
|
713
|
-
|
|
714
|
-
|
|
715
|
-
|
|
716
|
-
|
|
717
|
-
|
|
718
|
-
self.
|
|
719
|
-
|
|
720
|
-
|
|
721
|
-
|
|
722
|
-
|
|
723
|
-
|
|
724
|
-
|
|
725
|
-
self
|
|
726
|
-
|
|
727
|
-
|
|
728
|
-
|
|
729
|
-
|
|
730
|
-
|
|
731
|
-
|
|
732
|
-
|
|
733
|
-
|
|
734
|
-
|
|
735
|
-
|
|
736
|
-
|
|
737
|
-
|
|
738
|
-
|
|
739
|
-
|
|
740
|
-
self.
|
|
741
|
-
self.
|
|
742
|
-
self.
|
|
743
|
-
self.
|
|
744
|
-
self.
|
|
745
|
-
|
|
746
|
-
|
|
747
|
-
|
|
748
|
-
|
|
749
|
-
|
|
750
|
-
|
|
751
|
-
|
|
752
|
-
|
|
753
|
-
|
|
754
|
-
|
|
755
|
-
|
|
756
|
-
|
|
757
|
-
|
|
758
|
-
|
|
759
|
-
|
|
760
|
-
|
|
761
|
-
|
|
762
|
-
|
|
763
|
-
|
|
764
|
-
|
|
765
|
-
|
|
766
|
-
|
|
767
|
-
|
|
768
|
-
|
|
769
|
-
|
|
770
|
-
|
|
771
|
-
|
|
772
|
-
|
|
773
|
-
|
|
774
|
-
|
|
775
|
-
|
|
776
|
-
|
|
777
|
-
|
|
778
|
-
|
|
779
|
-
|
|
780
|
-
|
|
781
|
-
|
|
782
|
-
|
|
783
|
-
|
|
784
|
-
|
|
785
|
-
|
|
786
|
-
|
|
787
|
-
|
|
788
|
-
|
|
789
|
-
|
|
790
|
-
|
|
791
|
-
self.
|
|
792
|
-
|
|
793
|
-
|
|
794
|
-
|
|
795
|
-
return self
|
|
796
|
-
|
|
797
|
-
def
|
|
798
|
-
self.
|
|
799
|
-
|
|
800
|
-
|
|
801
|
-
|
|
802
|
-
return self
|
|
803
|
-
|
|
804
|
-
def
|
|
805
|
-
self.
|
|
806
|
-
|
|
807
|
-
|
|
808
|
-
|
|
809
|
-
return self
|
|
810
|
-
|
|
811
|
-
def
|
|
812
|
-
self.
|
|
813
|
-
|
|
814
|
-
|
|
815
|
-
|
|
816
|
-
|
|
817
|
-
|
|
818
|
-
|
|
819
|
-
|
|
820
|
-
|
|
821
|
-
|
|
822
|
-
|
|
823
|
-
|
|
824
|
-
|
|
825
|
-
|
|
826
|
-
|
|
827
|
-
|
|
828
|
-
|
|
829
|
-
|
|
830
|
-
|
|
831
|
-
|
|
832
|
-
|
|
833
|
-
|
|
834
|
-
|
|
835
|
-
return self
|
|
836
|
-
|
|
837
|
-
|
|
838
|
-
|
|
839
|
-
|
|
840
|
-
|
|
841
|
-
|
|
842
|
-
self.
|
|
843
|
-
|
|
844
|
-
|
|
845
|
-
|
|
846
|
-
return self
|
|
847
|
-
|
|
848
|
-
def
|
|
849
|
-
self.
|
|
850
|
-
return self
|
|
851
|
-
|
|
852
|
-
def
|
|
853
|
-
|
|
854
|
-
|
|
855
|
-
|
|
856
|
-
|
|
857
|
-
return self
|
|
858
|
-
|
|
859
|
-
|
|
860
|
-
|
|
861
|
-
|
|
862
|
-
|
|
863
|
-
|
|
864
|
-
self.
|
|
865
|
-
|
|
866
|
-
|
|
867
|
-
|
|
868
|
-
|
|
869
|
-
|
|
870
|
-
|
|
871
|
-
|
|
872
|
-
|
|
873
|
-
|
|
874
|
-
|
|
875
|
-
|
|
876
|
-
|
|
877
|
-
|
|
878
|
-
|
|
879
|
-
|
|
880
|
-
|
|
881
|
-
|
|
882
|
-
|
|
883
|
-
|
|
884
|
-
|
|
885
|
-
|
|
886
|
-
|
|
887
|
-
|
|
888
|
-
|
|
889
|
-
|
|
890
|
-
|
|
891
|
-
|
|
892
|
-
|
|
893
|
-
|
|
894
|
-
|
|
895
|
-
self.
|
|
896
|
-
|
|
897
|
-
|
|
898
|
-
|
|
899
|
-
return self
|
|
900
|
-
|
|
901
|
-
def
|
|
902
|
-
|
|
903
|
-
|
|
904
|
-
|
|
905
|
-
|
|
906
|
-
|
|
907
|
-
|
|
908
|
-
|
|
909
|
-
|
|
910
|
-
|
|
911
|
-
|
|
912
|
-
|
|
913
|
-
|
|
914
|
-
|
|
915
|
-
|
|
916
|
-
|
|
917
|
-
|
|
918
|
-
|
|
919
|
-
|
|
920
|
-
|
|
921
|
-
|
|
922
|
-
|
|
923
|
-
|
|
924
|
-
def
|
|
925
|
-
|
|
926
|
-
|
|
927
|
-
|
|
928
|
-
|
|
929
|
-
|
|
930
|
-
|
|
931
|
-
|
|
932
|
-
|
|
933
|
-
return self
|
|
934
|
-
|
|
935
|
-
|
|
936
|
-
|
|
937
|
-
|
|
938
|
-
|
|
939
|
-
|
|
940
|
-
|
|
941
|
-
|
|
942
|
-
def __init__(self):
|
|
943
|
-
super().__init__()
|
|
944
|
-
|
|
945
|
-
self.
|
|
946
|
-
|
|
947
|
-
|
|
948
|
-
|
|
949
|
-
|
|
950
|
-
|
|
951
|
-
|
|
952
|
-
|
|
953
|
-
return self
|
|
954
|
-
|
|
955
|
-
|
|
956
|
-
|
|
957
|
-
|
|
958
|
-
|
|
959
|
-
|
|
960
|
-
self
|
|
961
|
-
|
|
962
|
-
|
|
963
|
-
|
|
964
|
-
|
|
965
|
-
|
|
966
|
-
|
|
967
|
-
|
|
968
|
-
|
|
969
|
-
|
|
970
|
-
|
|
971
|
-
|
|
972
|
-
|
|
973
|
-
|
|
974
|
-
|
|
975
|
-
|
|
976
|
-
|
|
977
|
-
|
|
978
|
-
|
|
979
|
-
|
|
980
|
-
|
|
981
|
-
return self
|
|
982
|
-
|
|
983
|
-
def
|
|
984
|
-
|
|
985
|
-
|
|
986
|
-
|
|
987
|
-
|
|
988
|
-
|
|
989
|
-
|
|
990
|
-
def
|
|
991
|
-
|
|
992
|
-
|
|
993
|
-
|
|
994
|
-
|
|
995
|
-
|
|
996
|
-
|
|
997
|
-
|
|
998
|
-
|
|
999
|
-
|
|
1000
|
-
|
|
1001
|
-
|
|
1002
|
-
|
|
1003
|
-
|
|
1004
|
-
|
|
1005
|
-
|
|
1006
|
-
|
|
1007
|
-
|
|
1008
|
-
self.
|
|
1009
|
-
self.
|
|
1010
|
-
|
|
1011
|
-
|
|
1012
|
-
self.
|
|
1013
|
-
|
|
1014
|
-
|
|
1015
|
-
|
|
1016
|
-
|
|
1017
|
-
return self
|
|
1018
|
-
|
|
1019
|
-
def
|
|
1020
|
-
|
|
1021
|
-
|
|
1022
|
-
|
|
1023
|
-
|
|
1024
|
-
|
|
1025
|
-
return self
|
|
1026
|
-
|
|
1027
|
-
def
|
|
1028
|
-
|
|
1029
|
-
|
|
1030
|
-
|
|
1031
|
-
|
|
1032
|
-
|
|
1033
|
-
return self
|
|
1034
|
-
|
|
1035
|
-
|
|
1036
|
-
|
|
1037
|
-
|
|
1038
|
-
|
|
1039
|
-
|
|
1040
|
-
|
|
1041
|
-
|
|
1042
|
-
|
|
1043
|
-
|
|
1044
|
-
|
|
1045
|
-
|
|
1046
|
-
|
|
1047
|
-
|
|
1048
|
-
|
|
1049
|
-
|
|
1050
|
-
|
|
1051
|
-
|
|
1052
|
-
|
|
1053
|
-
|
|
1054
|
-
|
|
1055
|
-
|
|
1056
|
-
|
|
1057
|
-
|
|
1058
|
-
|
|
1059
|
-
|
|
1060
|
-
|
|
1061
|
-
|
|
1062
|
-
|
|
1063
|
-
|
|
1064
|
-
|
|
1065
|
-
|
|
1066
|
-
|
|
1067
|
-
|
|
1068
|
-
|
|
1069
|
-
|
|
1070
|
-
|
|
1071
|
-
|
|
1072
|
-
|
|
1073
|
-
|
|
1074
|
-
|
|
1075
|
-
|
|
1076
|
-
|
|
1077
|
-
|
|
1078
|
-
|
|
1079
|
-
|
|
1080
|
-
|
|
1081
|
-
|
|
1082
|
-
|
|
1083
|
-
|
|
1084
|
-
|
|
1085
|
-
|
|
1086
|
-
|
|
1087
|
-
|
|
1088
|
-
|
|
1089
|
-
|
|
1090
|
-
|
|
1091
|
-
|
|
1092
|
-
|
|
1093
|
-
|
|
1094
|
-
|
|
1095
|
-
|
|
1096
|
-
|
|
1097
|
-
|
|
1098
|
-
|
|
1099
|
-
|
|
1100
|
-
|
|
1101
|
-
|
|
1102
|
-
|
|
1103
|
-
|
|
1104
|
-
|
|
1105
|
-
|
|
1106
|
-
|
|
1107
|
-
|
|
1108
|
-
|
|
1109
|
-
|
|
1110
|
-
|
|
1111
|
-
|
|
1112
|
-
|
|
1113
|
-
|
|
1114
|
-
|
|
1115
|
-
|
|
1116
|
-
|
|
1117
|
-
|
|
1118
|
-
|
|
1119
|
-
|
|
1120
|
-
|
|
1121
|
-
|
|
1122
|
-
|
|
1123
|
-
def
|
|
1124
|
-
|
|
1125
|
-
|
|
1126
|
-
|
|
1127
|
-
|
|
1128
|
-
|
|
1129
|
-
return self
|
|
1130
|
-
|
|
1131
|
-
|
|
1132
|
-
|
|
1133
|
-
|
|
1134
|
-
|
|
1135
|
-
|
|
1136
|
-
|
|
1137
|
-
|
|
1138
|
-
|
|
1139
|
-
|
|
1140
|
-
|
|
1141
|
-
|
|
1142
|
-
|
|
1143
|
-
|
|
1144
|
-
|
|
1145
|
-
|
|
1146
|
-
|
|
1147
|
-
|
|
1148
|
-
|
|
1149
|
-
|
|
1150
|
-
|
|
1151
|
-
|
|
1152
|
-
|
|
1153
|
-
|
|
1154
|
-
|
|
1155
|
-
|
|
1156
|
-
|
|
1157
|
-
def
|
|
1158
|
-
|
|
1159
|
-
|
|
1160
|
-
self
|
|
1161
|
-
|
|
1162
|
-
|
|
1163
|
-
self.
|
|
1164
|
-
|
|
1165
|
-
|
|
1166
|
-
|
|
1167
|
-
|
|
1168
|
-
|
|
1169
|
-
|
|
1170
|
-
|
|
1171
|
-
|
|
1172
|
-
|
|
1173
|
-
|
|
1174
|
-
|
|
1175
|
-
|
|
1176
|
-
|
|
1177
|
-
|
|
1178
|
-
|
|
1179
|
-
|
|
1180
|
-
|
|
1181
|
-
|
|
1182
|
-
|
|
1183
|
-
|
|
1184
|
-
|
|
1185
|
-
|
|
1186
|
-
|
|
1187
|
-
|
|
1188
|
-
|
|
1189
|
-
|
|
1190
|
-
|
|
1191
|
-
|
|
1192
|
-
|
|
1193
|
-
|
|
1194
|
-
|
|
1195
|
-
|
|
1196
|
-
|
|
1197
|
-
|
|
1198
|
-
|
|
1199
|
-
|
|
1200
|
-
|
|
1201
|
-
|
|
1202
|
-
|
|
1203
|
-
|
|
1204
|
-
|
|
1205
|
-
|
|
1206
|
-
|
|
1207
|
-
|
|
1208
|
-
|
|
1209
|
-
|
|
1210
|
-
|
|
1211
|
-
|
|
1212
|
-
|
|
1213
|
-
|
|
1214
|
-
|
|
1215
|
-
|
|
1216
|
-
|
|
1217
|
-
|
|
1218
|
-
|
|
1219
|
-
|
|
1220
|
-
|
|
1221
|
-
|
|
1222
|
-
|
|
1223
|
-
|
|
1224
|
-
|
|
1225
|
-
|
|
1226
|
-
|
|
1227
|
-
|
|
1228
|
-
|
|
1229
|
-
|
|
1230
|
-
|
|
1231
|
-
|
|
1232
|
-
|
|
1
|
+
from abc import ABC
|
|
2
|
+
from typing import List
|
|
3
|
+
from armodel.models.M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.Identifiable import ARElement, Identifiable, Describable, PackageableElement
|
|
4
|
+
from armodel.models.M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.ArObject import ARObject
|
|
5
|
+
from armodel.models.M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import ARLiteral, ARNumerical, ARPositiveInteger, Boolean, ByteOrderEnum
|
|
6
|
+
from armodel.models.M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import Integer, PositiveInteger, RefType, ARBoolean
|
|
7
|
+
from armodel.models.M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import TimeValue, UnlimitedInteger
|
|
8
|
+
from armodel.models.M2.MSR.DataDictionary.DataDefProperties import SwDataDefProps
|
|
9
|
+
from armodel.models.M2.AUTOSARTemplates.SystemTemplate.Fibex.FibexCore.Timing import TransmissionModeDeclaration
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
class FibexElement(PackageableElement, ABC):
|
|
13
|
+
"""
|
|
14
|
+
Abstract base class for FIBEX (FIBer EXchange) elements in the
|
|
15
|
+
AUTOSAR system, providing a common foundation for all communication
|
|
16
|
+
elements defined in the FIBEX format used for exchanging communication
|
|
17
|
+
data between tools.
|
|
18
|
+
"""
|
|
19
|
+
def __init__(self, parent: ARObject, short_name: str):
|
|
20
|
+
if type(self) is FibexElement:
|
|
21
|
+
raise TypeError("FibexElement is an abstract class.")
|
|
22
|
+
|
|
23
|
+
super().__init__(parent, short_name)
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
class PduToFrameMapping(Identifiable):
|
|
27
|
+
"""
|
|
28
|
+
Defines the mapping between Protocol Data Units (PDUs) and frames,
|
|
29
|
+
specifying how PDUs are embedded within frames including byte order,
|
|
30
|
+
start position, and update indication bit position.
|
|
31
|
+
"""
|
|
32
|
+
def __init__(self, parent: ARObject, short_name: str):
|
|
33
|
+
super().__init__(parent, short_name)
|
|
34
|
+
|
|
35
|
+
self.packingByteOrder: ARLiteral = None
|
|
36
|
+
self.pduRef: RefType = None
|
|
37
|
+
self.startPosition: ARNumerical = None
|
|
38
|
+
self.updateIndicationBitPosition: ARNumerical = None
|
|
39
|
+
|
|
40
|
+
def getPackingByteOrder(self):
|
|
41
|
+
return self.packingByteOrder
|
|
42
|
+
|
|
43
|
+
def setPackingByteOrder(self, value):
|
|
44
|
+
self.packingByteOrder = value
|
|
45
|
+
return self
|
|
46
|
+
|
|
47
|
+
def getPduRef(self):
|
|
48
|
+
return self.pduRef
|
|
49
|
+
|
|
50
|
+
def setPduRef(self, value):
|
|
51
|
+
self.pduRef = value
|
|
52
|
+
return self
|
|
53
|
+
|
|
54
|
+
def getStartPosition(self):
|
|
55
|
+
return self.startPosition
|
|
56
|
+
|
|
57
|
+
def setStartPosition(self, value):
|
|
58
|
+
self.startPosition = value
|
|
59
|
+
return self
|
|
60
|
+
|
|
61
|
+
def getUpdateIndicationBitPosition(self):
|
|
62
|
+
return self.updateIndicationBitPosition
|
|
63
|
+
|
|
64
|
+
def setUpdateIndicationBitPosition(self, value):
|
|
65
|
+
self.updateIndicationBitPosition = value
|
|
66
|
+
return self
|
|
67
|
+
|
|
68
|
+
|
|
69
|
+
class Frame(FibexElement, ABC):
|
|
70
|
+
"""
|
|
71
|
+
Abstract base class for communication frames in the AUTOSAR system,
|
|
72
|
+
defining common properties for different types of communication
|
|
73
|
+
frames including frame length and PDU to frame mappings.
|
|
74
|
+
"""
|
|
75
|
+
def __init__(self, parent: ARObject, short_name: str):
|
|
76
|
+
if type(self) is Frame:
|
|
77
|
+
raise TypeError("Frame is an abstract class.")
|
|
78
|
+
|
|
79
|
+
super().__init__(parent, short_name)
|
|
80
|
+
|
|
81
|
+
self.frameLength = None
|
|
82
|
+
self.pduToFrameMappings: List[PduToFrameMapping] = []
|
|
83
|
+
|
|
84
|
+
def getFrameLength(self):
|
|
85
|
+
return self.frameLength
|
|
86
|
+
|
|
87
|
+
def setFrameLength(self, value):
|
|
88
|
+
self.frameLength = value
|
|
89
|
+
return self
|
|
90
|
+
|
|
91
|
+
def createPduToFrameMapping(self, short_name: str) -> PduToFrameMapping:
|
|
92
|
+
if not self.IsElementExists(short_name):
|
|
93
|
+
mapping = PduToFrameMapping(self, short_name)
|
|
94
|
+
self.addElement(mapping)
|
|
95
|
+
self.pduToFrameMappings.append(mapping)
|
|
96
|
+
return self.getElement(short_name, PduToFrameMapping)
|
|
97
|
+
|
|
98
|
+
def getPduToFrameMappings(self) -> List[PduToFrameMapping]:
|
|
99
|
+
return list(sorted(filter(lambda a: isinstance(a, PduToFrameMapping), self.elements), key=lambda o: o.short_name))
|
|
100
|
+
|
|
101
|
+
|
|
102
|
+
class ContainedIPduProps(ARObject):
|
|
103
|
+
"""
|
|
104
|
+
Defines properties for contained Interaction Protocol Data Units (IPDUs),
|
|
105
|
+
specifying collection semantics, header IDs, offset, timeout,
|
|
106
|
+
trigger, and update indication bit position properties.
|
|
107
|
+
"""
|
|
108
|
+
def __init__(self):
|
|
109
|
+
super().__init__()
|
|
110
|
+
|
|
111
|
+
self.collectionSemantics: ARLiteral = None
|
|
112
|
+
self.headerIdLongHeader: ARPositiveInteger = None
|
|
113
|
+
self.headerIdShortHeader: ARPositiveInteger = None
|
|
114
|
+
self.offset: ARNumerical = None
|
|
115
|
+
self.timeout: ARNumerical = None
|
|
116
|
+
self.trigger: ARLiteral = None
|
|
117
|
+
self.updateIndicationBitPosition: ARNumerical = None
|
|
118
|
+
|
|
119
|
+
def getCollectionSemantics(self):
|
|
120
|
+
return self.collectionSemantics
|
|
121
|
+
|
|
122
|
+
def setCollectionSemantics(self, value):
|
|
123
|
+
self.collectionSemantics = value
|
|
124
|
+
return self
|
|
125
|
+
|
|
126
|
+
def getHeaderIdLongHeader(self):
|
|
127
|
+
return self.headerIdLongHeader
|
|
128
|
+
|
|
129
|
+
def setHeaderIdLongHeader(self, value):
|
|
130
|
+
self.headerIdLongHeader = value
|
|
131
|
+
return self
|
|
132
|
+
|
|
133
|
+
def getHeaderIdShortHeader(self):
|
|
134
|
+
return self.headerIdShortHeader
|
|
135
|
+
|
|
136
|
+
def setHeaderIdShortHeader(self, value):
|
|
137
|
+
self.headerIdShortHeader = value
|
|
138
|
+
return self
|
|
139
|
+
|
|
140
|
+
def getOffset(self):
|
|
141
|
+
return self.offset
|
|
142
|
+
|
|
143
|
+
def setOffset(self, value):
|
|
144
|
+
self.offset = value
|
|
145
|
+
return self
|
|
146
|
+
|
|
147
|
+
def getTimeout(self):
|
|
148
|
+
return self.timeout
|
|
149
|
+
|
|
150
|
+
def setTimeout(self, value):
|
|
151
|
+
self.timeout = value
|
|
152
|
+
return self
|
|
153
|
+
|
|
154
|
+
def getTrigger(self):
|
|
155
|
+
return self.trigger
|
|
156
|
+
|
|
157
|
+
def setTrigger(self, value):
|
|
158
|
+
self.trigger = value
|
|
159
|
+
return self
|
|
160
|
+
|
|
161
|
+
def getUpdateIndicationBitPosition(self):
|
|
162
|
+
return self.updateIndicationBitPosition
|
|
163
|
+
|
|
164
|
+
def setUpdateIndicationBitPosition(self, value):
|
|
165
|
+
self.updateIndicationBitPosition = value
|
|
166
|
+
return self
|
|
167
|
+
|
|
168
|
+
|
|
169
|
+
class ISignalGroup(FibexElement):
|
|
170
|
+
"""
|
|
171
|
+
Defines a group of interaction signals in the communication system,
|
|
172
|
+
specifying relationships between individual signals and system-level
|
|
173
|
+
signal groups with transformation properties.
|
|
174
|
+
"""
|
|
175
|
+
def __init__(self, parent, short_name):
|
|
176
|
+
super().__init__(parent, short_name)
|
|
177
|
+
|
|
178
|
+
self.comBasedSignalGroupTransformationRefs: List[RefType] = []
|
|
179
|
+
self.iSignalRefs: List[RefType] = []
|
|
180
|
+
self.systemSignalGroupRef = None
|
|
181
|
+
self.transformationISignalProps = None
|
|
182
|
+
|
|
183
|
+
def getComBasedSignalGroupTransformationRefs(self):
|
|
184
|
+
return self.comBasedSignalGroupTransformationRefs
|
|
185
|
+
|
|
186
|
+
def addComBasedSignalGroupTransformationRef(self, value):
|
|
187
|
+
if value is not None:
|
|
188
|
+
self.comBasedSignalGroupTransformationRefs.append(value)
|
|
189
|
+
return self
|
|
190
|
+
|
|
191
|
+
def getISignalRefs(self):
|
|
192
|
+
return self.iSignalRefs
|
|
193
|
+
|
|
194
|
+
def addISignalRef(self, value):
|
|
195
|
+
self.iSignalRefs.append(value)
|
|
196
|
+
return self
|
|
197
|
+
|
|
198
|
+
def getSystemSignalGroupRef(self):
|
|
199
|
+
return self.systemSignalGroupRef
|
|
200
|
+
|
|
201
|
+
def setSystemSignalGroupRef(self, value):
|
|
202
|
+
self.systemSignalGroupRef = value
|
|
203
|
+
return self
|
|
204
|
+
|
|
205
|
+
def getTransformationISignalProps(self):
|
|
206
|
+
return self.transformationISignalProps
|
|
207
|
+
|
|
208
|
+
def setTransformationISignalProps(self, value):
|
|
209
|
+
self.transformationISignalProps = value
|
|
210
|
+
return self
|
|
211
|
+
|
|
212
|
+
|
|
213
|
+
class ISignalIPduGroup(FibexElement):
|
|
214
|
+
"""
|
|
215
|
+
Defines a group of Interaction Protocol Data Units (IPDUs) based on interaction signals,
|
|
216
|
+
specifying communication direction, mode, and references to contained
|
|
217
|
+
IPDU groups and individual IPDUs.
|
|
218
|
+
"""
|
|
219
|
+
def __init__(self, parent, short_name):
|
|
220
|
+
super().__init__(parent, short_name)
|
|
221
|
+
|
|
222
|
+
self.communicationDirection = None
|
|
223
|
+
self.communicationMode = None
|
|
224
|
+
self.containedISignalIPduGroupRefs = []
|
|
225
|
+
self.iSignalIPduRefs = []
|
|
226
|
+
self.nmPduRefs = []
|
|
227
|
+
|
|
228
|
+
def getCommunicationDirection(self):
|
|
229
|
+
return self.communicationDirection
|
|
230
|
+
|
|
231
|
+
def setCommunicationDirection(self, value):
|
|
232
|
+
self.communicationDirection = value
|
|
233
|
+
return self
|
|
234
|
+
|
|
235
|
+
def getCommunicationMode(self):
|
|
236
|
+
return self.communicationMode
|
|
237
|
+
|
|
238
|
+
def setCommunicationMode(self, value):
|
|
239
|
+
self.communicationMode = value
|
|
240
|
+
return self
|
|
241
|
+
|
|
242
|
+
def getContainedISignalIPduGroupRefs(self):
|
|
243
|
+
return self.containedISignalIPduGroupRefs
|
|
244
|
+
|
|
245
|
+
def addContainedISignalIPduGroupRef(self, value):
|
|
246
|
+
self.containedISignalIPduGroupRefs.append(value)
|
|
247
|
+
return self
|
|
248
|
+
|
|
249
|
+
def getISignalIPduRefs(self):
|
|
250
|
+
return self.iSignalIPduRefs
|
|
251
|
+
|
|
252
|
+
def addISignalIPduRef(self, value):
|
|
253
|
+
self.iSignalIPduRefs.append(value)
|
|
254
|
+
return self
|
|
255
|
+
|
|
256
|
+
def getNmPduRefs(self):
|
|
257
|
+
return self.nmPduRefs
|
|
258
|
+
|
|
259
|
+
def addNmPduRef(self, value):
|
|
260
|
+
self.nmPduRefs.append(value)
|
|
261
|
+
return self
|
|
262
|
+
|
|
263
|
+
|
|
264
|
+
class Pdu(FibexElement, ABC):
|
|
265
|
+
"""
|
|
266
|
+
Abstract base class for Protocol Data Units (PDUs) in the communication system,
|
|
267
|
+
defining common properties such as dynamic length support and length specifications.
|
|
268
|
+
"""
|
|
269
|
+
def __init__(self, parent: ARObject, short_name: str):
|
|
270
|
+
if type(self) is Pdu:
|
|
271
|
+
raise TypeError("Pdu is an abstract class.")
|
|
272
|
+
|
|
273
|
+
super().__init__(parent, short_name)
|
|
274
|
+
|
|
275
|
+
self.hasDynamicLength: Boolean = None
|
|
276
|
+
self.length: UnlimitedInteger = None
|
|
277
|
+
|
|
278
|
+
def getHasDynamicLength(self):
|
|
279
|
+
return self.hasDynamicLength
|
|
280
|
+
|
|
281
|
+
def setHasDynamicLength(self, value):
|
|
282
|
+
if value is not None:
|
|
283
|
+
self.hasDynamicLength = value
|
|
284
|
+
return self
|
|
285
|
+
|
|
286
|
+
def getLength(self):
|
|
287
|
+
return self.length
|
|
288
|
+
|
|
289
|
+
def setLength(self, value):
|
|
290
|
+
self.length = value
|
|
291
|
+
return self
|
|
292
|
+
|
|
293
|
+
|
|
294
|
+
class IPdu(Pdu, ABC):
|
|
295
|
+
"""
|
|
296
|
+
Abstract base class for Interaction Protocol Data Units (IPDUs),
|
|
297
|
+
extending the PDU class with contained IPDU properties for
|
|
298
|
+
interaction-based communication.
|
|
299
|
+
"""
|
|
300
|
+
def __init__(self, parent: ARObject, short_name: str):
|
|
301
|
+
if type(self) is IPdu:
|
|
302
|
+
raise TypeError("IPdu is an abstract class.")
|
|
303
|
+
|
|
304
|
+
super().__init__(parent, short_name)
|
|
305
|
+
|
|
306
|
+
self.containedIPduProps: ContainedIPduProps = None
|
|
307
|
+
|
|
308
|
+
def getContainedIPduProps(self):
|
|
309
|
+
return self.containedIPduProps
|
|
310
|
+
|
|
311
|
+
def setContainedIPduProps(self, value):
|
|
312
|
+
if value is not None:
|
|
313
|
+
self.containedIPduProps = value
|
|
314
|
+
return self
|
|
315
|
+
|
|
316
|
+
|
|
317
|
+
class SecureCommunicationProps(ARObject):
|
|
318
|
+
"""
|
|
319
|
+
Defines properties for secure communication, including authentication
|
|
320
|
+
data freshness, integrity protection, and secured area specifications
|
|
321
|
+
for protected communication channels.
|
|
322
|
+
"""
|
|
323
|
+
def __init__(self):
|
|
324
|
+
super().__init__()
|
|
325
|
+
|
|
326
|
+
self.authDataFreshnessLength: PositiveInteger = None
|
|
327
|
+
self.authDataFreshnessStartPosition: PositiveInteger = None
|
|
328
|
+
self.authInfoTxLength: PositiveInteger = None
|
|
329
|
+
self.authenticationBuildAttempts: PositiveInteger = None
|
|
330
|
+
self.authenticationRetries: PositiveInteger = None
|
|
331
|
+
self.dataId: PositiveInteger = None
|
|
332
|
+
self.freshnessValueId: PositiveInteger = None
|
|
333
|
+
self.freshnessValueLength: PositiveInteger = None
|
|
334
|
+
self.freshnessValueTxLength: PositiveInteger = None
|
|
335
|
+
self.messageLinkLength: PositiveInteger = None
|
|
336
|
+
self.messageLinkPosition: PositiveInteger = None
|
|
337
|
+
self.secondaryFreshnessValueId: PositiveInteger = None
|
|
338
|
+
self.securedAreaLength: PositiveInteger = None
|
|
339
|
+
self.securedAreaOffset: PositiveInteger = None
|
|
340
|
+
|
|
341
|
+
def getAuthDataFreshnessLength(self):
|
|
342
|
+
return self.authDataFreshnessLength
|
|
343
|
+
|
|
344
|
+
def setAuthDataFreshnessLength(self, value):
|
|
345
|
+
if value is not None:
|
|
346
|
+
self.authDataFreshnessLength = value
|
|
347
|
+
return self
|
|
348
|
+
|
|
349
|
+
def getAuthDataFreshnessStartPosition(self):
|
|
350
|
+
return self.authDataFreshnessStartPosition
|
|
351
|
+
|
|
352
|
+
def setAuthDataFreshnessStartPosition(self, value):
|
|
353
|
+
if value is not None:
|
|
354
|
+
self.authDataFreshnessStartPosition = value
|
|
355
|
+
return self
|
|
356
|
+
|
|
357
|
+
def getAuthInfoTxLength(self):
|
|
358
|
+
return self.authInfoTxLength
|
|
359
|
+
|
|
360
|
+
def setAuthInfoTxLength(self, value):
|
|
361
|
+
if value is not None:
|
|
362
|
+
self.authInfoTxLength = value
|
|
363
|
+
return self
|
|
364
|
+
|
|
365
|
+
def getAuthenticationBuildAttempts(self):
|
|
366
|
+
return self.authenticationBuildAttempts
|
|
367
|
+
|
|
368
|
+
def setAuthenticationBuildAttempts(self, value):
|
|
369
|
+
if value is not None:
|
|
370
|
+
self.authenticationBuildAttempts = value
|
|
371
|
+
return self
|
|
372
|
+
|
|
373
|
+
def getAuthenticationRetries(self):
|
|
374
|
+
return self.authenticationRetries
|
|
375
|
+
|
|
376
|
+
def setAuthenticationRetries(self, value):
|
|
377
|
+
if value is not None:
|
|
378
|
+
self.authenticationRetries = value
|
|
379
|
+
return self
|
|
380
|
+
|
|
381
|
+
def getDataId(self):
|
|
382
|
+
return self.dataId
|
|
383
|
+
|
|
384
|
+
def setDataId(self, value):
|
|
385
|
+
if value is not None:
|
|
386
|
+
self.dataId = value
|
|
387
|
+
return self
|
|
388
|
+
|
|
389
|
+
def getFreshnessValueId(self):
|
|
390
|
+
return self.freshnessValueId
|
|
391
|
+
|
|
392
|
+
def setFreshnessValueId(self, value):
|
|
393
|
+
if value is not None:
|
|
394
|
+
self.freshnessValueId = value
|
|
395
|
+
return self
|
|
396
|
+
|
|
397
|
+
def getFreshnessValueLength(self):
|
|
398
|
+
return self.freshnessValueLength
|
|
399
|
+
|
|
400
|
+
def setFreshnessValueLength(self, value):
|
|
401
|
+
if value is not None:
|
|
402
|
+
self.freshnessValueLength = value
|
|
403
|
+
return self
|
|
404
|
+
|
|
405
|
+
def getFreshnessValueTxLength(self):
|
|
406
|
+
return self.freshnessValueTxLength
|
|
407
|
+
|
|
408
|
+
def setFreshnessValueTxLength(self, value):
|
|
409
|
+
if value is not None:
|
|
410
|
+
self.freshnessValueTxLength = value
|
|
411
|
+
return self
|
|
412
|
+
|
|
413
|
+
def getMessageLinkLength(self):
|
|
414
|
+
return self.messageLinkLength
|
|
415
|
+
|
|
416
|
+
def setMessageLinkLength(self, value):
|
|
417
|
+
if value is not None:
|
|
418
|
+
self.messageLinkLength = value
|
|
419
|
+
return self
|
|
420
|
+
|
|
421
|
+
def getMessageLinkPosition(self):
|
|
422
|
+
return self.messageLinkPosition
|
|
423
|
+
|
|
424
|
+
def setMessageLinkPosition(self, value):
|
|
425
|
+
if value is not None:
|
|
426
|
+
self.messageLinkPosition = value
|
|
427
|
+
return self
|
|
428
|
+
|
|
429
|
+
def getSecondaryFreshnessValueId(self):
|
|
430
|
+
return self.secondaryFreshnessValueId
|
|
431
|
+
|
|
432
|
+
def setSecondaryFreshnessValueId(self, value):
|
|
433
|
+
if value is not None:
|
|
434
|
+
self.secondaryFreshnessValueId = value
|
|
435
|
+
return self
|
|
436
|
+
|
|
437
|
+
def getSecuredAreaLength(self):
|
|
438
|
+
return self.securedAreaLength
|
|
439
|
+
|
|
440
|
+
def setSecuredAreaLength(self, value):
|
|
441
|
+
if value is not None:
|
|
442
|
+
self.securedAreaLength = value
|
|
443
|
+
return self
|
|
444
|
+
|
|
445
|
+
def getSecuredAreaOffset(self):
|
|
446
|
+
return self.securedAreaOffset
|
|
447
|
+
|
|
448
|
+
def setSecuredAreaOffset(self, value):
|
|
449
|
+
if value is not None:
|
|
450
|
+
self.securedAreaOffset = value
|
|
451
|
+
return self
|
|
452
|
+
|
|
453
|
+
|
|
454
|
+
class SecuredIPdu(IPdu):
|
|
455
|
+
"""
|
|
456
|
+
Represents a secured Interaction Protocol Data Unit (IPDU) with
|
|
457
|
+
authentication, integrity protection, and other security properties
|
|
458
|
+
for protected communication.
|
|
459
|
+
"""
|
|
460
|
+
def __init__(self, parent: ARObject, short_name: str):
|
|
461
|
+
super().__init__(parent, short_name)
|
|
462
|
+
|
|
463
|
+
self.authenticationPropsRef: RefType = None
|
|
464
|
+
self.dynamicRuntimeLengthHandling: Boolean = None
|
|
465
|
+
self.freshnessPropsRef: RefType = None
|
|
466
|
+
self.payloadRef: RefType = None
|
|
467
|
+
self.secureCommunicationProps: SecureCommunicationProps = None
|
|
468
|
+
self.useAsCryptographicIPdu: Boolean = None
|
|
469
|
+
self.useSecuredPduHeader = None
|
|
470
|
+
|
|
471
|
+
def getAuthenticationPropsRef(self):
|
|
472
|
+
return self.authenticationPropsRef
|
|
473
|
+
|
|
474
|
+
def setAuthenticationPropsRef(self, value):
|
|
475
|
+
if value is not None:
|
|
476
|
+
self.authenticationPropsRef = value
|
|
477
|
+
return self
|
|
478
|
+
|
|
479
|
+
def getDynamicRuntimeLengthHandling(self):
|
|
480
|
+
return self.dynamicRuntimeLengthHandling
|
|
481
|
+
|
|
482
|
+
def setDynamicRuntimeLengthHandling(self, value):
|
|
483
|
+
if value is not None:
|
|
484
|
+
self.dynamicRuntimeLengthHandling = value
|
|
485
|
+
return self
|
|
486
|
+
|
|
487
|
+
def getFreshnessPropsRef(self):
|
|
488
|
+
return self.freshnessPropsRef
|
|
489
|
+
|
|
490
|
+
def setFreshnessPropsRef(self, value):
|
|
491
|
+
if value is not None:
|
|
492
|
+
self.freshnessPropsRef = value
|
|
493
|
+
return self
|
|
494
|
+
|
|
495
|
+
def getPayloadRef(self):
|
|
496
|
+
return self.payloadRef
|
|
497
|
+
|
|
498
|
+
def setPayloadRef(self, value):
|
|
499
|
+
if value is not None:
|
|
500
|
+
self.payloadRef = value
|
|
501
|
+
return self
|
|
502
|
+
|
|
503
|
+
def getSecureCommunicationProps(self):
|
|
504
|
+
return self.secureCommunicationProps
|
|
505
|
+
|
|
506
|
+
def setSecureCommunicationProps(self, value):
|
|
507
|
+
if value is not None:
|
|
508
|
+
self.secureCommunicationProps = value
|
|
509
|
+
return self
|
|
510
|
+
|
|
511
|
+
def getUseAsCryptographicIPdu(self):
|
|
512
|
+
return self.useAsCryptographicIPdu
|
|
513
|
+
|
|
514
|
+
def setUseAsCryptographicIPdu(self, value):
|
|
515
|
+
if value is not None:
|
|
516
|
+
self.useAsCryptographicIPdu = value
|
|
517
|
+
return self
|
|
518
|
+
|
|
519
|
+
def getUseSecuredPduHeader(self):
|
|
520
|
+
return self.useSecuredPduHeader
|
|
521
|
+
|
|
522
|
+
def setUseSecuredPduHeader(self, value):
|
|
523
|
+
if value is not None:
|
|
524
|
+
self.useSecuredPduHeader = value
|
|
525
|
+
return self
|
|
526
|
+
|
|
527
|
+
|
|
528
|
+
class ISignalToIPduMapping(Identifiable):
|
|
529
|
+
"""
|
|
530
|
+
Defines the mapping between interaction signals and Interaction Protocol Data Units (IPDUs),
|
|
531
|
+
specifying signal references, byte order, start position, transfer
|
|
532
|
+
properties, and update indication bit position.
|
|
533
|
+
"""
|
|
534
|
+
def __init__(self, parent, short_name):
|
|
535
|
+
super().__init__(parent, short_name)
|
|
536
|
+
|
|
537
|
+
self.iSignalRef: RefType = None
|
|
538
|
+
self.iSignalGroupRef: RefType = None
|
|
539
|
+
self.packingByteOrder: ByteOrderEnum = None
|
|
540
|
+
self.startPosition: UnlimitedInteger = None
|
|
541
|
+
self.transferProperty = None
|
|
542
|
+
self.updateIndicationBitPosition: UnlimitedInteger = None
|
|
543
|
+
|
|
544
|
+
def getISignalRef(self):
|
|
545
|
+
return self.iSignalRef
|
|
546
|
+
|
|
547
|
+
def setISignalRef(self, value):
|
|
548
|
+
self.iSignalRef = value
|
|
549
|
+
return self
|
|
550
|
+
|
|
551
|
+
def getISignalGroupRef(self):
|
|
552
|
+
return self.iSignalGroupRef
|
|
553
|
+
|
|
554
|
+
def setISignalGroupRef(self, value):
|
|
555
|
+
self.iSignalGroupRef = value
|
|
556
|
+
return self
|
|
557
|
+
|
|
558
|
+
def getPackingByteOrder(self):
|
|
559
|
+
return self.packingByteOrder
|
|
560
|
+
|
|
561
|
+
def setPackingByteOrder(self, value):
|
|
562
|
+
self.packingByteOrder = value
|
|
563
|
+
return self
|
|
564
|
+
|
|
565
|
+
def getStartPosition(self):
|
|
566
|
+
return self.startPosition
|
|
567
|
+
|
|
568
|
+
def setStartPosition(self, value):
|
|
569
|
+
self.startPosition = value
|
|
570
|
+
return self
|
|
571
|
+
|
|
572
|
+
def getTransferProperty(self):
|
|
573
|
+
return self.transferProperty
|
|
574
|
+
|
|
575
|
+
def setTransferProperty(self, value):
|
|
576
|
+
self.transferProperty = value
|
|
577
|
+
return self
|
|
578
|
+
|
|
579
|
+
def getUpdateIndicationBitPosition(self):
|
|
580
|
+
return self.updateIndicationBitPosition
|
|
581
|
+
|
|
582
|
+
def setUpdateIndicationBitPosition(self, value):
|
|
583
|
+
self.updateIndicationBitPosition = value
|
|
584
|
+
return self
|
|
585
|
+
|
|
586
|
+
|
|
587
|
+
class NmPdu(Pdu):
|
|
588
|
+
"""
|
|
589
|
+
Represents a Network Management Protocol Data Unit (PDU) used for
|
|
590
|
+
network management communication including node monitoring,
|
|
591
|
+
wake-up, and sleep state management.
|
|
592
|
+
"""
|
|
593
|
+
def __init__(self, parent: ARObject, short_name: str):
|
|
594
|
+
super().__init__(parent, short_name)
|
|
595
|
+
|
|
596
|
+
self.iSignalToIPduMappings: List[ISignalToIPduMapping] = []
|
|
597
|
+
self.nmDataInformation: Boolean = None
|
|
598
|
+
self.nmVoteInformation: Boolean = None
|
|
599
|
+
self.unusedBitPattern: Integer = None
|
|
600
|
+
|
|
601
|
+
def getISignalToIPduMappings(self):
|
|
602
|
+
return self.iSignalToIPduMappings
|
|
603
|
+
|
|
604
|
+
def createISignalToIPduMapping(self, short_name: str) -> ISignalToIPduMapping:
|
|
605
|
+
if not self.IsElementExists(short_name):
|
|
606
|
+
mapping = ISignalToIPduMapping(self, short_name)
|
|
607
|
+
self.addElement(mapping)
|
|
608
|
+
self.iSignalToIPduMappings.append(mapping)
|
|
609
|
+
return self.getElement(short_name, ISignalToIPduMapping)
|
|
610
|
+
|
|
611
|
+
def getNmDataInformation(self):
|
|
612
|
+
return self.nmDataInformation
|
|
613
|
+
|
|
614
|
+
def setNmDataInformation(self, value):
|
|
615
|
+
if value is not None:
|
|
616
|
+
self.nmDataInformation = value
|
|
617
|
+
return self
|
|
618
|
+
|
|
619
|
+
def getNmVoteInformation(self):
|
|
620
|
+
return self.nmVoteInformation
|
|
621
|
+
|
|
622
|
+
def setNmVoteInformation(self, value):
|
|
623
|
+
if value is not None:
|
|
624
|
+
self.nmVoteInformation = value
|
|
625
|
+
return self
|
|
626
|
+
|
|
627
|
+
def getUnusedBitPattern(self):
|
|
628
|
+
return self.unusedBitPattern
|
|
629
|
+
|
|
630
|
+
def setUnusedBitPattern(self, value):
|
|
631
|
+
if value is not None:
|
|
632
|
+
self.unusedBitPattern = value
|
|
633
|
+
return self
|
|
634
|
+
|
|
635
|
+
|
|
636
|
+
class NPdu(IPdu):
|
|
637
|
+
"""
|
|
638
|
+
Represents a Network Protocol Data Unit (PDU) used for network-level
|
|
639
|
+
communication in the AUTOSAR communication system.
|
|
640
|
+
"""
|
|
641
|
+
def __init__(self, parent: ARObject, short_name: str):
|
|
642
|
+
super().__init__(parent, short_name)
|
|
643
|
+
|
|
644
|
+
|
|
645
|
+
class DcmIPdu(IPdu):
|
|
646
|
+
"""
|
|
647
|
+
Represents a Diagnostic Communication Management Interaction Protocol Data Unit (IPDU)
|
|
648
|
+
used for diagnostic communication in the AUTOSAR system.
|
|
649
|
+
"""
|
|
650
|
+
def __init__(self, parent: ARObject, short_name: str):
|
|
651
|
+
super().__init__(parent, short_name)
|
|
652
|
+
|
|
653
|
+
self.diagPduType: ARLiteral = None
|
|
654
|
+
|
|
655
|
+
def getDiagPduType(self):
|
|
656
|
+
return self.diagPduType
|
|
657
|
+
|
|
658
|
+
def setDiagPduType(self, value):
|
|
659
|
+
self.diagPduType = value
|
|
660
|
+
return self
|
|
661
|
+
|
|
662
|
+
|
|
663
|
+
class IPduTiming(Describable):
|
|
664
|
+
"""
|
|
665
|
+
Defines timing properties for Interaction Protocol Data Units (IPDUs),
|
|
666
|
+
specifying minimum delay and transmission mode declaration for
|
|
667
|
+
timed communication.
|
|
668
|
+
"""
|
|
669
|
+
def __init__(self):
|
|
670
|
+
super().__init__()
|
|
671
|
+
|
|
672
|
+
self.minimumDelay: TimeValue = None
|
|
673
|
+
self.transmissionModeDeclaration: TransmissionModeDeclaration = None
|
|
674
|
+
|
|
675
|
+
def getMinimumDelay(self):
|
|
676
|
+
return self.minimumDelay
|
|
677
|
+
|
|
678
|
+
def setMinimumDelay(self, value):
|
|
679
|
+
self.minimumDelay = value
|
|
680
|
+
return self
|
|
681
|
+
|
|
682
|
+
def getTransmissionModeDeclaration(self):
|
|
683
|
+
return self.transmissionModeDeclaration
|
|
684
|
+
|
|
685
|
+
def setTransmissionModeDeclaration(self, value):
|
|
686
|
+
self.transmissionModeDeclaration = value
|
|
687
|
+
return self
|
|
688
|
+
|
|
689
|
+
|
|
690
|
+
class ISignalIPdu(IPdu):
|
|
691
|
+
"""
|
|
692
|
+
Represents an Interaction Protocol Data Unit (IPDU) based on interaction signals,
|
|
693
|
+
defining timing specifications, signal-to-PDU mappings, and unused
|
|
694
|
+
bit patterns for signal-based communication.
|
|
695
|
+
"""
|
|
696
|
+
def __init__(self, parent, short_name):
|
|
697
|
+
super().__init__(parent, short_name)
|
|
698
|
+
|
|
699
|
+
self.iPduTimingSpecification: IPduTiming = None
|
|
700
|
+
self.iSignalToPduMappings: List[ISignalToIPduMapping] = []
|
|
701
|
+
self.unusedBitPattern: Integer = None
|
|
702
|
+
|
|
703
|
+
def getIPduTimingSpecification(self):
|
|
704
|
+
return self.iPduTimingSpecification
|
|
705
|
+
|
|
706
|
+
def setIPduTimingSpecification(self, value):
|
|
707
|
+
self.iPduTimingSpecification = value
|
|
708
|
+
return self
|
|
709
|
+
|
|
710
|
+
def getISignalToPduMappings(self):
|
|
711
|
+
return self.iSignalToPduMappings
|
|
712
|
+
|
|
713
|
+
def createISignalToPduMappings(self, short_name: str) -> ISignalToIPduMapping:
|
|
714
|
+
if not self.IsElementExists(short_name):
|
|
715
|
+
mapping = ISignalToIPduMapping(self, short_name)
|
|
716
|
+
self.addElement(mapping)
|
|
717
|
+
self.iSignalToPduMappings.append(mapping)
|
|
718
|
+
return self.getElement(short_name, ISignalToIPduMapping)
|
|
719
|
+
|
|
720
|
+
def getUnusedBitPattern(self):
|
|
721
|
+
return self.unusedBitPattern
|
|
722
|
+
|
|
723
|
+
def setUnusedBitPattern(self, value):
|
|
724
|
+
self.unusedBitPattern = value
|
|
725
|
+
return self
|
|
726
|
+
|
|
727
|
+
|
|
728
|
+
class ISignal(FibexElement):
|
|
729
|
+
"""
|
|
730
|
+
Represents an interaction signal in the communication system,
|
|
731
|
+
defining data transformation, signal type, initialization values,
|
|
732
|
+
length, and system signal references for signal-based communication.
|
|
733
|
+
"""
|
|
734
|
+
def __init__(self, parent: ARObject, short_name: str):
|
|
735
|
+
super().__init__(parent, short_name)
|
|
736
|
+
|
|
737
|
+
self.dataTransformationRef = None
|
|
738
|
+
self.dataTypePolicy = None
|
|
739
|
+
self.iSignalProps = None
|
|
740
|
+
self.iSignalType = None
|
|
741
|
+
self.initValue = None
|
|
742
|
+
self.length = None
|
|
743
|
+
self.networkRepresentationProps = None
|
|
744
|
+
self.systemSignalRef: RefType = None
|
|
745
|
+
self.timeoutSubstitutionValue = None
|
|
746
|
+
self.transformationISignalProps = []
|
|
747
|
+
|
|
748
|
+
def getDataTransformationRef(self):
|
|
749
|
+
return self.dataTransformationRef
|
|
750
|
+
|
|
751
|
+
def setDataTransformationRef(self, value):
|
|
752
|
+
self.dataTransformationRef = value
|
|
753
|
+
return self
|
|
754
|
+
|
|
755
|
+
def getDataTypePolicy(self):
|
|
756
|
+
return self.dataTypePolicy
|
|
757
|
+
|
|
758
|
+
def setDataTypePolicy(self, value):
|
|
759
|
+
self.dataTypePolicy = value
|
|
760
|
+
return self
|
|
761
|
+
|
|
762
|
+
def getISignalProps(self):
|
|
763
|
+
return self.iSignalProps
|
|
764
|
+
|
|
765
|
+
def setISignalProps(self, value):
|
|
766
|
+
self.iSignalProps = value
|
|
767
|
+
return self
|
|
768
|
+
|
|
769
|
+
def getISignalType(self):
|
|
770
|
+
return self.iSignalType
|
|
771
|
+
|
|
772
|
+
def setISignalType(self, value):
|
|
773
|
+
self.iSignalType = value
|
|
774
|
+
return self
|
|
775
|
+
|
|
776
|
+
def getInitValue(self):
|
|
777
|
+
return self.initValue
|
|
778
|
+
|
|
779
|
+
def setInitValue(self, value):
|
|
780
|
+
self.initValue = value
|
|
781
|
+
return self
|
|
782
|
+
|
|
783
|
+
def getLength(self):
|
|
784
|
+
return self.length
|
|
785
|
+
|
|
786
|
+
def setLength(self, value):
|
|
787
|
+
self.length = value
|
|
788
|
+
return self
|
|
789
|
+
|
|
790
|
+
def getNetworkRepresentationProps(self):
|
|
791
|
+
return self.networkRepresentationProps
|
|
792
|
+
|
|
793
|
+
def setNetworkRepresentationProps(self, value):
|
|
794
|
+
self.networkRepresentationProps = value
|
|
795
|
+
return self
|
|
796
|
+
|
|
797
|
+
def getSystemSignalRef(self):
|
|
798
|
+
return self.systemSignalRef
|
|
799
|
+
|
|
800
|
+
def setSystemSignalRef(self, value):
|
|
801
|
+
self.systemSignalRef = value
|
|
802
|
+
return self
|
|
803
|
+
|
|
804
|
+
def getTimeoutSubstitutionValue(self):
|
|
805
|
+
return self.timeoutSubstitutionValue
|
|
806
|
+
|
|
807
|
+
def setTimeoutSubstitutionValue(self, value):
|
|
808
|
+
self.timeoutSubstitutionValue = value
|
|
809
|
+
return self
|
|
810
|
+
|
|
811
|
+
def getTransformationISignalProps(self):
|
|
812
|
+
return self.transformationISignalProps
|
|
813
|
+
|
|
814
|
+
def addTransformationISignalProps(self, value):
|
|
815
|
+
self.transformationISignalProps.append(value)
|
|
816
|
+
return self
|
|
817
|
+
|
|
818
|
+
|
|
819
|
+
class PduTriggering(Identifiable):
|
|
820
|
+
"""
|
|
821
|
+
Defines the triggering mechanism for Protocol Data Units (PDUs),
|
|
822
|
+
specifying PDU references, port references, and trigger conditions
|
|
823
|
+
for PDU transmission and reception.
|
|
824
|
+
"""
|
|
825
|
+
def __init__(self, parent, short_name):
|
|
826
|
+
super().__init__(parent, short_name)
|
|
827
|
+
|
|
828
|
+
self.iPduRef: RefType = None
|
|
829
|
+
self.iPduPortRefs: List[RefType] = []
|
|
830
|
+
self.iSignalTriggeringRefs: List[RefType] = []
|
|
831
|
+
self.secOcCryptoMappingRef: RefType = None
|
|
832
|
+
self.triggerIPduSendConditions = [] # type: List
|
|
833
|
+
|
|
834
|
+
def getIPduRef(self):
|
|
835
|
+
return self.iPduRef
|
|
836
|
+
|
|
837
|
+
def setIPduRef(self, value):
|
|
838
|
+
self.iPduRef = value
|
|
839
|
+
return self
|
|
840
|
+
|
|
841
|
+
def getIPduPortRefs(self):
|
|
842
|
+
return self.iPduPortRefs
|
|
843
|
+
|
|
844
|
+
def addIPduPortRef(self, value):
|
|
845
|
+
self.iPduPortRefs.append(value)
|
|
846
|
+
return self
|
|
847
|
+
|
|
848
|
+
def getISignalTriggeringRefs(self):
|
|
849
|
+
# return sorted(self.iSignalTriggeringRefs, key = lambda i: i.getShortValue())
|
|
850
|
+
return self.iSignalTriggeringRefs
|
|
851
|
+
|
|
852
|
+
def addISignalTriggeringRef(self, value):
|
|
853
|
+
self.iSignalTriggeringRefs.append(value)
|
|
854
|
+
return self
|
|
855
|
+
|
|
856
|
+
def getSecOcCryptoMappingRef(self):
|
|
857
|
+
return self.secOcCryptoMappingRef
|
|
858
|
+
|
|
859
|
+
def setSecOcCryptoMappingRef(self, value):
|
|
860
|
+
self.secOcCryptoMappingRef = value
|
|
861
|
+
return self
|
|
862
|
+
|
|
863
|
+
def getTriggerIPduSendConditions(self):
|
|
864
|
+
return self.triggerIPduSendConditions
|
|
865
|
+
|
|
866
|
+
def addTriggerIPduSendCondition(self, value):
|
|
867
|
+
self.triggerIPduSendConditions.append(value)
|
|
868
|
+
return self
|
|
869
|
+
|
|
870
|
+
|
|
871
|
+
class FrameTriggering(Identifiable, ABC):
|
|
872
|
+
"""
|
|
873
|
+
Abstract base class for frame triggering mechanisms, defining
|
|
874
|
+
common properties for triggering frame transmission and reception
|
|
875
|
+
including frame references and port references.
|
|
876
|
+
"""
|
|
877
|
+
def __init__(self, parent, short_name):
|
|
878
|
+
if type(self) is FrameTriggering:
|
|
879
|
+
raise TypeError("FrameTriggering is an abstract class.")
|
|
880
|
+
|
|
881
|
+
super().__init__(parent, short_name)
|
|
882
|
+
|
|
883
|
+
self.frameRef: RefType = None
|
|
884
|
+
self.framePortRefs: List[RefType] = []
|
|
885
|
+
self.pduTriggeringRefs: List[RefType] = []
|
|
886
|
+
|
|
887
|
+
def getFrameRef(self) -> RefType:
|
|
888
|
+
return self.frameRef
|
|
889
|
+
|
|
890
|
+
def setFrameRef(self, value: RefType):
|
|
891
|
+
self.frameRef = value
|
|
892
|
+
return self
|
|
893
|
+
|
|
894
|
+
def getFramePortRefs(self) -> List[RefType]:
|
|
895
|
+
return self.framePortRefs
|
|
896
|
+
|
|
897
|
+
def addFramePortRef(self, value: RefType):
|
|
898
|
+
self.framePortRefs.append(value)
|
|
899
|
+
return self
|
|
900
|
+
|
|
901
|
+
def getPduTriggeringRefs(self) -> RefType:
|
|
902
|
+
return self.pduTriggeringRefs
|
|
903
|
+
|
|
904
|
+
def addPduTriggeringRef(self, value: RefType):
|
|
905
|
+
self.pduTriggeringRefs.append(value)
|
|
906
|
+
return self
|
|
907
|
+
|
|
908
|
+
|
|
909
|
+
class SystemSignal(ARElement):
|
|
910
|
+
"""
|
|
911
|
+
Represents a system signal in the AUTOSAR system, defining
|
|
912
|
+
dynamic length properties and physical properties for
|
|
913
|
+
system-level signal communication.
|
|
914
|
+
"""
|
|
915
|
+
def __init__(self, parent, short_name):
|
|
916
|
+
super().__init__(parent, short_name)
|
|
917
|
+
|
|
918
|
+
self.dynamicLength: ARBoolean = None
|
|
919
|
+
self.physicalProps: SwDataDefProps = None
|
|
920
|
+
|
|
921
|
+
def getDynamicLength(self):
|
|
922
|
+
return self.dynamicLength
|
|
923
|
+
|
|
924
|
+
def setDynamicLength(self, value):
|
|
925
|
+
self.dynamicLength = value
|
|
926
|
+
return self
|
|
927
|
+
|
|
928
|
+
def getPhysicalProps(self):
|
|
929
|
+
return self.physicalProps
|
|
930
|
+
|
|
931
|
+
def setPhysicalProps(self, value):
|
|
932
|
+
self.physicalProps = value
|
|
933
|
+
return self
|
|
934
|
+
|
|
935
|
+
|
|
936
|
+
class SystemSignalGroup(ARElement):
|
|
937
|
+
"""
|
|
938
|
+
Represents a group of system signals, defining relationships
|
|
939
|
+
between individual system signals and transforming signal references
|
|
940
|
+
for grouped signal communication.
|
|
941
|
+
"""
|
|
942
|
+
def __init__(self, parent, short_name):
|
|
943
|
+
super().__init__(parent, short_name)
|
|
944
|
+
|
|
945
|
+
self.systemSignalRefs: List[RefType] = []
|
|
946
|
+
self.transformingSystemSignalRef: RefType = None
|
|
947
|
+
|
|
948
|
+
def getSystemSignalRefs(self):
|
|
949
|
+
return self.systemSignalRefs
|
|
950
|
+
|
|
951
|
+
def addSystemSignalRefs(self, value: RefType):
|
|
952
|
+
self.systemSignalRefs.append(value)
|
|
953
|
+
return self
|
|
954
|
+
|
|
955
|
+
def getTransformingSystemSignalRef(self):
|
|
956
|
+
return self.transformingSystemSignalRef
|
|
957
|
+
|
|
958
|
+
def setTransformingSystemSignalRef(self, value):
|
|
959
|
+
self.transformingSystemSignalRef = value
|
|
960
|
+
return self
|
|
961
|
+
|
|
962
|
+
|
|
963
|
+
class ISignalTriggering(Identifiable):
|
|
964
|
+
"""
|
|
965
|
+
Defines triggering properties for interaction signals, specifying
|
|
966
|
+
signal references, group references, and port references for
|
|
967
|
+
signal-based communication triggering.
|
|
968
|
+
"""
|
|
969
|
+
def __init__(self, parent, short_name):
|
|
970
|
+
super().__init__(parent, short_name)
|
|
971
|
+
|
|
972
|
+
self.iSignalRef: RefType = None
|
|
973
|
+
self.iSignalGroupRef: RefType = None
|
|
974
|
+
self.iSignalPortRefs: List[RefType] = []
|
|
975
|
+
|
|
976
|
+
def getISignalRef(self):
|
|
977
|
+
return self.iSignalRef
|
|
978
|
+
|
|
979
|
+
def setISignalRef(self, value):
|
|
980
|
+
self.iSignalRef = value
|
|
981
|
+
return self
|
|
982
|
+
|
|
983
|
+
def getISignalGroupRef(self):
|
|
984
|
+
return self.iSignalGroupRef
|
|
985
|
+
|
|
986
|
+
def setISignalGroupRef(self, value):
|
|
987
|
+
self.iSignalGroupRef = value
|
|
988
|
+
return self
|
|
989
|
+
|
|
990
|
+
def getISignalPortRefs(self):
|
|
991
|
+
return self.iSignalPortRefs
|
|
992
|
+
|
|
993
|
+
def addISignalPortRef(self, value):
|
|
994
|
+
self.iSignalPortRefs.append(value)
|
|
995
|
+
return self
|
|
996
|
+
|
|
997
|
+
|
|
998
|
+
class SegmentPosition(ARObject):
|
|
999
|
+
"""
|
|
1000
|
+
Defines the position of a segment within a communication element,
|
|
1001
|
+
specifying byte order, length, and position properties for
|
|
1002
|
+
segmented communication.
|
|
1003
|
+
"""
|
|
1004
|
+
def __init__(self):
|
|
1005
|
+
super().__init__()
|
|
1006
|
+
|
|
1007
|
+
self.segmentByteOrder: ByteOrderEnum = None
|
|
1008
|
+
self.segmentLength: Integer = None
|
|
1009
|
+
self.segmentPosition: Integer = None
|
|
1010
|
+
|
|
1011
|
+
def getSegmentByteOrder(self):
|
|
1012
|
+
return self.segmentByteOrder
|
|
1013
|
+
|
|
1014
|
+
def setSegmentByteOrder(self, value):
|
|
1015
|
+
if value is not None:
|
|
1016
|
+
self.segmentByteOrder = value
|
|
1017
|
+
return self
|
|
1018
|
+
|
|
1019
|
+
def getSegmentLength(self):
|
|
1020
|
+
return self.segmentLength
|
|
1021
|
+
|
|
1022
|
+
def setSegmentLength(self, value):
|
|
1023
|
+
if value is not None:
|
|
1024
|
+
self.segmentLength = value
|
|
1025
|
+
return self
|
|
1026
|
+
|
|
1027
|
+
def getSegmentPosition(self):
|
|
1028
|
+
return self.segmentPosition
|
|
1029
|
+
|
|
1030
|
+
def setSegmentPosition(self, value):
|
|
1031
|
+
if value is not None:
|
|
1032
|
+
self.segmentPosition = value
|
|
1033
|
+
return self
|
|
1034
|
+
|
|
1035
|
+
|
|
1036
|
+
class MultiplexedPart(ARObject, ABC):
|
|
1037
|
+
"""
|
|
1038
|
+
Abstract base class for multiplexed communication parts, defining
|
|
1039
|
+
common properties for dynamic and static multiplexed communication
|
|
1040
|
+
segments including segment positions.
|
|
1041
|
+
"""
|
|
1042
|
+
def __init__(self):
|
|
1043
|
+
if type(self) is MultiplexedPart:
|
|
1044
|
+
raise TypeError("MultiplexedPart is an abstract class.")
|
|
1045
|
+
|
|
1046
|
+
super().__init__()
|
|
1047
|
+
|
|
1048
|
+
self.segmentPositions = [] # type: List[SegmentPosition]
|
|
1049
|
+
|
|
1050
|
+
def getSegmentPositions(self):
|
|
1051
|
+
return self.segmentPositions
|
|
1052
|
+
|
|
1053
|
+
def addSegmentPosition(self, value):
|
|
1054
|
+
if value is not None:
|
|
1055
|
+
self.segmentPositions.append(value)
|
|
1056
|
+
return self
|
|
1057
|
+
|
|
1058
|
+
|
|
1059
|
+
class StaticPart(MultiplexedPart):
|
|
1060
|
+
"""
|
|
1061
|
+
Defines a static part of multiplexed communication, specifying
|
|
1062
|
+
Interaction Protocol Data Unit (IPDU) references for fixed
|
|
1063
|
+
segments in multiplexed communication.
|
|
1064
|
+
"""
|
|
1065
|
+
def __init__(self):
|
|
1066
|
+
super().__init__()
|
|
1067
|
+
|
|
1068
|
+
self.iPduRef = None # type: RefType
|
|
1069
|
+
|
|
1070
|
+
def getIPduRef(self):
|
|
1071
|
+
return self.iPduRef
|
|
1072
|
+
|
|
1073
|
+
def setIPduRef(self, value):
|
|
1074
|
+
if value is not None:
|
|
1075
|
+
self.iPduRef = value
|
|
1076
|
+
return self
|
|
1077
|
+
|
|
1078
|
+
|
|
1079
|
+
class DynamicPartAlternative(ARObject):
|
|
1080
|
+
"""
|
|
1081
|
+
Defines an alternative for dynamic parts in multiplexed communication,
|
|
1082
|
+
specifying selector field codes, initial dynamic part properties,
|
|
1083
|
+
and Interaction Protocol Data Unit (IPDU) references.
|
|
1084
|
+
"""
|
|
1085
|
+
def __init__(self):
|
|
1086
|
+
super().__init__()
|
|
1087
|
+
|
|
1088
|
+
self.initialDynamicPart = None # type: Boolean
|
|
1089
|
+
self.iPduRef = None # type: RefType
|
|
1090
|
+
self.selectorFieldCode = None # type: Integer
|
|
1091
|
+
|
|
1092
|
+
def getInitialDynamicPart(self):
|
|
1093
|
+
return self.initialDynamicPart
|
|
1094
|
+
|
|
1095
|
+
def setInitialDynamicPart(self, value):
|
|
1096
|
+
if value is not None:
|
|
1097
|
+
self.initialDynamicPart = value
|
|
1098
|
+
return self
|
|
1099
|
+
|
|
1100
|
+
def getIPduRef(self):
|
|
1101
|
+
return self.iPduRef
|
|
1102
|
+
|
|
1103
|
+
def setIPduRef(self, value):
|
|
1104
|
+
if value is not None:
|
|
1105
|
+
self.iPduRef = value
|
|
1106
|
+
return self
|
|
1107
|
+
|
|
1108
|
+
def getSelectorFieldCode(self):
|
|
1109
|
+
return self.selectorFieldCode
|
|
1110
|
+
|
|
1111
|
+
def setSelectorFieldCode(self, value):
|
|
1112
|
+
if value is not None:
|
|
1113
|
+
self.selectorFieldCode = value
|
|
1114
|
+
return self
|
|
1115
|
+
|
|
1116
|
+
|
|
1117
|
+
class DynamicPart(MultiplexedPart):
|
|
1118
|
+
"""
|
|
1119
|
+
Defines a dynamic part of multiplexed communication, specifying
|
|
1120
|
+
alternatives for variable segments in multiplexed communication
|
|
1121
|
+
based on selector field values.
|
|
1122
|
+
"""
|
|
1123
|
+
def __init__(self):
|
|
1124
|
+
super().__init__()
|
|
1125
|
+
|
|
1126
|
+
self.dynamicPartAlternatives = [] # type: List[DynamicPartAlternative]
|
|
1127
|
+
|
|
1128
|
+
def getDynamicPartAlternatives(self):
|
|
1129
|
+
return self.dynamicPartAlternatives
|
|
1130
|
+
|
|
1131
|
+
def addDynamicPartAlternative(self, value):
|
|
1132
|
+
if value is not None:
|
|
1133
|
+
self.dynamicPartAlternatives.append(value)
|
|
1134
|
+
return self
|
|
1135
|
+
|
|
1136
|
+
|
|
1137
|
+
class MultiplexedIPdu(IPdu):
|
|
1138
|
+
"""
|
|
1139
|
+
Represents a multiplexed Interaction Protocol Data Unit (IPDU)
|
|
1140
|
+
with dynamic and static parts, defining selector field properties
|
|
1141
|
+
and trigger modes for multiplexed communication.
|
|
1142
|
+
"""
|
|
1143
|
+
def __init__(self, parent, short_name):
|
|
1144
|
+
super().__init__(parent, short_name)
|
|
1145
|
+
|
|
1146
|
+
self.dynamicPart = None # type: DynamicPart
|
|
1147
|
+
self.selectorFieldByteOrder = None # type: ByteOrderEnum
|
|
1148
|
+
self.selectorFieldLength = None # type: Integer
|
|
1149
|
+
self.selectorFieldStartPosition = None # type: Integer
|
|
1150
|
+
self.staticPart = None # type: StaticPart
|
|
1151
|
+
self.triggerMode = None # type: TriggerMode
|
|
1152
|
+
self.unusedBitPattern = None # type: Integer
|
|
1153
|
+
|
|
1154
|
+
def getDynamicPart(self):
|
|
1155
|
+
return self.dynamicPart
|
|
1156
|
+
|
|
1157
|
+
def setDynamicPart(self, value):
|
|
1158
|
+
if value is not None:
|
|
1159
|
+
self.dynamicPart = value
|
|
1160
|
+
return self
|
|
1161
|
+
|
|
1162
|
+
def getSelectorFieldByteOrder(self):
|
|
1163
|
+
return self.selectorFieldByteOrder
|
|
1164
|
+
|
|
1165
|
+
def setSelectorFieldByteOrder(self, value):
|
|
1166
|
+
if value is not None:
|
|
1167
|
+
self.selectorFieldByteOrder = value
|
|
1168
|
+
return self
|
|
1169
|
+
|
|
1170
|
+
def getSelectorFieldLength(self):
|
|
1171
|
+
return self.selectorFieldLength
|
|
1172
|
+
|
|
1173
|
+
def setSelectorFieldLength(self, value):
|
|
1174
|
+
if value is not None:
|
|
1175
|
+
self.selectorFieldLength = value
|
|
1176
|
+
return self
|
|
1177
|
+
|
|
1178
|
+
def getSelectorFieldStartPosition(self):
|
|
1179
|
+
return self.selectorFieldStartPosition
|
|
1180
|
+
|
|
1181
|
+
def setSelectorFieldStartPosition(self, value):
|
|
1182
|
+
if value is not None:
|
|
1183
|
+
self.selectorFieldStartPosition = value
|
|
1184
|
+
return self
|
|
1185
|
+
|
|
1186
|
+
def getStaticPart(self):
|
|
1187
|
+
return self.staticPart
|
|
1188
|
+
|
|
1189
|
+
def setStaticPart(self, value):
|
|
1190
|
+
if value is not None:
|
|
1191
|
+
self.staticPart = value
|
|
1192
|
+
return self
|
|
1193
|
+
|
|
1194
|
+
def getTriggerMode(self):
|
|
1195
|
+
return self.triggerMode
|
|
1196
|
+
|
|
1197
|
+
def setTriggerMode(self, value):
|
|
1198
|
+
if value is not None:
|
|
1199
|
+
self.triggerMode = value
|
|
1200
|
+
return self
|
|
1201
|
+
|
|
1202
|
+
def getUnusedBitPattern(self):
|
|
1203
|
+
return self.unusedBitPattern
|
|
1204
|
+
|
|
1205
|
+
def setUnusedBitPattern(self, value):
|
|
1206
|
+
if value is not None:
|
|
1207
|
+
self.unusedBitPattern = value
|
|
1208
|
+
return self
|
|
1209
|
+
|
|
1210
|
+
|
|
1211
|
+
class GeneralPurposePdu(Pdu):
|
|
1212
|
+
"""
|
|
1213
|
+
Represents a general-purpose Protocol Data Unit (PDU) for flexible
|
|
1214
|
+
communication patterns that don't fit into specific PDU categories.
|
|
1215
|
+
"""
|
|
1216
|
+
def __init__(self, parent: ARObject, short_name: str):
|
|
1217
|
+
super().__init__(parent, short_name)
|
|
1218
|
+
|
|
1219
|
+
|
|
1220
|
+
class GeneralPurposeIPdu(IPdu):
|
|
1221
|
+
"""
|
|
1222
|
+
Represents a general-purpose Interaction Protocol Data Unit (IPDU) for flexible
|
|
1223
|
+
interaction-based communication patterns that don't fit into specific IPDU categories.
|
|
1224
|
+
"""
|
|
1225
|
+
def __init__(self, parent: ARObject, short_name: str):
|
|
1226
|
+
super().__init__(parent, short_name)
|
|
1227
|
+
|
|
1228
|
+
|
|
1229
|
+
class SecureCommunicationPropsSet(FibexElement):
|
|
1230
|
+
"""
|
|
1231
|
+
Represents a set of secure communication properties that can be grouped
|
|
1232
|
+
together to define common security configurations for communication channels.
|
|
1233
|
+
"""
|
|
1234
|
+
def __init__(self, parent: ARObject, short_name: str):
|
|
1235
|
+
super().__init__(parent, short_name)
|
|
1236
|
+
|
|
1237
|
+
self.secureComProps: List[SecureCommunicationProps] = []
|
|
1238
|
+
|
|
1239
|
+
|
|
1240
|
+
class UserDefinedPdu(Pdu):
|
|
1241
|
+
"""
|
|
1242
|
+
Represents a user-defined Protocol Data Unit (PDU) that allows for custom
|
|
1243
|
+
communication patterns defined by the user rather than following standard PDU types.
|
|
1244
|
+
"""
|
|
1245
|
+
def __init__(self, parent: ARObject, short_name: str):
|
|
1246
|
+
super().__init__(parent, short_name)
|
|
1247
|
+
|
|
1248
|
+
|
|
1249
|
+
class UserDefinedIPdu(IPdu):
|
|
1250
|
+
"""
|
|
1251
|
+
Represents a user-defined Interaction Protocol Data Unit (IPDU) that allows for custom
|
|
1252
|
+
interaction-based communication patterns defined by the user rather than following standard IPDU types.
|
|
1253
|
+
"""
|
|
1254
|
+
def __init__(self, parent: ARObject, short_name: str):
|
|
1255
|
+
super().__init__(parent, short_name)
|
|
1256
|
+
|
|
1257
|
+
|
|
1258
|
+
class SecureCommunicationAuthenticationProps(Identifiable):
|
|
1259
|
+
"""
|
|
1260
|
+
Defines authentication properties for secure communication,
|
|
1261
|
+
including authentication build attempts, retries, and other
|
|
1262
|
+
authentication-related security parameters.
|
|
1263
|
+
"""
|
|
1264
|
+
def __init__(self, parent: ARObject, short_name: str):
|
|
1265
|
+
super().__init__(parent, short_name)
|
|
1266
|
+
|
|
1267
|
+
self.authenticationBuildAttempts: PositiveInteger = None
|
|
1268
|
+
self.authenticationRetries: PositiveInteger = None
|
|
1269
|
+
self.dataId: PositiveInteger = None
|
|
1270
|
+
self.securedComAuthenticationType: ARLiteral = None
|
|
1271
|
+
|
|
1272
|
+
def getAuthenticationBuildAttempts(self):
|
|
1273
|
+
return self.authenticationBuildAttempts
|
|
1274
|
+
|
|
1275
|
+
def setAuthenticationBuildAttempts(self, value):
|
|
1276
|
+
if value is not None:
|
|
1277
|
+
self.authenticationBuildAttempts = value
|
|
1278
|
+
return self
|
|
1279
|
+
|
|
1280
|
+
def getAuthenticationRetries(self):
|
|
1281
|
+
return self.authenticationRetries
|
|
1282
|
+
|
|
1283
|
+
def setAuthenticationRetries(self, value):
|
|
1284
|
+
if value is not None:
|
|
1285
|
+
self.authenticationRetries = value
|
|
1286
|
+
return self
|
|
1287
|
+
|
|
1288
|
+
def getDataId(self):
|
|
1289
|
+
return self.dataId
|
|
1290
|
+
|
|
1291
|
+
def setDataId(self, value):
|
|
1292
|
+
if value is not None:
|
|
1293
|
+
self.dataId = value
|
|
1294
|
+
return self
|
|
1295
|
+
|
|
1296
|
+
def getSecuredComAuthenticationType(self):
|
|
1297
|
+
return self.securedComAuthenticationType
|
|
1298
|
+
|
|
1299
|
+
def setSecuredComAuthenticationType(self, value):
|
|
1300
|
+
if value is not None:
|
|
1301
|
+
self.securedComAuthenticationType = value
|
|
1302
|
+
return self
|
|
1303
|
+
|
|
1304
|
+
|
|
1305
|
+
class SecureCommunicationFreshnessProps(Identifiable):
|
|
1306
|
+
"""
|
|
1307
|
+
Defines freshness properties for secure communication,
|
|
1308
|
+
including freshness value IDs, lengths, and other
|
|
1309
|
+
freshness-related security parameters to prevent replay attacks.
|
|
1310
|
+
"""
|
|
1311
|
+
def __init__(self, parent: ARObject, short_name: str):
|
|
1312
|
+
super().__init__(parent, short_name)
|
|
1313
|
+
|
|
1314
|
+
self.freshnessValueId: PositiveInteger = None
|
|
1315
|
+
self.freshnessValueLength: PositiveInteger = None
|
|
1316
|
+
self.freshnessValueTxLength: PositiveInteger = None
|
|
1317
|
+
self.messageLinkLength: PositiveInteger = None
|
|
1318
|
+
self.messageLinkPosition: PositiveInteger = None
|
|
1319
|
+
self.secondaryFreshnessValueId: PositiveInteger = None
|
|
1320
|
+
self.securedComFreshnessType: ARLiteral = None
|
|
1321
|
+
|
|
1322
|
+
def getFreshnessValueId(self):
|
|
1323
|
+
return self.freshnessValueId
|
|
1324
|
+
|
|
1325
|
+
def setFreshnessValueId(self, value):
|
|
1326
|
+
if value is not None:
|
|
1327
|
+
self.freshnessValueId = value
|
|
1328
|
+
return self
|
|
1329
|
+
|
|
1330
|
+
def getFreshnessValueLength(self):
|
|
1331
|
+
return self.freshnessValueLength
|
|
1332
|
+
|
|
1333
|
+
def setFreshnessValueLength(self, value):
|
|
1334
|
+
if value is not None:
|
|
1335
|
+
self.freshnessValueLength = value
|
|
1336
|
+
return self
|
|
1337
|
+
|
|
1338
|
+
def getFreshnessValueTxLength(self):
|
|
1339
|
+
return self.freshnessValueTxLength
|
|
1340
|
+
|
|
1341
|
+
def setFreshnessValueTxLength(self, value):
|
|
1342
|
+
if value is not None:
|
|
1343
|
+
self.freshnessValueTxLength = value
|
|
1344
|
+
return self
|
|
1345
|
+
|
|
1346
|
+
def getMessageLinkLength(self):
|
|
1347
|
+
return self.messageLinkLength
|
|
1348
|
+
|
|
1349
|
+
def setMessageLinkLength(self, value):
|
|
1350
|
+
if value is not None:
|
|
1351
|
+
self.messageLinkLength = value
|
|
1352
|
+
return self
|
|
1353
|
+
|
|
1354
|
+
def getMessageLinkPosition(self):
|
|
1355
|
+
return self.messageLinkPosition
|
|
1356
|
+
|
|
1357
|
+
def setMessageLinkPosition(self, value):
|
|
1358
|
+
if value is not None:
|
|
1359
|
+
self.messageLinkPosition = value
|
|
1360
|
+
return self
|
|
1361
|
+
|
|
1362
|
+
def getSecondaryFreshnessValueId(self):
|
|
1363
|
+
return self.secondaryFreshnessValueId
|
|
1364
|
+
|
|
1365
|
+
def setSecondaryFreshnessValueId(self, value):
|
|
1366
|
+
if value is not None:
|
|
1367
|
+
self.secondaryFreshnessValueId = value
|
|
1368
|
+
return self
|
|
1369
|
+
|
|
1370
|
+
def getSecuredComFreshnessType(self):
|
|
1371
|
+
return self.securedComFreshnessType
|
|
1372
|
+
|
|
1373
|
+
def setSecuredComFreshnessType(self, value):
|
|
1374
|
+
if value is not None:
|
|
1375
|
+
self.securedComFreshnessType = value
|
|
1376
|
+
return self
|