armodel 1.6.1__py3-none-any.whl → 1.6.3__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.
Files changed (157) hide show
  1. armodel/cli/arxml_dump_cli.py +31 -25
  2. armodel/cli/arxml_format_cli.py +1 -4
  3. armodel/cli/connector_update_cli.py +1 -1
  4. armodel/cli/swc_list_cli.py +1 -1
  5. armodel/lib/sw_component.py +3 -1
  6. armodel/lib/system_signal.py +3 -1
  7. armodel/models/M2/AUTOSARTemplates/AutosarTopLevelStructure.py +123 -0
  8. armodel/models/{bsw_module_template.py → M2/AUTOSARTemplates/BswModuleTemplate/BswBehavior.py} +115 -140
  9. armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswImplementation.py +21 -0
  10. armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswInterfaces.py +52 -0
  11. armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswOverview.py +78 -0
  12. armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/__init__.py +1 -0
  13. armodel/models/M2/AUTOSARTemplates/CommonStructure/Implementation.py +81 -0
  14. armodel/models/{m2/autosar_templates/common_structure/implementation_data_types.py → M2/AUTOSARTemplates/CommonStructure/ImplementationDataTypes.py} +20 -10
  15. armodel/models/M2/AUTOSARTemplates/CommonStructure/InternalBehavior.py +108 -0
  16. armodel/models/M2/AUTOSARTemplates/CommonStructure/ModeDeclaration.py +96 -0
  17. armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/MemorySectionUsage.py +72 -0
  18. armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/__init__.py +22 -0
  19. armodel/models/{service_needs.py → M2/AUTOSARTemplates/CommonStructure/ServiceNeeds.py} +7 -7
  20. armodel/models/M2/AUTOSARTemplates/CommonStructure/SwcBswMapping.py +36 -0
  21. armodel/models/M2/AUTOSARTemplates/CommonStructure/SwcInternalBehavior/ModeDeclarationGroup.py +27 -0
  22. armodel/models/M2/AUTOSARTemplates/CommonStructure/SwcInternalBehavior/__init__.py +1 -0
  23. armodel/models/M2/AUTOSARTemplates/CommonStructure/TriggerDeclaration.py +9 -0
  24. armodel/models/{m2/autosar_templates/common_structure → M2/AUTOSARTemplates/CommonStructure}/__init__.py +5 -2
  25. armodel/models/{m2/autosar_templates/generic_structure/abstract_structure.py → M2/AUTOSARTemplates/GenericStructure/AbstractStructure.py} +25 -2
  26. armodel/models/{ar_package.py → M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/ARPackage.py} +113 -218
  27. armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/ArObject.py +16 -0
  28. armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/ElementCollection.py +1 -0
  29. armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/EngineeringObject.py +55 -0
  30. armodel/models/{general_structure.py → M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/Identifiable.py} +37 -149
  31. armodel/models/{ar_object.py → M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/PrimitiveTypes.py} +163 -70
  32. armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/__init__.py +1 -0
  33. armodel/models/M2/AUTOSARTemplates/GenericStructure/__init__.py +1 -0
  34. armodel/models/{m2/autosar_templates/sw_component_template/communication.py → M2/AUTOSARTemplates/SWComponentTemplate/Communication.py} +22 -5
  35. armodel/models/{m2/autosar_templates/sw_component_template/components/instance_refs.py → M2/AUTOSARTemplates/SWComponentTemplate/Components/InstanceRefs.py} +2 -2
  36. armodel/models/{m2/autosar_templates/sw_component_template/components → M2/AUTOSARTemplates/SWComponentTemplate/Components}/__init__.py +10 -8
  37. armodel/models/{m2/autosar_templates/sw_component_template/composition/instance_refs.py → M2/AUTOSARTemplates/SWComponentTemplate/Composition/InstanceRefs.py} +2 -2
  38. armodel/models/{m2/autosar_templates/sw_component_template/composition → M2/AUTOSARTemplates/SWComponentTemplate/Composition}/__init__.py +5 -5
  39. armodel/models/{m2/autosar_templates/sw_component_template/data_type/data_prototypes.py → M2/AUTOSARTemplates/SWComponentTemplate/Datatype/DataPrototypes.py} +25 -7
  40. armodel/models/{datatype.py → M2/AUTOSARTemplates/SWComponentTemplate/Datatype/Datatypes.py} +16 -74
  41. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Datatype/__init__.py +1 -0
  42. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/EndToEndProtection.py +177 -0
  43. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcImplementation.py +11 -0
  44. armodel/models/{m2/autosar_templates/sw_component_template/swc_internal_behavior/access_count.py → M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/AccessCount.py} +2 -2
  45. armodel/models/{m2/autosar_templates/sw_component_template/swc_internal_behavior/data_elements.py → M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/DataElements.py} +7 -5
  46. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/IncludedDataTypes.py +24 -0
  47. armodel/models/{m2/autosar_templates/sw_component_template/swc_internal_behavior/instance_refs_usage.py → M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/InstanceRefsUsage.py} +3 -3
  48. armodel/models/{m2/autosar_templates/sw_component_template/swc_internal_behavior/mode_declaration_group.py → M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/ModeDeclarationGroup.py} +3 -3
  49. armodel/models/{per_instance_memory.py → M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/PerInstanceMemory.py} +5 -6
  50. armodel/models/{m2/autosar_templates/sw_component_template/swc_internal_behavior/server_call.py → M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/ServerCall.py} +3 -3
  51. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/ServiceMapping.py +23 -0
  52. armodel/models/{m2/autosar_templates/sw_component_template/swc_internal_behavior/trigger.py → M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/Trigger.py} +2 -2
  53. armodel/models/{m2/autosar_templates/sw_component_template/swc_internal_behavior → M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior}/__init__.py +9 -10
  54. armodel/models/{m2/autosar_templates/sw_component_template → M2/AUTOSARTemplates/SWComponentTemplate}/port_interface/__init__.py +12 -8
  55. armodel/models/{m2/autosar_templates/sw_component_template → M2/AUTOSARTemplates/SWComponentTemplate}/port_interface/instance_refs.py +2 -2
  56. armodel/models/{m2/autosar_templates/system_template/instance_refs.py → M2/AUTOSARTemplates/SystemTemplate/InstanceRefs.py} +2 -2
  57. armodel/models/{m2/autosar_templates/system_template → M2/AUTOSARTemplates/SystemTemplate}/__init__.py +4 -2
  58. armodel/models/{m2/autosar_templates/system_template → M2/AUTOSARTemplates/SystemTemplate}/data_mapping.py +2 -2
  59. armodel/models/{m2/autosar_templates/system_template → M2/AUTOSARTemplates/SystemTemplate}/network_management.py +7 -3
  60. armodel/models/{m2/autosar_templates/system_template → M2/AUTOSARTemplates/SystemTemplate}/transport_protocols.py +1 -1
  61. armodel/models/{m2/autosar_templates → M2/AUTOSARTemplates}/ecuc_description_template.py +10 -6
  62. armodel/models/M2/MSR/AsamHdo/AdminData.py +21 -0
  63. armodel/models/M2/MSR/AsamHdo/BaseTypes.py +77 -0
  64. armodel/models/{m2_msr.py → M2/MSR/AsamHdo/ComputationMethod.py} +44 -28
  65. armodel/models/{global_constraints.py → M2/MSR/AsamHdo/Constraints/GlobalConstraints.py} +7 -4
  66. armodel/models/M2/MSR/AsamHdo/Constraints/__init__.py +1 -0
  67. armodel/models/M2/MSR/AsamHdo/SpecialData.py +63 -0
  68. armodel/models/{m2/msr/asam_hdo/units.py → M2/MSR/AsamHdo/Units.py} +6 -3
  69. armodel/models/M2/MSR/AsamHdo/__init__.py +1 -0
  70. armodel/models/M2/MSR/CalibrationData/CalibrationValue.py +30 -0
  71. armodel/models/M2/MSR/CalibrationData/__init__.py +1 -0
  72. armodel/models/{m2/msr/data_dictionary/auxillary_objects.py → M2/MSR/DataDictionary/AuxillaryObjects.py} +4 -2
  73. armodel/models/M2/MSR/DataDictionary/Axis.py +145 -0
  74. armodel/models/M2/MSR/DataDictionary/CalibrationParameter.py +37 -0
  75. armodel/models/{m2/msr/data_dictionary/data_def_properties.py → M2/MSR/DataDictionary/DataDefProperties.py} +19 -9
  76. armodel/models/{record_layout.py → M2/MSR/DataDictionary/RecordLayout.py} +26 -25
  77. armodel/models/M2/MSR/DataDictionary/__init__.py +1 -0
  78. armodel/models/{annotation.py → M2/MSR/Documentation/Annotation.py} +8 -8
  79. armodel/models/{m2/msr/documentation/block_elements.py → M2/MSR/Documentation/BlockElements.py} +2 -2
  80. armodel/models/M2/MSR/Documentation/TextModel/LanguageDataModel.py +17 -0
  81. armodel/models/{multilanguage_data.py → M2/MSR/Documentation/TextModel/MultilanguageData.py} +21 -30
  82. armodel/models/M2/MSR/Documentation/TextModel/__init__.py +2 -0
  83. armodel/models/M2/MSR/Documentation/__init__.py +3 -0
  84. armodel/models/M2/MSR/__init__.py +1 -0
  85. armodel/models/M2/__init__.py +1 -0
  86. armodel/models/__init__.py +6 -23
  87. armodel/models/fibex/can_communication.py +3 -2
  88. armodel/models/fibex/fibex_4_multiplatform.py +5 -3
  89. armodel/models/fibex/fibex_core/core_communication.py +9 -3
  90. armodel/models/fibex/fibex_core/core_topology.py +7 -3
  91. armodel/models/fibex/lin_communication.py +5 -1
  92. armodel/models/rpt_scenario.py +2 -2
  93. armodel/models/sw_component.py +19 -14
  94. armodel/models/timing.py +3 -3
  95. armodel/parser/abstract_arxml_parser.py +8 -4
  96. armodel/parser/arxml_parser.py +120 -86
  97. armodel/parser/connector_xlsx_parser.py +6 -2
  98. armodel/report/connector_xls_report.py +2 -1
  99. armodel/tests/test_armodel/models/test_ar_object.py +2 -1
  100. armodel/tests/test_armodel/models/test_ar_package.py +20 -8
  101. armodel/tests/test_armodel/models/test_ar_ref.py +7 -5
  102. armodel/tests/test_armodel/models/test_bsw_module_template.py +5 -1
  103. armodel/tests/test_armodel/models/test_common_structure.py +11 -5
  104. armodel/tests/test_armodel/models/test_data_dictionary.py +2 -2
  105. armodel/tests/test_armodel/models/test_data_prototype.py +7 -3
  106. armodel/tests/test_armodel/models/test_datatype.py +22 -8
  107. armodel/tests/test_armodel/models/test_general_structure.py +12 -2
  108. armodel/tests/test_armodel/models/test_implementation.py +3 -2
  109. armodel/tests/test_armodel/models/test_m2_msr.py +4 -2
  110. armodel/tests/test_armodel/models/test_port_interface.py +16 -6
  111. armodel/tests/test_armodel/models/test_port_prototype.py +1 -1
  112. armodel/tests/test_armodel/parser/test_parse_bswmd.py +3 -1
  113. armodel/tests/test_armodel/parser/test_sw_components.py +2 -2
  114. armodel/tests/test_armodel/parser/test_system.py +30 -0
  115. armodel/writer/abstract_arxml_writer.py +5 -2
  116. armodel/writer/arxml_writer.py +100 -67
  117. {armodel-1.6.1.dist-info → armodel-1.6.3.dist-info}/METADATA +366 -356
  118. armodel-1.6.3.dist-info/RECORD +148 -0
  119. {armodel-1.6.1.dist-info → armodel-1.6.3.dist-info}/WHEEL +1 -1
  120. armodel/lib/data_analyzer.py +0 -34
  121. armodel/models/ar_ref.py +0 -25
  122. armodel/models/calibration.py +0 -119
  123. armodel/models/common_structure.py +0 -272
  124. armodel/models/communication.py +0 -17
  125. armodel/models/data_def_properties.py +0 -16
  126. armodel/models/data_dictionary.py +0 -59
  127. armodel/models/data_prototype.py +0 -103
  128. armodel/models/ecuc_parameter_def_template.py +0 -0
  129. armodel/models/end_to_end_protection.py +0 -67
  130. armodel/models/fibex/fibex_core.py +0 -341
  131. armodel/models/fibex/lin_topology.py +0 -7
  132. armodel/models/implementation.py +0 -135
  133. armodel/models/internal_behavior.py +0 -63
  134. armodel/models/m2/autosar_templates/common_structure/constants.py +0 -0
  135. armodel/models/m2/autosar_templates/common_structure/implementation.py +0 -21
  136. armodel/models/m2/autosar_templates/generic_structure/__init__.py +0 -0
  137. armodel/models/m2/autosar_templates/sw_component_template/__init__.py +0 -0
  138. armodel/models/m2/autosar_templates/sw_component_template/data_type/__init__.py +0 -0
  139. armodel/models/m2/autosar_templates/sw_component_template/port_interface.py +0 -236
  140. armodel/models/m2/msr/__init__.py +0 -0
  141. armodel/models/m2/msr/asam_hdo/__init__.py +0 -0
  142. armodel/models/m2/msr/data_dictionary/__init__.py +0 -0
  143. armodel/models/m2/msr/documentation/__init__.py +0 -0
  144. armodel/models/mode_declaration.py +0 -8
  145. armodel/models/port_interface.py +0 -165
  146. armodel/models/port_prototype.py +0 -6
  147. armodel/models/service_mapping.py +0 -11
  148. armodel/models/system_template/__init__.py +0 -0
  149. armodel/models/system_template/network_management.py +0 -7
  150. armodel/models/system_template/transport_protocols.py +0 -7
  151. armodel/models/unit.py +0 -14
  152. armodel-1.6.1.dist-info/RECORD +0 -140
  153. /armodel/models/{m2 → M2/AUTOSARTemplates/SWComponentTemplate}/__init__.py +0 -0
  154. /armodel/models/{m2/autosar_templates → M2/AUTOSARTemplates}/__init__.py +0 -0
  155. {armodel-1.6.1.dist-info → armodel-1.6.3.dist-info}/LICENSE +0 -0
  156. {armodel-1.6.1.dist-info → armodel-1.6.3.dist-info}/entry_points.txt +0 -0
  157. {armodel-1.6.1.dist-info → armodel-1.6.3.dist-info}/top_level.txt +0 -0
@@ -1,14 +1,16 @@
1
+ from . import *
2
+
1
3
  from abc import ABCMeta
2
4
  from typing import List
3
5
 
4
-
5
-
6
- from .....ar_ref import RefType, TRefType
7
- from .....general_structure import ARElement, Identifiable
8
- from .....ar_object import ARBoolean, ARObject
9
- from ...common_structure.implementation import ImplementationProps
10
- from ..communication import ClientComSpec, ModeSwitchReceiverComSpec, ModeSwitchSenderComSpec, NonqueuedReceiverComSpec, NonqueuedSenderComSpec, PPortComSpec, ParameterRequireComSpec, QueuedReceiverComSpec, QueuedSenderComSpec, RPortComSpec, ServerComSpec
11
- from .instance_refs import InnerPortGroupInCompositionInstanceRef
6
+ from ...CommonStructure.Implementation import ImplementationProps
7
+ from ...GenericStructure.GeneralTemplateClasses.Identifiable import Identifiable
8
+ from ...GenericStructure.GeneralTemplateClasses.ArObject import ARObject
9
+ from ...GenericStructure.GeneralTemplateClasses.PrimitiveTypes import TRefType
10
+ from ...GenericStructure.GeneralTemplateClasses.Identifiable import ARElement
11
+ from ...GenericStructure.GeneralTemplateClasses.PrimitiveTypes import ARBoolean, RefType
12
+ from ..Communication import ClientComSpec, ModeSwitchReceiverComSpec, ModeSwitchSenderComSpec, NonqueuedReceiverComSpec, NonqueuedSenderComSpec, PPortComSpec, ParameterRequireComSpec, QueuedReceiverComSpec, QueuedSenderComSpec, RPortComSpec, ServerComSpec
13
+ from .InstanceRefs import InnerPortGroupInCompositionInstanceRef
12
14
 
13
15
  class SymbolProps(ImplementationProps):
14
16
  def __init__(self, parent: ARObject, short_name: str):
@@ -1,8 +1,8 @@
1
1
 
2
2
  from abc import ABCMeta
3
3
 
4
- from .....ar_ref import RefType
5
- from ...generic_structure.abstract_structure import AtpInstanceRef
4
+ from ...GenericStructure.GeneralTemplateClasses.PrimitiveTypes import RefType
5
+ from ...GenericStructure.AbstractStructure import AtpInstanceRef
6
6
 
7
7
 
8
8
  class PortInCompositionTypeInstanceRef(AtpInstanceRef, metaclass = ABCMeta):
@@ -1,11 +1,11 @@
1
1
  from abc import ABCMeta
2
2
  from typing import List
3
3
 
4
- from ..components import SwComponentType
5
- from ..composition.instance_refs import PPortInCompositionInstanceRef, PortInCompositionTypeInstanceRef, RPortInCompositionInstanceRef
6
- from .....ar_ref import RefType
7
- from .....ar_object import ARObject
8
- from .....general_structure import Identifiable
4
+ from ..Components import SwComponentType
5
+ from .InstanceRefs import PPortInCompositionInstanceRef, PortInCompositionTypeInstanceRef, RPortInCompositionInstanceRef
6
+ from ...GenericStructure.GeneralTemplateClasses.PrimitiveTypes import RefType
7
+ from ...GenericStructure.GeneralTemplateClasses.ArObject import ARObject
8
+ from ...GenericStructure.GeneralTemplateClasses.Identifiable import Identifiable
9
9
 
10
10
 
11
11
  class SwComponentPrototype(Identifiable):
@@ -1,10 +1,12 @@
1
1
  from abc import ABCMeta
2
2
 
3
- from .....ar_object import ARNumerical
4
- from .....ar_ref import RefType
5
- from ....msr.data_dictionary.data_def_properties import SwDataDefProps
6
- from ...common_structure import ValueSpecification
7
- from .....general_structure import AtpFeature, ARObject
3
+ from ...GenericStructure.GeneralTemplateClasses.ArObject import ARObject
4
+
5
+ from ...GenericStructure.GeneralTemplateClasses.PrimitiveTypes import ARNumerical, TRefType
6
+ from ...GenericStructure.GeneralTemplateClasses.PrimitiveTypes import RefType
7
+ from ....MSR.DataDictionary.DataDefProperties import SwDataDefProps
8
+ from ...CommonStructure import ValueSpecification
9
+ from ...GenericStructure.AbstractStructure import AtpFeature
8
10
 
9
11
  class AtpPrototype(AtpFeature, metaclass = ABCMeta):
10
12
  def __init__(self, parent:ARObject, short_name: str):
@@ -36,7 +38,7 @@ class AutosarDataPrototype(DataPrototype, metaclass = ABCMeta):
36
38
 
37
39
  super().__init__(parent, short_name)
38
40
 
39
- self.typeTRef = None
41
+ self.typeTRef = None # type: TRefType
40
42
 
41
43
  def getTypeTRef(self):
42
44
  return self.typeTRef
@@ -76,7 +78,7 @@ class ApplicationCompositeElementDataPrototype(DataPrototype, metaclass = ABCMet
76
78
 
77
79
 
78
80
  class ApplicationArrayElement(ApplicationCompositeElementDataPrototype):
79
- def __init__(self, parent:ARObject, short_name: str):
81
+ def __init__(self, parent: ARObject, short_name: str):
80
82
  super().__init__(parent, short_name)
81
83
 
82
84
  self.arraySizeHandling = None # type: str
@@ -84,6 +86,22 @@ class ApplicationArrayElement(ApplicationCompositeElementDataPrototype):
84
86
  self.indexDataTypeRef = None # type: RefType
85
87
  self.maxNumberOfElements = None # type: ARNumerical
86
88
 
89
+ def setArraySizeHandling(self, handling: str):
90
+ self.arraySizeHandling = handling
91
+ return self
92
+
93
+ def setArraySizeSemantics(self, semantics: str):
94
+ self.arraySizeSemantics = semantics
95
+ return self
96
+
97
+ def setIndexDataTypeRef(self, ref: RefType):
98
+ self.indexDataTypeRef = ref
99
+ return self
100
+
101
+ def setMaxNumberOfElements(self, number: ARNumerical):
102
+ self.maxNumberOfElements = number
103
+ return self
104
+
87
105
  class ApplicationRecordElement(ApplicationCompositeElementDataPrototype):
88
106
  def __init__(self, parent:ARObject, short_name: str):
89
107
  super().__init__(parent, short_name)
@@ -1,46 +1,12 @@
1
- from abc import ABCMeta
2
1
  from typing import List
3
-
4
- from .ar_object import ARLiteral, ARNumerical
5
- from .ar_ref import RefType
6
- from .general_structure import ARElement, ARObject
7
- from .m2.autosar_templates.sw_component_template.data_type.data_prototypes import ApplicationCompositeElementDataPrototype, ApplicationRecordElement
8
- from .common_structure import ModeRequestTypeMap
9
-
10
- class BaseTypeDefinition(ARObject):
11
- def __init__(self):
12
- super().__init__()
13
-
14
- class BaseTypeDirectDefinition(BaseTypeDefinition):
15
- def __init__(self):
16
- super().__init__()
17
-
18
- self.base_type_encoding = None
19
- self.base_type_size = None # type: ARNumerical
20
- self.byteOrder = None # type: str
21
- self.mem_alignment = None # type: ARNumerical
22
- self.native_declaration = None
23
-
24
- class BaseType(ARElement, metaclass=ABCMeta):
25
- def __init__(self, parent: ARObject, short_name: str):
26
- if type(self) == BaseType:
27
- raise NotImplementedError("BaseType is an abstract class.")
28
-
29
- super().__init__(parent, short_name)
30
-
31
- self.baseTypeDefinition = BaseTypeDirectDefinition()
32
-
33
- class SwBaseType(BaseType):
34
- def __init__(self, parent: ARObject, short_name: str):
35
- super().__init__(parent, short_name)
36
-
37
- class AtpType(ARElement, metaclass=ABCMeta):
38
- def __init__(self, parent: ARObject, short_name: str):
39
- if type(self) == AtpType:
40
- raise NotImplementedError("AtpType is an abstract class.")
41
-
42
- super().__init__(parent, short_name)
43
-
2
+ from ...CommonStructure.ModeDeclaration import ModeRequestTypeMap
3
+ from ...GenericStructure.AbstractStructure import AtpType
4
+ from ...GenericStructure.GeneralTemplateClasses.ArObject import ARObject
5
+ from ...GenericStructure.GeneralTemplateClasses.Identifiable import ARElement
6
+ from ...GenericStructure.GeneralTemplateClasses.PrimitiveTypes import ARLiteral, RefType
7
+ from ...SWComponentTemplate.Datatype.DataPrototypes import ApplicationArrayElement, ApplicationRecordElement
8
+ from ....MSR.DataDictionary.DataDefProperties import SwDataDefProps
9
+ from abc import ABCMeta
44
10
 
45
11
  class AutosarDataType(AtpType, metaclass = ABCMeta):
46
12
  def __init__(self, parent: ARObject, short_name: str):
@@ -58,6 +24,7 @@ class AutosarDataType(AtpType, metaclass = ABCMeta):
58
24
  self.swDataDefProps = value
59
25
  return self
60
26
 
27
+
61
28
  class ApplicationDataType(AutosarDataType, metaclass = ABCMeta):
62
29
  def __init__(self, parent: ARObject, short_name: str):
63
30
  if type(self) == ApplicationDataType:
@@ -78,30 +45,6 @@ class ApplicationCompositeDataType(ApplicationDataType, metaclass=ABCMeta):
78
45
 
79
46
  super().__init__(parent, short_name)
80
47
 
81
- class ApplicationArrayElement(ApplicationCompositeElementDataPrototype):
82
- def __init__(self, parent: ARObject, short_name: str):
83
- super().__init__(parent, short_name)
84
-
85
- self.arraySizeHandling = None # type: str
86
- self.arraySizeSemantics = None # type: str
87
- self.indexDataTypeRef = None # type: RefType
88
- self.maxNumberOfElements = None # type: ARNumerical
89
-
90
- def setArraySizeHandling(self, handling: str):
91
- self.arraySizeHandling = handling
92
- return self
93
-
94
- def setArraySizeSemantics(self, semantics: str):
95
- self.arraySizeSemantics = semantics
96
- return self
97
-
98
- def setIndexDataTypeRef(self, ref: RefType):
99
- self.indexDataTypeRef = ref
100
- return self
101
-
102
- def setMaxNumberOfElements(self, number: ARNumerical):
103
- self.maxNumberOfElements = number
104
- return self
105
48
 
106
49
  class ApplicationArrayDataType(ApplicationCompositeDataType):
107
50
  def __init__(self, parent: ARObject, short_name: str):
@@ -116,7 +59,8 @@ class ApplicationArrayDataType(ApplicationCompositeDataType):
116
59
  self.elements[short_name] = array_element
117
60
  self.element = self.elements[short_name]
118
61
  return self.elements[short_name]
119
-
62
+
63
+
120
64
  class ApplicationRecordDataType(ApplicationCompositeDataType):
121
65
  def __init__(self, parent: ARObject, short_name: str):
122
66
  super().__init__(parent, short_name)
@@ -134,17 +78,17 @@ class ApplicationRecordDataType(ApplicationCompositeDataType):
134
78
  return self.record_elements
135
79
 
136
80
 
137
-
138
-
139
81
  class DataTypeMap(ARObject):
140
82
  def __init__(self):
83
+
141
84
  self.application_data_type_ref = None # type: RefType
142
85
  self.implementation_data_type_ref = None # type: RefType
143
86
 
87
+
144
88
  class DataTypeMappingSet(ARElement):
145
89
  def __init__(self, parent: ARObject, short_name: str):
146
90
  super().__init__(parent, short_name)
147
-
91
+
148
92
  self._dataTypeMaps = [] # type: List[DataTypeMap]
149
93
  self._modeRequestTypeMaps = [] # type: List[ModeRequestTypeMap]
150
94
 
@@ -153,11 +97,9 @@ class DataTypeMappingSet(ARElement):
153
97
 
154
98
  def getDataTypeMaps(self) -> List[DataTypeMap]:
155
99
  return self._dataTypeMaps
156
-
100
+
157
101
  def addModeRequestTypeMap(self, map: ModeRequestTypeMap):
158
102
  self._modeRequestTypeMaps.append(map)
159
103
 
160
104
  def getModeRequestTypeMaps(self) -> List[ModeRequestTypeMap]:
161
- return self._modeRequestTypeMaps
162
-
163
-
105
+ return self._modeRequestTypeMaps
@@ -0,0 +1,177 @@
1
+ from ..GenericStructure.GeneralTemplateClasses.Identifiable import Identifiable
2
+ from ..GenericStructure.GeneralTemplateClasses.ArObject import ARObject
3
+ from ..GenericStructure.GeneralTemplateClasses.PrimitiveTypes import Integer, NameToken, PositiveInteger, RefType
4
+ from ..SystemTemplate.InstanceRefs import VariableDataPrototypeInSystemInstanceRef
5
+ from typing import List
6
+
7
+ class EndToEndDescription(ARObject):
8
+ def __init__(self):
9
+ super().__init__()
10
+
11
+ self.category = None # type: NameToken
12
+ self.counterOffset = None # type: PositiveInteger
13
+ self.crcOffset = None # type: PositiveInteger
14
+ self.dataIds = [] # type: List[PositiveInteger]
15
+ self.dataIdMode = None # type: PositiveInteger
16
+ self.dataIdNibbleOffset = None # type: PositiveInteger
17
+ self.dataLength = None # type: PositiveInteger
18
+ self.maxDeltaCounterInit = None # type: PositiveInteger
19
+ self.maxNoNewOrRepeatedData = None # type: int
20
+ self.syncCounterInit = None # type: PositiveInteger
21
+
22
+ def getCategory(self):
23
+ return self.category
24
+
25
+ def setCategory(self, value):
26
+ self.category = value
27
+ return self
28
+
29
+ def getCounterOffset(self):
30
+ return self.counterOffset
31
+
32
+ def setCounterOffset(self, value):
33
+ self.counterOffset = value
34
+ return self
35
+
36
+ def getCrcOffset(self):
37
+ return self.crcOffset
38
+
39
+ def setCrcOffset(self, value):
40
+ self.crcOffset = value
41
+ return self
42
+
43
+ def getDataIds(self) -> List[PositiveInteger]:
44
+ return sorted(self.dataIds, key = lambda a: a)
45
+
46
+ def addDataId(self, id: PositiveInteger):
47
+ self.dataIds.append(id)
48
+ return self
49
+
50
+ def getDataIdMode(self):
51
+ return self.dataIdMode
52
+
53
+ def setDataIdMode(self, value):
54
+ self.dataIdMode = value
55
+ return self
56
+
57
+ def getDataIdNibbleOffset(self):
58
+ return self.dataIdNibbleOffset
59
+
60
+ def setDataIdNibbleOffset(self, value):
61
+ self.dataIdNibbleOffset = value
62
+ return self
63
+
64
+ def getDataLength(self):
65
+ return self.dataLength
66
+
67
+ def setDataLength(self, value):
68
+ self.dataLength = value
69
+ return self
70
+
71
+ def getMaxDeltaCounterInit(self):
72
+ return self.maxDeltaCounterInit
73
+
74
+ def setMaxDeltaCounterInit(self, value):
75
+ self.maxDeltaCounterInit = value
76
+ return self
77
+
78
+ def getMaxNoNewOrRepeatedData(self):
79
+ return self.maxNoNewOrRepeatedData
80
+
81
+ def setMaxNoNewOrRepeatedData(self, value):
82
+ self.maxNoNewOrRepeatedData = value
83
+ return self
84
+
85
+ def getSyncCounterInit(self):
86
+ return self.syncCounterInit
87
+
88
+ def setSyncCounterInit(self, value):
89
+ self.syncCounterInit = value
90
+ return self
91
+
92
+
93
+ class EndToEndProtectionVariablePrototype(ARObject):
94
+ def __init__(self):
95
+ super().__init__()
96
+
97
+ self._receiverIRefs = [] # type: List[VariableDataPrototypeInSystemInstanceRef]
98
+ self.senderIRef = None # type: VariableDataPrototypeInSystemInstanceRef
99
+ self.shortLabel = None # type: str
100
+
101
+ def addReceiverIref(self, iref: VariableDataPrototypeInSystemInstanceRef):
102
+ self._receiverIRefs.append(iref)
103
+
104
+ def getReceiverIrefs(self) -> List[VariableDataPrototypeInSystemInstanceRef]:
105
+ return self._receiverIRefs
106
+
107
+ class EndToEndProtectionISignalIPdu(ARObject):
108
+ def __init__(self):
109
+ super().__init__()
110
+
111
+ self.dataOffset = None # type: Integer
112
+ self.iSignalGroupRef = None # type: RefType
113
+ self.iSignalIPduRef = None # type: RefType
114
+
115
+ def getDataOffset(self):
116
+ return self.dataOffset
117
+
118
+ def setDataOffset(self, value):
119
+ self.dataOffset = value
120
+ return self
121
+
122
+ def getISignalGroupRef(self):
123
+ return self.iSignalGroupRef
124
+
125
+ def setISignalGroupRef(self, value):
126
+ self.iSignalGroupRef = value
127
+ return self
128
+
129
+ def getISignalIPduRef(self):
130
+ return self.iSignalIPduRef
131
+
132
+ def setISignalIPduRef(self, value):
133
+ self.iSignalIPduRef = value
134
+ return self
135
+
136
+
137
+ class EndToEndProtection(Identifiable):
138
+ def __init__(self, parent: ARObject, short_name: str):
139
+ super().__init__(parent, short_name)
140
+
141
+ self.endToEndProfile = None # type: EndToEndDescription
142
+ self.endToEndProtectionISignalIPdus = [] # type: List[EndToEndProtectionISignalIPdu]
143
+ self.endToEndProtectionVariablePrototypes = [] # type: List[EndToEndProtectionVariablePrototype]
144
+
145
+ def getEndToEndProfile(self):
146
+ return self.endToEndProfile
147
+
148
+ def setEndToEndProfile(self, value):
149
+ self.endToEndProfile = value
150
+ return self
151
+
152
+ def getEndToEndProtectionISignalIPdus(self):
153
+ return self.endToEndProtectionISignalIPdus
154
+
155
+ def addEndToEndProtectionISignalIPdu(self, value):
156
+ self.endToEndProtectionISignalIPdus.append(value)
157
+ return self
158
+
159
+ def getEndToEndProtectionVariablePrototypes(self) -> List[EndToEndProtectionVariablePrototype]:
160
+ return self.endToEndProtectionVariablePrototypes
161
+
162
+ def addEndToEndProtectionVariablePrototype(self, prototype: EndToEndProtectionVariablePrototype):
163
+ self.endToEndProtectionVariablePrototypes.append(prototype)
164
+
165
+
166
+ class EndToEndProtectionSet(Identifiable):
167
+ def __init__(self, parent: ARObject, short_name: str):
168
+ super().__init__(parent, short_name)
169
+
170
+ def createEndToEndProtection(self, short_name: str) -> EndToEndProtection:
171
+ if (short_name not in self.elements):
172
+ protection = EndToEndProtection(self, short_name)
173
+ self.elements[short_name] = protection
174
+ return self.elements[short_name]
175
+
176
+ def getEndToEndProtections(self) -> List[EndToEndProtection]:
177
+ return sorted(filter(lambda c: isinstance(c, EndToEndProtection), self.elements.values()), key= lambda e: e.short_name)
@@ -0,0 +1,11 @@
1
+ from ..GenericStructure.GeneralTemplateClasses.ArObject import ARObject
2
+ from ..GenericStructure.GeneralTemplateClasses.PrimitiveTypes import RefType
3
+ from ..CommonStructure.Implementation import Implementation
4
+
5
+ class SwcImplementation(Implementation):
6
+ def __init__(self, parent: ARObject, short_name: str) -> None:
7
+ super().__init__(parent, short_name)
8
+
9
+ self.behavior_ref = None # type: RefType
10
+ self.per_instance_memory_size = None
11
+ self.required_rte_vendor = ""
@@ -1,7 +1,7 @@
1
1
  from abc import ABCMeta
2
2
 
3
- from .....general_structure import Identifiable
4
- from .....ar_object import ARObject
3
+ from ...GenericStructure.GeneralTemplateClasses.Identifiable import Identifiable
4
+ from ...GenericStructure.GeneralTemplateClasses.ArObject import ARObject
5
5
 
6
6
  class AbstractAccessPoint(Identifiable, metaclass = ABCMeta):
7
7
  def __init__(self, parent: ARObject, short_name: str):
@@ -1,8 +1,10 @@
1
- from .....general_structure import Identifiable
2
- from .....ar_object import ARLiteral, ARObject
3
- from ....msr.data_dictionary.data_def_properties import SwDataDefProps
4
- from ..swc_internal_behavior.instance_refs_usage import AutosarParameterRef, AutosarVariableRef
5
- from .access_count import AbstractAccessPoint
1
+ from ....AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.AccessCount import AbstractAccessPoint
2
+ from ....AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.InstanceRefsUsage import AutosarParameterRef
3
+ from ....AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.ArObject import ARObject
4
+ from ....AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.Identifiable import Identifiable
5
+ from ....AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import ARLiteral
6
+ from ....MSR.DataDictionary.DataDefProperties import SwDataDefProps
7
+
6
8
  class ParameterAccess(AbstractAccessPoint):
7
9
  def __init__(self, parent: ARObject, short_name: str):
8
10
  super().__init__(parent, short_name)
@@ -0,0 +1,24 @@
1
+ from ...GenericStructure.GeneralTemplateClasses.ArObject import ARObject
2
+ from ...GenericStructure.GeneralTemplateClasses.PrimitiveTypes import ARLiteral, RefType
3
+ from typing import List
4
+
5
+ class IncludedDataTypeSet(ARObject):
6
+ def __init__(self):
7
+ super().__init__()
8
+
9
+ self.data_type_refs = [] # type: List[RefType]
10
+ self.literal_prefix = None # type: ARLiteral
11
+
12
+ def addDataTypeRef(self, ref_type: RefType):
13
+ self.data_type_refs.append(ref_type)
14
+
15
+ def getDataTypeRefs(self) -> List[RefType]:
16
+ return self.data_type_refs
17
+
18
+ @property
19
+ def literalPrefix(self) -> ARLiteral:
20
+ return self.literal_prefix
21
+
22
+ @literalPrefix.setter
23
+ def literalPrefix(self, value: ARLiteral):
24
+ self.literal_prefix = value
@@ -1,8 +1,8 @@
1
1
  from typing import List
2
2
 
3
- from .....ar_object import ARObject
4
- from .....ar_ref import RefType
5
- from ...generic_structure.abstract_structure import AtpInstanceRef
3
+ from ...GenericStructure.GeneralTemplateClasses.ArObject import ARObject
4
+ from ...GenericStructure.GeneralTemplateClasses.PrimitiveTypes import RefType
5
+ from ...GenericStructure.AbstractStructure import AtpInstanceRef
6
6
 
7
7
  class ArVariableInImplementationDataInstanceRef(AtpInstanceRef):
8
8
  def __init__(self):
@@ -1,7 +1,7 @@
1
- from .access_count import AbstractAccessPoint
2
- from ..components.instance_refs import PModeGroupInAtomicSwcInstanceRef, RModeGroupInAtomicSWCInstanceRef
1
+ from .AccessCount import AbstractAccessPoint
2
+ from ..Components.InstanceRefs import PModeGroupInAtomicSwcInstanceRef, RModeGroupInAtomicSWCInstanceRef
3
3
  from .....rpt_scenario import ModeAccessPointIdent
4
- from .....ar_object import ARObject
4
+ from ...GenericStructure.GeneralTemplateClasses.ArObject import ARObject
5
5
 
6
6
  class ModeAccessPoint(ARObject):
7
7
  def __init__(self):
@@ -1,8 +1,7 @@
1
-
2
- from .m2.msr.data_dictionary.data_def_properties import SwDataDefProps
3
- from .ar_object import ARLiteral, ARObject
4
- from .general_structure import Identifiable
5
-
1
+ from ...GenericStructure.GeneralTemplateClasses.ArObject import ARObject
2
+ from ...GenericStructure.GeneralTemplateClasses.Identifiable import Identifiable
3
+ from ...GenericStructure.GeneralTemplateClasses.PrimitiveTypes import ARLiteral
4
+ from .....M2.MSR.DataDictionary.DataDefProperties import SwDataDefProps
6
5
 
7
6
  class PerInstanceMemory(Identifiable):
8
7
  def __init__(self, parent: ARObject, short_name: str):
@@ -39,4 +38,4 @@ class PerInstanceMemory(Identifiable):
39
38
 
40
39
  def setTypeDefinition(self, value):
41
40
  self.typeDefinition = value
42
- return self
41
+ return self
@@ -1,7 +1,7 @@
1
1
  from abc import ABCMeta
2
- from .....ar_object import ARObject
3
- from ..composition.instance_refs import ROperationInAtomicSwcInstanceRef
4
- from .access_count import AbstractAccessPoint
2
+ from ...GenericStructure.GeneralTemplateClasses.ArObject import ARObject
3
+ from ..Composition.InstanceRefs import ROperationInAtomicSwcInstanceRef
4
+ from .AccessCount import AbstractAccessPoint
5
5
 
6
6
 
7
7
  class ServerCallPoint(AbstractAccessPoint, metaclass = ABCMeta):
@@ -0,0 +1,23 @@
1
+ from ....AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.ArObject import ARObject
2
+ from ....AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import RefType
3
+
4
+ class RoleBasedPortAssignment(ARObject):
5
+ def __init__(self):
6
+ super().__init__()
7
+
8
+ self.portPrototypeRef = None # type: RefType
9
+ self.role = None # type: Identifier
10
+
11
+ def getPortPrototypeRef(self):
12
+ return self.portPrototypeRef
13
+
14
+ def setPortPrototypeRef(self, value):
15
+ self.portPrototypeRef = value
16
+ return self
17
+
18
+ def getRole(self):
19
+ return self.role
20
+
21
+ def setRole(self, value):
22
+ self.role = value
23
+ return self
@@ -1,6 +1,6 @@
1
1
 
2
- from .access_count import AbstractAccessPoint
3
- from .....ar_object import ARObject
2
+ from .AccessCount import AbstractAccessPoint
3
+ from ...GenericStructure.GeneralTemplateClasses.ArObject import ARObject
4
4
 
5
5
 
6
6
  class InternalTriggeringPoint(AbstractAccessPoint):
@@ -1,16 +1,15 @@
1
1
 
2
- from typing import Dict, List
3
-
4
- from .data_elements import ParameterAccess, VariableAccess
5
- from .server_call import ServerCallPoint
6
- from .mode_declaration_group import ModeAccessPoint, ModeSwitchPoint
7
- from .trigger import InternalTriggeringPoint
2
+ from .ServiceMapping import *
8
3
 
9
- from .....ar_ref import RefType
10
- from .....ar_object import ARBoolean, ARLiteral
11
- from .....common_structure import ExecutableEntity
12
- from .....ar_object import ARObject
4
+ from typing import Dict, List
13
5
 
6
+ from ...GenericStructure.GeneralTemplateClasses.PrimitiveTypes import ARLiteral, RefType, ARBoolean
7
+ from ...SWComponentTemplate.SwcInternalBehavior.DataElements import ParameterAccess, VariableAccess
8
+ from ...SWComponentTemplate.SwcInternalBehavior.ServerCall import ServerCallPoint
9
+ from ...SWComponentTemplate.SwcInternalBehavior.ModeDeclarationGroup import ModeAccessPoint, ModeSwitchPoint
10
+ from ...SWComponentTemplate.SwcInternalBehavior.Trigger import InternalTriggeringPoint
11
+ from ...GenericStructure.GeneralTemplateClasses.ArObject import ARObject
12
+ from ...CommonStructure.InternalBehavior import ExecutableEntity
14
13
 
15
14
  class RunnableEntityArgument(ARObject):
16
15
  def __init__(self):
@@ -1,12 +1,16 @@
1
1
  from abc import ABCMeta
2
2
  from typing import List
3
3
 
4
- from ..data_type.data_prototypes import ParameterDataPrototype, VariableDataPrototype, AutosarDataPrototype
5
- from .....ar_object import ARBoolean, ARLiteral, ARNumerical
6
- from .....common_structure import ModeDeclarationGroupPrototype, Trigger
7
- from .....datatype import AtpType
8
- from .....general_structure import ARObject, Identifiable, AtpFeature
9
- from .....ar_ref import RefType
4
+ from ...CommonStructure.TriggerDeclaration import Trigger
5
+ from ...GenericStructure.GeneralTemplateClasses.Identifiable import Identifiable
6
+ from ...GenericStructure.GeneralTemplateClasses.ArObject import ARObject
7
+ from ...GenericStructure.GeneralTemplateClasses.PrimitiveTypes import ARLiteral, ARNumerical
8
+ from ..Datatype.DataPrototypes import ParameterDataPrototype, VariableDataPrototype, AutosarDataPrototype
9
+ from ...GenericStructure.GeneralTemplateClasses.PrimitiveTypes import ARBoolean
10
+ from ...CommonStructure.ModeDeclaration import ModeDeclarationGroupPrototype
11
+ from ...GenericStructure.AbstractStructure import AtpType
12
+ from ...GenericStructure.AbstractStructure import AtpFeature
13
+ from ...GenericStructure.GeneralTemplateClasses.PrimitiveTypes import RefType
10
14
 
11
15
  class PortInterface(AtpType, metaclass = ABCMeta):
12
16
  def __init__(self, parent: ARObject, short_name: str):
@@ -127,11 +131,11 @@ class SenderReceiverInterface(DataInterface):
127
131
 
128
132
  def createInvalidationPolicy(self) -> InvalidationPolicy:
129
133
  policy = InvalidationPolicy(self)
130
- self.invalidation_polivys.append(policy)
134
+ self.invalidationPolicies.append(policy)
131
135
  return policy
132
136
 
133
137
  def getInvalidationPolicys(self) -> List[InvalidationPolicy]:
134
- return list(filter(lambda c: isinstance(c, InvalidationPolicy), self.invalidation_polivys))
138
+ return list(filter(lambda c: isinstance(c, InvalidationPolicy), self.invalidationPolicies))
135
139
 
136
140
  class ArgumentDataPrototype(AutosarDataPrototype):
137
141
  def __init__(self, parent: ARObject, short_name: str):
@@ -1,5 +1,5 @@
1
- from .....ar_ref import RefType
2
- from ...generic_structure.abstract_structure import AtpInstanceRef
1
+ from ...GenericStructure.GeneralTemplateClasses.PrimitiveTypes import RefType
2
+ from ...GenericStructure.AbstractStructure import AtpInstanceRef
3
3
 
4
4
  class ApplicationCompositeElementInPortInterfaceInstanceRef(AtpInstanceRef):
5
5
  def __init__(self):