armodel 1.6.2__py3-none-any.whl → 1.6.4__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/cli/arxml_dump_cli.py +13 -10
- armodel/cli/arxml_format_cli.py +1 -2
- armodel/cli/connector2xlsx_cli.py +2 -3
- armodel/cli/connector_update_cli.py +2 -5
- armodel/cli/memory_section_cli.py +2 -2
- armodel/cli/swc_list_cli.py +2 -3
- armodel/cli/system_signal_cli.py +2 -2
- armodel/lib/sw_component.py +3 -3
- armodel/lib/system_signal.py +3 -5
- armodel/models/{m2/autosar_templates/autosar_top_level_structure.py → M2/AUTOSARTemplates/AutosarTopLevelStructure.py} +5 -7
- armodel/models/{bsw_module_template.py → M2/AUTOSARTemplates/BswModuleTemplate/BswBehavior.py} +113 -140
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswImplementation.py +60 -0
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswInterfaces.py +52 -0
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswOverview.py +77 -0
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/__init__.py +4 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Implementation.py +238 -0
- armodel/models/{m2/autosar_templates/common_structure/implementation_data_types.py → M2/AUTOSARTemplates/CommonStructure/ImplementationDataTypes.py} +7 -6
- armodel/models/M2/AUTOSARTemplates/CommonStructure/InternalBehavior.py +119 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/ModeDeclaration.py +96 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/MemorySectionUsage.py +69 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/__init__.py +20 -0
- armodel/models/{service_needs.py → M2/AUTOSARTemplates/CommonStructure/ServiceNeeds.py} +13 -9
- armodel/models/M2/AUTOSARTemplates/CommonStructure/SwcBswMapping.py +35 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/SwcInternalBehavior/ModeDeclarationGroup.py +24 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/ExecutionOrderConstraint.py +45 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/TimingConstraint.py +24 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/TimingExtensions.py +33 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/TriggerDeclaration.py +9 -0
- armodel/models/{m2/autosar_templates/common_structure → M2/AUTOSARTemplates/CommonStructure}/__init__.py +4 -3
- armodel/models/{m2/autosar_templates/ecuc_description_template.py → M2/AUTOSARTemplates/ECUCDescriptionTemplate.py} +6 -7
- armodel/models/{m2/autosar_templates/generic_structure/abstract_structure.py → M2/AUTOSARTemplates/GenericStructure/AbstractStructure.py} +25 -5
- armodel/models/{m2/autosar_templates/generic_structure/ar_package.py → M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/ARPackage.py} +41 -29
- armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/ArObject.py +16 -0
- armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/ElementCollection.py +1 -0
- armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/EngineeringObject.py +52 -0
- armodel/models/{general_structure.py → M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/Identifiable.py} +42 -159
- armodel/models/{ar_object.py → M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/PrimitiveTypes.py} +179 -71
- armodel/models/M2/AUTOSARTemplates/GenericStructure/__init__.py +1 -0
- armodel/models/{m2/autosar_templates/sw_component_template/communication.py → M2/AUTOSARTemplates/SWComponentTemplate/Communication.py} +22 -5
- armodel/models/{m2/autosar_templates/sw_component_template/components/instance_refs.py → M2/AUTOSARTemplates/SWComponentTemplate/Components/InstanceRefs.py} +2 -4
- armodel/models/{m2/autosar_templates/sw_component_template/components → M2/AUTOSARTemplates/SWComponentTemplate/Components}/__init__.py +114 -10
- armodel/models/{m2/autosar_templates/sw_component_template/composition/instance_refs.py → M2/AUTOSARTemplates/SWComponentTemplate/Composition/InstanceRefs.py} +2 -5
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Composition/__init__.py +96 -0
- armodel/models/{m2/autosar_templates/sw_component_template/data_type/data_prototypes.py → M2/AUTOSARTemplates/SWComponentTemplate/Datatype/DataPrototypes.py} +24 -8
- armodel/models/{datatype.py → M2/AUTOSARTemplates/SWComponentTemplate/Datatype/Datatypes.py} +16 -73
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/EndToEndProtection.py +177 -0
- armodel/models/{m2/autosar_templates/sw_component_template/port_interface/instance_refs.py → M2/AUTOSARTemplates/SWComponentTemplate/PortInterface/InstanceRefs.py} +2 -2
- armodel/models/{m2/autosar_templates/sw_component_template/port_interface → M2/AUTOSARTemplates/SWComponentTemplate/PortInterface}/__init__.py +10 -6
- armodel/models/{rpt_scenario.py → M2/AUTOSARTemplates/SWComponentTemplate/RPTScenario.py} +4 -6
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcImplementation.py +34 -0
- armodel/models/{m2/autosar_templates/sw_component_template/swc_internal_behavior/access_count.py → M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/AccessCount.py} +2 -2
- armodel/models/{m2/autosar_templates/sw_component_template/swc_internal_behavior/data_elements.py → M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/DataElements.py} +7 -5
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/IncludedDataTypes.py +24 -0
- armodel/models/{m2/autosar_templates/sw_component_template/swc_internal_behavior/instance_refs_usage.py → M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/InstanceRefsUsage.py} +3 -3
- armodel/models/{m2/autosar_templates/sw_component_template/swc_internal_behavior/mode_declaration_group.py → M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/ModeDeclarationGroup.py} +4 -4
- armodel/models/{per_instance_memory.py → M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/PerInstanceMemory.py} +5 -6
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/PortAPIOptions.py +86 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/RTEEvents.py +174 -0
- armodel/models/{m2/autosar_templates/sw_component_template/swc_internal_behavior/server_call.py → M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/ServerCall.py} +3 -4
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/ServiceMapping.py +57 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/Trigger.py +8 -0
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/__init__.py +358 -0
- armodel/models/{m2/autosar_templates/system_template/data_mapping.py → M2/AUTOSARTemplates/SystemTemplate/DataMapping.py} +2 -3
- armodel/models/{fibex/can_communication.py → M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Can/CanCommunication.py} +3 -3
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet/EthernetFrame.py +14 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet/ServiceInstances.py +116 -0
- armodel/models/{fibex/lin_communication.py → M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Lin/LinCommunication.py} +5 -2
- armodel/models/{fibex/fibex_4_multiplatform.py → M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Multiplatform.py} +5 -4
- armodel/models/{fibex/fibex_core/core_communication.py → M2/AUTOSARTemplates/SystemTemplate/Fibex/FibexCore/CoreCommunication.py} +4 -6
- armodel/models/{fibex/fibex_core/core_topology.py → M2/AUTOSARTemplates/SystemTemplate/Fibex/FibexCore/CoreTopology.py} +6 -7
- armodel/models/{m2/autosar_templates/system_template/instance_refs.py → M2/AUTOSARTemplates/SystemTemplate/InstanceRefs.py} +2 -2
- armodel/models/{m2/autosar_templates/system_template/network_management.py → M2/AUTOSARTemplates/SystemTemplate/NetworkManagement.py} +5 -6
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/TransportProtocols.py +6 -0
- armodel/models/{m2/autosar_templates/system_template → M2/AUTOSARTemplates/SystemTemplate}/__init__.py +3 -4
- armodel/models/M2/MSR/AsamHdo/AdminData.py +18 -0
- armodel/models/M2/MSR/AsamHdo/BaseTypes.py +77 -0
- armodel/models/{m2_msr.py → M2/MSR/AsamHdo/ComputationMethod.py} +43 -28
- armodel/models/{global_constraints.py → M2/MSR/AsamHdo/Constraints/GlobalConstraints.py} +6 -4
- armodel/models/M2/MSR/AsamHdo/SpecialData.py +60 -0
- armodel/models/{m2/msr/asam_hdo/units.py → M2/MSR/AsamHdo/Units.py} +3 -3
- armodel/models/M2/MSR/CalibrationData/CalibrationValue.py +26 -0
- armodel/models/{m2/msr/data_dictionary/auxillary_objects.py → M2/MSR/DataDictionary/AuxillaryObjects.py} +3 -4
- armodel/models/M2/MSR/DataDictionary/Axis.py +145 -0
- armodel/models/M2/MSR/DataDictionary/CalibrationParameter.py +37 -0
- armodel/models/{m2/msr/data_dictionary/data_def_properties.py → M2/MSR/DataDictionary/DataDefProperties.py} +19 -10
- armodel/models/{record_layout.py → M2/MSR/DataDictionary/RecordLayout.py} +26 -25
- armodel/models/{annotation.py → M2/MSR/Documentation/Annotation.py} +8 -10
- armodel/models/{m2/msr/documentation/block_elements.py → M2/MSR/Documentation/BlockElements.py} +2 -2
- armodel/models/M2/MSR/Documentation/TextModel/LanguageDataModel.py +16 -0
- armodel/models/{multilanguage_data.py → M2/MSR/Documentation/TextModel/MultilanguageData.py} +20 -32
- armodel/models/M2/MSR/Documentation/TextModel/__init__.py +0 -0
- armodel/models/M2/MSR/Documentation/__init__.py +3 -0
- armodel/models/M2/MSR/__init__.py +1 -0
- armodel/models/M2/__init__.py +0 -0
- armodel/models/__init__.py +50 -24
- armodel/parser/abstract_arxml_parser.py +8 -4
- armodel/parser/arxml_parser.py +117 -90
- armodel/parser/connector_xlsx_parser.py +5 -3
- armodel/parser/file_parser.py +2 -1
- armodel/report/connector_xls_report.py +3 -2
- armodel/tests/test_armodel/models/test_ar_object.py +2 -3
- armodel/tests/test_armodel/models/test_ar_package.py +21 -9
- armodel/tests/test_armodel/models/test_ar_ref.py +7 -5
- armodel/tests/test_armodel/models/test_bsw_module_template.py +5 -1
- armodel/tests/test_armodel/models/test_common_structure.py +11 -5
- armodel/tests/test_armodel/models/test_data_dictionary.py +2 -2
- armodel/tests/test_armodel/models/test_data_prototype.py +8 -4
- armodel/tests/test_armodel/models/test_datatype.py +28 -14
- armodel/tests/test_armodel/models/test_general_structure.py +12 -2
- armodel/tests/test_armodel/models/test_implementation.py +3 -2
- armodel/tests/test_armodel/models/test_m2_msr.py +4 -2
- armodel/tests/test_armodel/models/test_port_interface.py +21 -11
- armodel/tests/test_armodel/models/test_port_prototype.py +1 -1
- armodel/tests/test_armodel/parser/test_parse_bswmd.py +13 -13
- armodel/tests/test_armodel/parser/test_sw_components.py +2 -2
- armodel/tests/test_armodel/parser/test_system.py +30 -0
- armodel/writer/abstract_arxml_writer.py +5 -2
- armodel/writer/arxml_writer.py +136 -91
- {armodel-1.6.2.dist-info → armodel-1.6.4.dist-info}/METADATA +16 -1
- armodel-1.6.4.dist-info/RECORD +156 -0
- armodel/lib/data_analyzer.py +0 -34
- armodel/models/ar_package.py +0 -641
- armodel/models/ar_ref.py +0 -25
- armodel/models/calibration.py +0 -119
- armodel/models/common_structure.py +0 -272
- armodel/models/communication.py +0 -17
- armodel/models/data_def_properties.py +0 -16
- armodel/models/data_dictionary.py +0 -59
- armodel/models/data_prototype.py +0 -103
- armodel/models/end_to_end_protection.py +0 -67
- armodel/models/fibex/fibex_core.py +0 -341
- armodel/models/fibex/lin_topology.py +0 -7
- armodel/models/implementation.py +0 -135
- armodel/models/internal_behavior.py +0 -63
- armodel/models/m2/autosar_templates/common_structure/implementation.py +0 -21
- armodel/models/m2/autosar_templates/sw_component_template/composition/__init__.py +0 -154
- armodel/models/m2/autosar_templates/sw_component_template/port_interface.py +0 -236
- armodel/models/m2/autosar_templates/sw_component_template/swc_internal_behavior/__init__.py +0 -203
- armodel/models/m2/autosar_templates/sw_component_template/swc_internal_behavior/trigger.py +0 -10
- armodel/models/m2/autosar_templates/system_template/transport_protocols.py +0 -7
- armodel/models/mode_declaration.py +0 -8
- armodel/models/port_interface.py +0 -165
- armodel/models/port_prototype.py +0 -6
- armodel/models/service_mapping.py +0 -11
- armodel/models/sw_component.py +0 -385
- armodel/models/system_template/network_management.py +0 -7
- armodel/models/system_template/transport_protocols.py +0 -7
- armodel/models/timing.py +0 -91
- armodel/models/unit.py +0 -14
- armodel-1.6.2.dist-info/RECORD +0 -142
- /armodel/models/{fibex → M2/AUTOSARTemplates/CommonStructure/SwcInternalBehavior}/__init__.py +0 -0
- /armodel/models/{fibex/fibex_4_can → M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint}/__init__.py +0 -0
- /armodel/models/{fibex/fibex_4_lin → M2/AUTOSARTemplates/CommonStructure/Timing}/__init__.py +0 -0
- /armodel/models/{fibex/fibex_core → M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses}/__init__.py +0 -0
- /armodel/models/{m2 → M2/AUTOSARTemplates/SWComponentTemplate/Datatype}/__init__.py +0 -0
- /armodel/models/{m2/autosar_templates → M2/AUTOSARTemplates/SWComponentTemplate}/__init__.py +0 -0
- /armodel/models/{m2/autosar_templates/generic_structure → M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Can}/__init__.py +0 -0
- /armodel/models/{m2/autosar_templates/sw_component_template → M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet}/__init__.py +0 -0
- /armodel/models/{m2/autosar_templates/sw_component_template/data_type → M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Lin}/__init__.py +0 -0
- /armodel/models/{m2/msr → M2/AUTOSARTemplates/SystemTemplate/Fibex/FibexCore}/__init__.py +0 -0
- /armodel/models/{m2/msr/asam_hdo → M2/AUTOSARTemplates/SystemTemplate/Fibex}/__init__.py +0 -0
- /armodel/models/{m2/msr/data_dictionary → M2/AUTOSARTemplates}/__init__.py +0 -0
- /armodel/models/{m2/msr/documentation → M2/MSR/AsamHdo/Constraints}/__init__.py +0 -0
- /armodel/models/{system_template → M2/MSR/AsamHdo}/__init__.py +0 -0
- /armodel/models/{ecuc_parameter_def_template.py → M2/MSR/CalibrationData/__init__.py} +0 -0
- /armodel/models/{m2/autosar_templates/common_structure/constants.py → M2/MSR/DataDictionary/__init__.py} +0 -0
- {armodel-1.6.2.dist-info → armodel-1.6.4.dist-info}/LICENSE +0 -0
- {armodel-1.6.2.dist-info → armodel-1.6.4.dist-info}/WHEEL +0 -0
- {armodel-1.6.2.dist-info → armodel-1.6.4.dist-info}/entry_points.txt +0 -0
- {armodel-1.6.2.dist-info → armodel-1.6.4.dist-info}/top_level.txt +0 -0
|
@@ -1,341 +0,0 @@
|
|
|
1
|
-
from abc import ABCMeta
|
|
2
|
-
from typing import List
|
|
3
|
-
|
|
4
|
-
from armodel.models.ar_ref import RefType
|
|
5
|
-
|
|
6
|
-
from ..ar_object import ARFloat, ARLiteral, ARNumerical, ARObject, ARPositiveInteger
|
|
7
|
-
from ..general_structure import Identifiable
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
class FibexElement(Identifiable):
|
|
11
|
-
__metaclass__ = ABCMeta
|
|
12
|
-
|
|
13
|
-
def __init__(self, parent: ARObject, short_name: str):
|
|
14
|
-
if type(self) == FibexElement:
|
|
15
|
-
raise NotImplementedError("FibexElement is an abstract class.")
|
|
16
|
-
|
|
17
|
-
super().__init__(parent, short_name)
|
|
18
|
-
|
|
19
|
-
class PhysicalChannel (Identifiable):
|
|
20
|
-
__metaclass__ = ABCMeta
|
|
21
|
-
|
|
22
|
-
def __init__(self, parent: ARObject, short_name: str):
|
|
23
|
-
if type(self) == PhysicalChannel:
|
|
24
|
-
raise NotImplementedError("PhysicalChannel is an abstract class.")
|
|
25
|
-
|
|
26
|
-
super().__init__(parent, short_name)
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
class CommunicationCluster(FibexElement):
|
|
30
|
-
__metaclass__ = ABCMeta
|
|
31
|
-
|
|
32
|
-
def __init__(self, parent: ARObject, short_name: str):
|
|
33
|
-
if type(self) == CommunicationCluster:
|
|
34
|
-
raise NotImplementedError("CommunicationCluster is an abstract class.")
|
|
35
|
-
|
|
36
|
-
super().__init__(parent, short_name)
|
|
37
|
-
|
|
38
|
-
self.baudrate = None # type: ARFloat
|
|
39
|
-
self.physical_channels = [] # type: List[PhysicalChannel]
|
|
40
|
-
self.protocol_name = None # type: ARLiteral
|
|
41
|
-
self.protocol_version = None # type: ARLiteral
|
|
42
|
-
|
|
43
|
-
def addPhysicalChannel(self, channel: PhysicalChannel):
|
|
44
|
-
self.physical_channels.append(channel)
|
|
45
|
-
|
|
46
|
-
def getPhysicalChannels(self) -> List[PhysicalChannel]:
|
|
47
|
-
return self.physical_channels
|
|
48
|
-
|
|
49
|
-
@property
|
|
50
|
-
def protocolName(self) -> ARLiteral:
|
|
51
|
-
return self.protocol_name
|
|
52
|
-
|
|
53
|
-
@protocolName.setter
|
|
54
|
-
def protocolName(self, value: ARLiteral):
|
|
55
|
-
self.protocol_name = value
|
|
56
|
-
|
|
57
|
-
@property
|
|
58
|
-
def protocolVersion(self) -> ARLiteral:
|
|
59
|
-
return self.protocol_version
|
|
60
|
-
|
|
61
|
-
@protocolVersion.setter
|
|
62
|
-
def protocolVersion(self, value: ARLiteral):
|
|
63
|
-
self.protocol_version = value
|
|
64
|
-
|
|
65
|
-
class Pdu(FibexElement):
|
|
66
|
-
__metaclass__ = ABCMeta
|
|
67
|
-
|
|
68
|
-
def __init__(self, parent: ARObject, short_name: str):
|
|
69
|
-
if type(self) == Pdu:
|
|
70
|
-
raise NotImplementedError("Pdu is an abstract class.")
|
|
71
|
-
|
|
72
|
-
super().__init__(parent, short_name)
|
|
73
|
-
|
|
74
|
-
self.length = None # type: ARNumerical
|
|
75
|
-
|
|
76
|
-
class PduToFrameMapping(Identifiable):
|
|
77
|
-
def __init__(self, parent: ARObject, short_name: str):
|
|
78
|
-
super().__init__(parent, short_name)
|
|
79
|
-
|
|
80
|
-
self.packing_byte_order = None # type: ARLiteral
|
|
81
|
-
self.pdu_ref = None # type: RefType
|
|
82
|
-
self.start_position = None # type: ARNumerical
|
|
83
|
-
|
|
84
|
-
@property
|
|
85
|
-
def packingByteOrder(self) -> ARLiteral:
|
|
86
|
-
return self.packing_byte_order
|
|
87
|
-
|
|
88
|
-
@packingByteOrder.setter
|
|
89
|
-
def packingByteOrder(self, value: ARLiteral):
|
|
90
|
-
self.packing_byte_order = value
|
|
91
|
-
|
|
92
|
-
@property
|
|
93
|
-
def pduRef(self) -> RefType:
|
|
94
|
-
return self.pdu_ref
|
|
95
|
-
|
|
96
|
-
@pduRef.setter
|
|
97
|
-
def pduRef(self, value: RefType):
|
|
98
|
-
self.pdu_ref = value
|
|
99
|
-
|
|
100
|
-
@property
|
|
101
|
-
def startPosition(self) -> ARNumerical:
|
|
102
|
-
return self.start_position
|
|
103
|
-
|
|
104
|
-
@startPosition.setter
|
|
105
|
-
def startPosition(self, value: ARNumerical):
|
|
106
|
-
self.start_position = value
|
|
107
|
-
|
|
108
|
-
class Frame(Identifiable):
|
|
109
|
-
__metaclass__ = ABCMeta
|
|
110
|
-
|
|
111
|
-
def __init__(self, parent: ARObject, short_name: str):
|
|
112
|
-
if type(self) == Frame:
|
|
113
|
-
raise NotImplementedError("Frame is an abstract class.")
|
|
114
|
-
|
|
115
|
-
super().__init__(parent, short_name)
|
|
116
|
-
|
|
117
|
-
self.frame_length = None
|
|
118
|
-
self.pdu_to_frame_mappings = [] # type: List[PduToFrameMapping]
|
|
119
|
-
|
|
120
|
-
@property
|
|
121
|
-
def frameLength(self) -> ARNumerical:
|
|
122
|
-
return self.frame_length
|
|
123
|
-
|
|
124
|
-
@frameLength.setter
|
|
125
|
-
def frameLength(self, value: ARNumerical):
|
|
126
|
-
self.frame_length = value
|
|
127
|
-
|
|
128
|
-
def createPduToFrameMapping(self, short_name: str) -> PduToFrameMapping:
|
|
129
|
-
if (short_name not in self.elements):
|
|
130
|
-
mapping = PduToFrameMapping(self, short_name)
|
|
131
|
-
self.elements[short_name] = mapping
|
|
132
|
-
self.pdu_to_frame_mappings.append(mapping)
|
|
133
|
-
return self.elements[short_name]
|
|
134
|
-
|
|
135
|
-
def getPduToFrameMappings(self) -> List[PduToFrameMapping]:
|
|
136
|
-
return list(sorted(filter(lambda a: isinstance(a, PduToFrameMapping), self.elements.values()), key= lambda o:o.short_name))
|
|
137
|
-
|
|
138
|
-
class ContainedIPduProps(ARObject):
|
|
139
|
-
def __init__(self):
|
|
140
|
-
super().__init__()
|
|
141
|
-
|
|
142
|
-
self._collection_semantics = None # type: ARLiteral
|
|
143
|
-
self._header_id_long_header = None # type: ARPositiveInteger
|
|
144
|
-
self._header_id_short_header = None # type: ARPositiveInteger
|
|
145
|
-
self._offset = None # type: ARNumerical
|
|
146
|
-
self._timeout = None # type: ARNumerical
|
|
147
|
-
self._trigger = None # type: ARLiteral
|
|
148
|
-
self._update_indication_bit_position = None # type: ARNumerical
|
|
149
|
-
|
|
150
|
-
@property
|
|
151
|
-
def headerIdLongHeader(self) -> ARPositiveInteger:
|
|
152
|
-
return self._header_id_long_header
|
|
153
|
-
|
|
154
|
-
@headerIdLongHeader.setter
|
|
155
|
-
def headerIdLongHeader(self, value: ARPositiveInteger):
|
|
156
|
-
self._header_id_long_header = value
|
|
157
|
-
|
|
158
|
-
@property
|
|
159
|
-
def headerIdShortHeader(self) -> ARPositiveInteger:
|
|
160
|
-
return self._header_id_short_header
|
|
161
|
-
|
|
162
|
-
@headerIdShortHeader.setter
|
|
163
|
-
def headerIdShortHeader(self, value: ARPositiveInteger):
|
|
164
|
-
self._header_id_short_header = value
|
|
165
|
-
|
|
166
|
-
@property
|
|
167
|
-
def offset(self) -> ARNumerical:
|
|
168
|
-
return self._offset
|
|
169
|
-
|
|
170
|
-
@offset.setter
|
|
171
|
-
def offset(self, value: ARNumerical):
|
|
172
|
-
self._offset = value
|
|
173
|
-
|
|
174
|
-
@property
|
|
175
|
-
def timeout(self):
|
|
176
|
-
return self._timeout
|
|
177
|
-
|
|
178
|
-
@timeout.setter
|
|
179
|
-
def timeout(self, value):
|
|
180
|
-
self._timeout = value
|
|
181
|
-
|
|
182
|
-
@property
|
|
183
|
-
def collectionSemantics(self) -> ARLiteral:
|
|
184
|
-
return self._collection_semantics
|
|
185
|
-
|
|
186
|
-
@collectionSemantics.setter
|
|
187
|
-
def collectionSemantics(self, value: ARLiteral):
|
|
188
|
-
self._collection_semantics = value
|
|
189
|
-
|
|
190
|
-
@property
|
|
191
|
-
def trigger(self) -> ARLiteral:
|
|
192
|
-
return self._trigger
|
|
193
|
-
|
|
194
|
-
@trigger.setter
|
|
195
|
-
def trigger(self, value: ARLiteral):
|
|
196
|
-
self._trigger = value
|
|
197
|
-
|
|
198
|
-
@property
|
|
199
|
-
def updateIndicationBitPosition(self) -> ARNumerical:
|
|
200
|
-
return self._update_indication_bit_position
|
|
201
|
-
|
|
202
|
-
@updateIndicationBitPosition.setter
|
|
203
|
-
def updateIndicationBitPosition(self, value: ARNumerical):
|
|
204
|
-
self._update_indication_bit_position = value
|
|
205
|
-
|
|
206
|
-
class IPdu(Pdu):
|
|
207
|
-
__metaclass__ = ABCMeta
|
|
208
|
-
|
|
209
|
-
def __init__(self, parent: ARObject, short_name: str):
|
|
210
|
-
if type(self) == IPdu:
|
|
211
|
-
raise NotImplementedError("IPdu is an abstract class.")
|
|
212
|
-
|
|
213
|
-
super().__init__(parent, short_name)
|
|
214
|
-
|
|
215
|
-
self._contained_ipdu_props = None # type: ContainedIPduProps
|
|
216
|
-
|
|
217
|
-
@property
|
|
218
|
-
def containedIPduProps(self) -> ContainedIPduProps:
|
|
219
|
-
return self._contained_ipdu_props
|
|
220
|
-
|
|
221
|
-
@containedIPduProps.setter
|
|
222
|
-
def containedIPduProps(self, value: ContainedIPduProps):
|
|
223
|
-
self._contained_ipdu_props = value
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
class NmPdu(Pdu):
|
|
227
|
-
def __init__(self, parent: ARObject, short_name: str):
|
|
228
|
-
super().__init__(parent, short_name)
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
class NPdu(IPdu):
|
|
232
|
-
def __init__(self, parent: ARObject, short_name: str):
|
|
233
|
-
super().__init__(parent, short_name)
|
|
234
|
-
|
|
235
|
-
class DcmIPdu(IPdu):
|
|
236
|
-
def __init__(self, parent: ARObject, short_name: str):
|
|
237
|
-
super().__init__(parent, short_name)
|
|
238
|
-
|
|
239
|
-
class FrameTriggering(Identifiable):
|
|
240
|
-
__metaclass__ = ABCMeta
|
|
241
|
-
|
|
242
|
-
def __init__(self, parent: ARObject, short_name: str):
|
|
243
|
-
if type(self) == FrameTriggering:
|
|
244
|
-
raise NotImplementedError("FrameTriggering is an abstract class.")
|
|
245
|
-
|
|
246
|
-
super().__init__(parent, short_name)
|
|
247
|
-
|
|
248
|
-
class ISignal(FibexElement):
|
|
249
|
-
def __init__(self, parent: ARObject, short_name: str):
|
|
250
|
-
super().__init__(parent, short_name)
|
|
251
|
-
|
|
252
|
-
self._data_transformation_ref = None
|
|
253
|
-
self._data_type_policy = None
|
|
254
|
-
self._i_signal_props = None
|
|
255
|
-
self._i_signal_type = None
|
|
256
|
-
self._init_value = None
|
|
257
|
-
self._length = None
|
|
258
|
-
self._network_representation_props = None
|
|
259
|
-
self._system_signal_ref = None # type: RefType
|
|
260
|
-
self._timeout_substitution_value = None
|
|
261
|
-
self._transformation_i_signal_props = []
|
|
262
|
-
|
|
263
|
-
@property
|
|
264
|
-
def dataTransformationRef(self):
|
|
265
|
-
return self._data_transformation_ref
|
|
266
|
-
|
|
267
|
-
@dataTransformationRef.setter
|
|
268
|
-
def dataTransformationRef(self, value):
|
|
269
|
-
self._data_transformation_ref = value
|
|
270
|
-
|
|
271
|
-
@property
|
|
272
|
-
def dataTypePolicy(self):
|
|
273
|
-
return self._data_type_policy
|
|
274
|
-
|
|
275
|
-
@dataTypePolicy.setter
|
|
276
|
-
def dataTypePolicy(self, value):
|
|
277
|
-
self._data_type_policy = value
|
|
278
|
-
|
|
279
|
-
@property
|
|
280
|
-
def iSignalProps(self):
|
|
281
|
-
return self._i_signal_props
|
|
282
|
-
|
|
283
|
-
@iSignalProps.setter
|
|
284
|
-
def iSignalProps(self, value):
|
|
285
|
-
self._i_signal_props = value
|
|
286
|
-
|
|
287
|
-
@property
|
|
288
|
-
def iSignalType(self):
|
|
289
|
-
return self._i_signal_type
|
|
290
|
-
|
|
291
|
-
@iSignalType.setter
|
|
292
|
-
def iSignalType(self, value):
|
|
293
|
-
self._i_signal_type = value
|
|
294
|
-
|
|
295
|
-
@property
|
|
296
|
-
def initValue(self):
|
|
297
|
-
return self._init_value
|
|
298
|
-
|
|
299
|
-
@initValue.setter
|
|
300
|
-
def initValue(self, value):
|
|
301
|
-
self._init_value = value
|
|
302
|
-
|
|
303
|
-
@property
|
|
304
|
-
def length(self):
|
|
305
|
-
return self._length
|
|
306
|
-
|
|
307
|
-
@length.setter
|
|
308
|
-
def length(self, value):
|
|
309
|
-
self._length = value
|
|
310
|
-
|
|
311
|
-
@property
|
|
312
|
-
def networkRepresentationProps(self):
|
|
313
|
-
return self._network_representation_props
|
|
314
|
-
|
|
315
|
-
@networkRepresentationProps.setter
|
|
316
|
-
def networkRepresentationProps(self, value):
|
|
317
|
-
self._network_representation_props = value
|
|
318
|
-
|
|
319
|
-
@property
|
|
320
|
-
def systemSignalRef(self):
|
|
321
|
-
return self._system_signal_ref
|
|
322
|
-
|
|
323
|
-
@systemSignalRef.setter
|
|
324
|
-
def systemSignalRef(self, value):
|
|
325
|
-
self._system_signal_ref = value
|
|
326
|
-
|
|
327
|
-
@property
|
|
328
|
-
def timeoutSubstitutionValue(self):
|
|
329
|
-
return self._timeout_substitution_value
|
|
330
|
-
|
|
331
|
-
@timeoutSubstitutionValue.setter
|
|
332
|
-
def timeoutSubstitutionValue(self, value):
|
|
333
|
-
self._timeout_substitution_value = value
|
|
334
|
-
|
|
335
|
-
@property
|
|
336
|
-
def transformationISignalProps(self):
|
|
337
|
-
return self._transformation_i_signal_props
|
|
338
|
-
|
|
339
|
-
@transformationISignalProps.setter
|
|
340
|
-
def transformationISignalProps(self, value):
|
|
341
|
-
self._transformation_i_signal_props = value
|
armodel/models/implementation.py
DELETED
|
@@ -1,135 +0,0 @@
|
|
|
1
|
-
from abc import ABCMeta
|
|
2
|
-
from typing import List
|
|
3
|
-
from .ar_object import ARLiteral, ARNumerical, ARObject
|
|
4
|
-
from .general_structure import PackageableElement, Identifiable
|
|
5
|
-
from .common_structure import ResourceConsumption
|
|
6
|
-
from .ar_ref import RefType
|
|
7
|
-
|
|
8
|
-
class EngineeringObject(ARObject, metaclass=ABCMeta):
|
|
9
|
-
def __init__(self):
|
|
10
|
-
if type(self) == EngineeringObject:
|
|
11
|
-
raise NotImplementedError("EngineeringObject is an abstract class.")
|
|
12
|
-
|
|
13
|
-
super().__init__()
|
|
14
|
-
|
|
15
|
-
self.category = None # type: ARLiteral
|
|
16
|
-
self.domain = None # type: ARLiteral
|
|
17
|
-
self.revision_label = None # type: ARLiteral
|
|
18
|
-
self.short_label = None # type: ARLiteral
|
|
19
|
-
|
|
20
|
-
def setCategory(self, category: any):
|
|
21
|
-
if isinstance(category, ARLiteral):
|
|
22
|
-
self.category = category
|
|
23
|
-
else:
|
|
24
|
-
self.category = ARLiteral()
|
|
25
|
-
self.category.setValue(str(category))
|
|
26
|
-
return self
|
|
27
|
-
|
|
28
|
-
def getCategory(self) -> ARLiteral:
|
|
29
|
-
return self.category
|
|
30
|
-
|
|
31
|
-
def setDomain(self, domain: ARLiteral):
|
|
32
|
-
self.domain = domain
|
|
33
|
-
return self
|
|
34
|
-
|
|
35
|
-
def getDomain(self) -> ARLiteral:
|
|
36
|
-
return self.domain
|
|
37
|
-
|
|
38
|
-
def setRevisionLabel(self, revision_label: ARLiteral):
|
|
39
|
-
self.revision_label = revision_label
|
|
40
|
-
return self
|
|
41
|
-
|
|
42
|
-
def getRevisionLabel(self) -> ARLiteral:
|
|
43
|
-
return self.revision_label
|
|
44
|
-
|
|
45
|
-
def setShortLabel(self, label: ARLiteral):
|
|
46
|
-
self.short_label = label
|
|
47
|
-
return self
|
|
48
|
-
|
|
49
|
-
def getShortLabel(self) -> ARLiteral:
|
|
50
|
-
return self.short_label
|
|
51
|
-
|
|
52
|
-
class AutosarEngineeringObject(EngineeringObject):
|
|
53
|
-
def __init__(self):
|
|
54
|
-
super().__init__()
|
|
55
|
-
|
|
56
|
-
class Code(Identifiable):
|
|
57
|
-
def __init__(self, parent: ARObject, short_name: str):
|
|
58
|
-
super().__init__(parent, short_name)
|
|
59
|
-
|
|
60
|
-
self._artifactDescriptors = [] # type: List[AutosarEngineeringObject]
|
|
61
|
-
self.callbackHeaderRefs = [] # type: List[RefType]
|
|
62
|
-
|
|
63
|
-
def addArtifactDescriptor(self, desc: AutosarEngineeringObject):
|
|
64
|
-
self._artifactDescriptors.append(desc)
|
|
65
|
-
|
|
66
|
-
def getArtifactDescriptors(self, category:str = "") -> List[AutosarEngineeringObject]:
|
|
67
|
-
if (category == ""):
|
|
68
|
-
return self._artifactDescriptors
|
|
69
|
-
else:
|
|
70
|
-
return list(filter(lambda a: a.getCategory().getText() == category, self._artifactDescriptors))
|
|
71
|
-
|
|
72
|
-
class Implementation(PackageableElement, metaclass=ABCMeta):
|
|
73
|
-
def __init__(self, parent: ARObject, short_name: str) -> None:
|
|
74
|
-
if type(self) == Implementation:
|
|
75
|
-
raise NotImplementedError("Implementation is an abstract class.")
|
|
76
|
-
|
|
77
|
-
super().__init__(parent, short_name)
|
|
78
|
-
|
|
79
|
-
self.build_action_manifest_ref = None # type: RefType
|
|
80
|
-
self.compilers = None
|
|
81
|
-
self.generated_artifacts = None
|
|
82
|
-
self.hw_element_refs = [] # type: List[RefType]
|
|
83
|
-
self.linker = []
|
|
84
|
-
self.mc_support = None
|
|
85
|
-
self.programming_language = None # type: ARLiteral
|
|
86
|
-
self.required_artifacts = []
|
|
87
|
-
self.required_generator_tools = []
|
|
88
|
-
self.resource_consumption = None # type: ResourceConsumption
|
|
89
|
-
self.sw_version = "" # type: ARLiteral
|
|
90
|
-
self.swc_bsw_mapping_ref = None # type: RefType
|
|
91
|
-
self.used_code_generator = None # type: ARLiteral
|
|
92
|
-
self.vendor_id = 0 # type: ARNumerical
|
|
93
|
-
|
|
94
|
-
def createCodeDescriptor(self, short_name: str) -> Code:
|
|
95
|
-
if (short_name not in self.elements):
|
|
96
|
-
sw_component = Code(self, short_name)
|
|
97
|
-
self.elements[short_name] = sw_component
|
|
98
|
-
return self.elements[short_name]
|
|
99
|
-
|
|
100
|
-
def getCodeDescriptors(self)-> List[Code]:
|
|
101
|
-
return list(filter(lambda a : isinstance(a, Code), self.elements.values()))
|
|
102
|
-
|
|
103
|
-
def setResourceConsumption(self, consumption: ResourceConsumption):
|
|
104
|
-
self.elements[consumption.short_name] = consumption
|
|
105
|
-
self.resource_consumption = consumption
|
|
106
|
-
return self
|
|
107
|
-
|
|
108
|
-
def getResourceConsumption(self) -> ResourceConsumption:
|
|
109
|
-
return self.resource_consumption
|
|
110
|
-
|
|
111
|
-
class BswImplementation(Implementation):
|
|
112
|
-
def __init__(self, parent: ARObject, short_name: str) -> None:
|
|
113
|
-
super().__init__(parent, short_name)
|
|
114
|
-
|
|
115
|
-
self.ar_release_version = None # type: ARLiteral
|
|
116
|
-
self.behavior_ref = None # type: RefType
|
|
117
|
-
self.preconfiguredConfigurationRef = [] # type: List[RefType]
|
|
118
|
-
self.recommendedConfigurationRef = [] # type: List[RefType]
|
|
119
|
-
self.vendorApiInfix = None # type: str
|
|
120
|
-
self._vendorSpecificModuleDefRef = [] # type: List[RefType]
|
|
121
|
-
|
|
122
|
-
def addVendorSpecificModuleDefRef(self, ref: RefType):
|
|
123
|
-
self._vendorSpecificModuleDefRef.append(ref)
|
|
124
|
-
|
|
125
|
-
def getVendorSpecificModuleDefRefs(self):
|
|
126
|
-
return self._vendorSpecificModuleDefRef
|
|
127
|
-
|
|
128
|
-
class SwcImplementation(Implementation):
|
|
129
|
-
def __init__(self, parent: ARObject, short_name: str) -> None:
|
|
130
|
-
super().__init__(parent, short_name)
|
|
131
|
-
|
|
132
|
-
self.behavior_ref = None # type: RefType
|
|
133
|
-
self.per_instance_memory_size = None
|
|
134
|
-
self.required_rte_vendor = ""
|
|
135
|
-
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
from abc import ABCMeta
|
|
2
|
-
from typing import List
|
|
3
|
-
|
|
4
|
-
from .ar_object import ARLiteral, ARObject
|
|
5
|
-
from .ar_ref import RefType
|
|
6
|
-
from .common_structure import ExclusiveArea
|
|
7
|
-
from .m2.autosar_templates.sw_component_template.data_type.data_prototypes import ParameterDataPrototype
|
|
8
|
-
from .general_structure import Identifiable
|
|
9
|
-
|
|
10
|
-
class IncludedDataTypeSet(ARObject):
|
|
11
|
-
def __init__(self):
|
|
12
|
-
super().__init__()
|
|
13
|
-
|
|
14
|
-
self.data_type_refs = [] # type: List[RefType]
|
|
15
|
-
self.literal_prefix = None # type: ARLiteral
|
|
16
|
-
|
|
17
|
-
def addDataTypeRef(self, ref_type: RefType):
|
|
18
|
-
self.data_type_refs.append(ref_type)
|
|
19
|
-
|
|
20
|
-
def getDataTypeRefs(self) -> List[RefType]:
|
|
21
|
-
return self.data_type_refs
|
|
22
|
-
|
|
23
|
-
@property
|
|
24
|
-
def literalPrefix(self) -> ARLiteral:
|
|
25
|
-
return self.literal_prefix
|
|
26
|
-
|
|
27
|
-
@literalPrefix.setter
|
|
28
|
-
def literalPrefix(self, value: ARLiteral):
|
|
29
|
-
self.literal_prefix = value
|
|
30
|
-
|
|
31
|
-
class InternalBehavior(Identifiable, metaclass=ABCMeta):
|
|
32
|
-
def __init__(self, parent: ARObject, short_name: str):
|
|
33
|
-
if type(self) == InternalBehavior:
|
|
34
|
-
raise NotImplementedError("InternalBehavior is an abstract class.")
|
|
35
|
-
super().__init__(parent, short_name)
|
|
36
|
-
|
|
37
|
-
self.data_type_mapping_refs = [] # type: List[RefType]
|
|
38
|
-
self.constant_memories = [] # type: List[ParameterDataPrototype]
|
|
39
|
-
|
|
40
|
-
def addDataTypeMappingRef(self, ref: RefType):
|
|
41
|
-
self.data_type_mapping_refs.append(ref)
|
|
42
|
-
|
|
43
|
-
def getDataTypeMappingRefs(self) -> List[RefType]:
|
|
44
|
-
return self.data_type_mapping_refs
|
|
45
|
-
|
|
46
|
-
def createExclusiveArea(self, short_name: str) -> ExclusiveArea:
|
|
47
|
-
if (short_name not in self.elements):
|
|
48
|
-
event = ExclusiveArea(self, short_name)
|
|
49
|
-
self.elements[short_name] = event
|
|
50
|
-
return self.elements[short_name]
|
|
51
|
-
|
|
52
|
-
def getExclusiveAreas(self) -> List[ExclusiveArea]:
|
|
53
|
-
return list(filter(lambda c: isinstance(c, ExclusiveArea), self.elements.values()))
|
|
54
|
-
|
|
55
|
-
def createConstantMemory(self, short_name: str) -> ParameterDataPrototype:
|
|
56
|
-
if (short_name not in self.elements):
|
|
57
|
-
prototype = ParameterDataPrototype(self, short_name)
|
|
58
|
-
self.elements[short_name] = prototype
|
|
59
|
-
self.constant_memories.append(prototype)
|
|
60
|
-
return self.elements[short_name]
|
|
61
|
-
|
|
62
|
-
def getConstantMemorys(self) -> List[ParameterDataPrototype]:
|
|
63
|
-
return self.constant_memories
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
from abc import ABCMeta
|
|
2
|
-
|
|
3
|
-
from ....ar_object import ARLiteral, ARObject
|
|
4
|
-
from ....general_structure import Referrable
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
class ImplementationProps(Referrable, metaclass = ABCMeta):
|
|
8
|
-
def __init__(self, parent: ARObject, short_name: str):
|
|
9
|
-
if type(self) == ImplementationProps:
|
|
10
|
-
raise NotImplementedError("ImplementationProps is an abstract class.")
|
|
11
|
-
|
|
12
|
-
super().__init__(parent, short_name)
|
|
13
|
-
|
|
14
|
-
self.symbol = None # type: ARLiteral
|
|
15
|
-
|
|
16
|
-
def getSymbol(self):
|
|
17
|
-
return self.symbol
|
|
18
|
-
|
|
19
|
-
def setSymbol(self, value):
|
|
20
|
-
self.symbol = value
|
|
21
|
-
return self
|