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.
Files changed (170) hide show
  1. armodel/cli/arxml_dump_cli.py +13 -10
  2. armodel/cli/arxml_format_cli.py +1 -2
  3. armodel/cli/connector2xlsx_cli.py +2 -3
  4. armodel/cli/connector_update_cli.py +2 -5
  5. armodel/cli/memory_section_cli.py +2 -2
  6. armodel/cli/swc_list_cli.py +2 -3
  7. armodel/cli/system_signal_cli.py +2 -2
  8. armodel/lib/sw_component.py +3 -3
  9. armodel/lib/system_signal.py +3 -5
  10. armodel/models/{m2/autosar_templates/autosar_top_level_structure.py → M2/AUTOSARTemplates/AutosarTopLevelStructure.py} +5 -7
  11. armodel/models/{bsw_module_template.py → M2/AUTOSARTemplates/BswModuleTemplate/BswBehavior.py} +113 -140
  12. armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswImplementation.py +60 -0
  13. armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswInterfaces.py +52 -0
  14. armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswOverview.py +77 -0
  15. armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/__init__.py +4 -0
  16. armodel/models/M2/AUTOSARTemplates/CommonStructure/Implementation.py +238 -0
  17. armodel/models/{m2/autosar_templates/common_structure/implementation_data_types.py → M2/AUTOSARTemplates/CommonStructure/ImplementationDataTypes.py} +7 -6
  18. armodel/models/M2/AUTOSARTemplates/CommonStructure/InternalBehavior.py +119 -0
  19. armodel/models/M2/AUTOSARTemplates/CommonStructure/ModeDeclaration.py +96 -0
  20. armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/MemorySectionUsage.py +69 -0
  21. armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/__init__.py +20 -0
  22. armodel/models/{service_needs.py → M2/AUTOSARTemplates/CommonStructure/ServiceNeeds.py} +13 -9
  23. armodel/models/M2/AUTOSARTemplates/CommonStructure/SwcBswMapping.py +35 -0
  24. armodel/models/M2/AUTOSARTemplates/CommonStructure/SwcInternalBehavior/ModeDeclarationGroup.py +24 -0
  25. armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/ExecutionOrderConstraint.py +45 -0
  26. armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/TimingConstraint.py +24 -0
  27. armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/TimingExtensions.py +33 -0
  28. armodel/models/M2/AUTOSARTemplates/CommonStructure/TriggerDeclaration.py +9 -0
  29. armodel/models/{m2/autosar_templates/common_structure → M2/AUTOSARTemplates/CommonStructure}/__init__.py +4 -3
  30. armodel/models/{m2/autosar_templates/ecuc_description_template.py → M2/AUTOSARTemplates/ECUCDescriptionTemplate.py} +6 -7
  31. armodel/models/{m2/autosar_templates/generic_structure/abstract_structure.py → M2/AUTOSARTemplates/GenericStructure/AbstractStructure.py} +25 -5
  32. armodel/models/{m2/autosar_templates/generic_structure/ar_package.py → M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/ARPackage.py} +41 -29
  33. armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/ArObject.py +16 -0
  34. armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/ElementCollection.py +1 -0
  35. armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/EngineeringObject.py +52 -0
  36. armodel/models/{general_structure.py → M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/Identifiable.py} +42 -159
  37. armodel/models/{ar_object.py → M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/PrimitiveTypes.py} +179 -71
  38. armodel/models/M2/AUTOSARTemplates/GenericStructure/__init__.py +1 -0
  39. armodel/models/{m2/autosar_templates/sw_component_template/communication.py → M2/AUTOSARTemplates/SWComponentTemplate/Communication.py} +22 -5
  40. armodel/models/{m2/autosar_templates/sw_component_template/components/instance_refs.py → M2/AUTOSARTemplates/SWComponentTemplate/Components/InstanceRefs.py} +2 -4
  41. armodel/models/{m2/autosar_templates/sw_component_template/components → M2/AUTOSARTemplates/SWComponentTemplate/Components}/__init__.py +114 -10
  42. armodel/models/{m2/autosar_templates/sw_component_template/composition/instance_refs.py → M2/AUTOSARTemplates/SWComponentTemplate/Composition/InstanceRefs.py} +2 -5
  43. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Composition/__init__.py +96 -0
  44. armodel/models/{m2/autosar_templates/sw_component_template/data_type/data_prototypes.py → M2/AUTOSARTemplates/SWComponentTemplate/Datatype/DataPrototypes.py} +24 -8
  45. armodel/models/{datatype.py → M2/AUTOSARTemplates/SWComponentTemplate/Datatype/Datatypes.py} +16 -73
  46. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/EndToEndProtection.py +177 -0
  47. armodel/models/{m2/autosar_templates/sw_component_template/port_interface/instance_refs.py → M2/AUTOSARTemplates/SWComponentTemplate/PortInterface/InstanceRefs.py} +2 -2
  48. armodel/models/{m2/autosar_templates/sw_component_template/port_interface → M2/AUTOSARTemplates/SWComponentTemplate/PortInterface}/__init__.py +10 -6
  49. armodel/models/{rpt_scenario.py → M2/AUTOSARTemplates/SWComponentTemplate/RPTScenario.py} +4 -6
  50. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcImplementation.py +34 -0
  51. armodel/models/{m2/autosar_templates/sw_component_template/swc_internal_behavior/access_count.py → M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/AccessCount.py} +2 -2
  52. armodel/models/{m2/autosar_templates/sw_component_template/swc_internal_behavior/data_elements.py → M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/DataElements.py} +7 -5
  53. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/IncludedDataTypes.py +24 -0
  54. armodel/models/{m2/autosar_templates/sw_component_template/swc_internal_behavior/instance_refs_usage.py → M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/InstanceRefsUsage.py} +3 -3
  55. armodel/models/{m2/autosar_templates/sw_component_template/swc_internal_behavior/mode_declaration_group.py → M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/ModeDeclarationGroup.py} +4 -4
  56. armodel/models/{per_instance_memory.py → M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/PerInstanceMemory.py} +5 -6
  57. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/PortAPIOptions.py +86 -0
  58. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/RTEEvents.py +174 -0
  59. armodel/models/{m2/autosar_templates/sw_component_template/swc_internal_behavior/server_call.py → M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/ServerCall.py} +3 -4
  60. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/ServiceMapping.py +57 -0
  61. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/Trigger.py +8 -0
  62. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/__init__.py +358 -0
  63. armodel/models/{m2/autosar_templates/system_template/data_mapping.py → M2/AUTOSARTemplates/SystemTemplate/DataMapping.py} +2 -3
  64. armodel/models/{fibex/can_communication.py → M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Can/CanCommunication.py} +3 -3
  65. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet/EthernetFrame.py +14 -0
  66. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet/ServiceInstances.py +116 -0
  67. armodel/models/{fibex/lin_communication.py → M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Lin/LinCommunication.py} +5 -2
  68. armodel/models/{fibex/fibex_4_multiplatform.py → M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Multiplatform.py} +5 -4
  69. armodel/models/{fibex/fibex_core/core_communication.py → M2/AUTOSARTemplates/SystemTemplate/Fibex/FibexCore/CoreCommunication.py} +4 -6
  70. armodel/models/{fibex/fibex_core/core_topology.py → M2/AUTOSARTemplates/SystemTemplate/Fibex/FibexCore/CoreTopology.py} +6 -7
  71. armodel/models/{m2/autosar_templates/system_template/instance_refs.py → M2/AUTOSARTemplates/SystemTemplate/InstanceRefs.py} +2 -2
  72. armodel/models/{m2/autosar_templates/system_template/network_management.py → M2/AUTOSARTemplates/SystemTemplate/NetworkManagement.py} +5 -6
  73. armodel/models/M2/AUTOSARTemplates/SystemTemplate/TransportProtocols.py +6 -0
  74. armodel/models/{m2/autosar_templates/system_template → M2/AUTOSARTemplates/SystemTemplate}/__init__.py +3 -4
  75. armodel/models/M2/MSR/AsamHdo/AdminData.py +18 -0
  76. armodel/models/M2/MSR/AsamHdo/BaseTypes.py +77 -0
  77. armodel/models/{m2_msr.py → M2/MSR/AsamHdo/ComputationMethod.py} +43 -28
  78. armodel/models/{global_constraints.py → M2/MSR/AsamHdo/Constraints/GlobalConstraints.py} +6 -4
  79. armodel/models/M2/MSR/AsamHdo/SpecialData.py +60 -0
  80. armodel/models/{m2/msr/asam_hdo/units.py → M2/MSR/AsamHdo/Units.py} +3 -3
  81. armodel/models/M2/MSR/CalibrationData/CalibrationValue.py +26 -0
  82. armodel/models/{m2/msr/data_dictionary/auxillary_objects.py → M2/MSR/DataDictionary/AuxillaryObjects.py} +3 -4
  83. armodel/models/M2/MSR/DataDictionary/Axis.py +145 -0
  84. armodel/models/M2/MSR/DataDictionary/CalibrationParameter.py +37 -0
  85. armodel/models/{m2/msr/data_dictionary/data_def_properties.py → M2/MSR/DataDictionary/DataDefProperties.py} +19 -10
  86. armodel/models/{record_layout.py → M2/MSR/DataDictionary/RecordLayout.py} +26 -25
  87. armodel/models/{annotation.py → M2/MSR/Documentation/Annotation.py} +8 -10
  88. armodel/models/{m2/msr/documentation/block_elements.py → M2/MSR/Documentation/BlockElements.py} +2 -2
  89. armodel/models/M2/MSR/Documentation/TextModel/LanguageDataModel.py +16 -0
  90. armodel/models/{multilanguage_data.py → M2/MSR/Documentation/TextModel/MultilanguageData.py} +20 -32
  91. armodel/models/M2/MSR/Documentation/TextModel/__init__.py +0 -0
  92. armodel/models/M2/MSR/Documentation/__init__.py +3 -0
  93. armodel/models/M2/MSR/__init__.py +1 -0
  94. armodel/models/M2/__init__.py +0 -0
  95. armodel/models/__init__.py +50 -24
  96. armodel/parser/abstract_arxml_parser.py +8 -4
  97. armodel/parser/arxml_parser.py +117 -90
  98. armodel/parser/connector_xlsx_parser.py +5 -3
  99. armodel/parser/file_parser.py +2 -1
  100. armodel/report/connector_xls_report.py +3 -2
  101. armodel/tests/test_armodel/models/test_ar_object.py +2 -3
  102. armodel/tests/test_armodel/models/test_ar_package.py +21 -9
  103. armodel/tests/test_armodel/models/test_ar_ref.py +7 -5
  104. armodel/tests/test_armodel/models/test_bsw_module_template.py +5 -1
  105. armodel/tests/test_armodel/models/test_common_structure.py +11 -5
  106. armodel/tests/test_armodel/models/test_data_dictionary.py +2 -2
  107. armodel/tests/test_armodel/models/test_data_prototype.py +8 -4
  108. armodel/tests/test_armodel/models/test_datatype.py +28 -14
  109. armodel/tests/test_armodel/models/test_general_structure.py +12 -2
  110. armodel/tests/test_armodel/models/test_implementation.py +3 -2
  111. armodel/tests/test_armodel/models/test_m2_msr.py +4 -2
  112. armodel/tests/test_armodel/models/test_port_interface.py +21 -11
  113. armodel/tests/test_armodel/models/test_port_prototype.py +1 -1
  114. armodel/tests/test_armodel/parser/test_parse_bswmd.py +13 -13
  115. armodel/tests/test_armodel/parser/test_sw_components.py +2 -2
  116. armodel/tests/test_armodel/parser/test_system.py +30 -0
  117. armodel/writer/abstract_arxml_writer.py +5 -2
  118. armodel/writer/arxml_writer.py +136 -91
  119. {armodel-1.6.2.dist-info → armodel-1.6.4.dist-info}/METADATA +16 -1
  120. armodel-1.6.4.dist-info/RECORD +156 -0
  121. armodel/lib/data_analyzer.py +0 -34
  122. armodel/models/ar_package.py +0 -641
  123. armodel/models/ar_ref.py +0 -25
  124. armodel/models/calibration.py +0 -119
  125. armodel/models/common_structure.py +0 -272
  126. armodel/models/communication.py +0 -17
  127. armodel/models/data_def_properties.py +0 -16
  128. armodel/models/data_dictionary.py +0 -59
  129. armodel/models/data_prototype.py +0 -103
  130. armodel/models/end_to_end_protection.py +0 -67
  131. armodel/models/fibex/fibex_core.py +0 -341
  132. armodel/models/fibex/lin_topology.py +0 -7
  133. armodel/models/implementation.py +0 -135
  134. armodel/models/internal_behavior.py +0 -63
  135. armodel/models/m2/autosar_templates/common_structure/implementation.py +0 -21
  136. armodel/models/m2/autosar_templates/sw_component_template/composition/__init__.py +0 -154
  137. armodel/models/m2/autosar_templates/sw_component_template/port_interface.py +0 -236
  138. armodel/models/m2/autosar_templates/sw_component_template/swc_internal_behavior/__init__.py +0 -203
  139. armodel/models/m2/autosar_templates/sw_component_template/swc_internal_behavior/trigger.py +0 -10
  140. armodel/models/m2/autosar_templates/system_template/transport_protocols.py +0 -7
  141. armodel/models/mode_declaration.py +0 -8
  142. armodel/models/port_interface.py +0 -165
  143. armodel/models/port_prototype.py +0 -6
  144. armodel/models/service_mapping.py +0 -11
  145. armodel/models/sw_component.py +0 -385
  146. armodel/models/system_template/network_management.py +0 -7
  147. armodel/models/system_template/transport_protocols.py +0 -7
  148. armodel/models/timing.py +0 -91
  149. armodel/models/unit.py +0 -14
  150. armodel-1.6.2.dist-info/RECORD +0 -142
  151. /armodel/models/{fibex → M2/AUTOSARTemplates/CommonStructure/SwcInternalBehavior}/__init__.py +0 -0
  152. /armodel/models/{fibex/fibex_4_can → M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint}/__init__.py +0 -0
  153. /armodel/models/{fibex/fibex_4_lin → M2/AUTOSARTemplates/CommonStructure/Timing}/__init__.py +0 -0
  154. /armodel/models/{fibex/fibex_core → M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses}/__init__.py +0 -0
  155. /armodel/models/{m2 → M2/AUTOSARTemplates/SWComponentTemplate/Datatype}/__init__.py +0 -0
  156. /armodel/models/{m2/autosar_templates → M2/AUTOSARTemplates/SWComponentTemplate}/__init__.py +0 -0
  157. /armodel/models/{m2/autosar_templates/generic_structure → M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Can}/__init__.py +0 -0
  158. /armodel/models/{m2/autosar_templates/sw_component_template → M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet}/__init__.py +0 -0
  159. /armodel/models/{m2/autosar_templates/sw_component_template/data_type → M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Lin}/__init__.py +0 -0
  160. /armodel/models/{m2/msr → M2/AUTOSARTemplates/SystemTemplate/Fibex/FibexCore}/__init__.py +0 -0
  161. /armodel/models/{m2/msr/asam_hdo → M2/AUTOSARTemplates/SystemTemplate/Fibex}/__init__.py +0 -0
  162. /armodel/models/{m2/msr/data_dictionary → M2/AUTOSARTemplates}/__init__.py +0 -0
  163. /armodel/models/{m2/msr/documentation → M2/MSR/AsamHdo/Constraints}/__init__.py +0 -0
  164. /armodel/models/{system_template → M2/MSR/AsamHdo}/__init__.py +0 -0
  165. /armodel/models/{ecuc_parameter_def_template.py → M2/MSR/CalibrationData/__init__.py} +0 -0
  166. /armodel/models/{m2/autosar_templates/common_structure/constants.py → M2/MSR/DataDictionary/__init__.py} +0 -0
  167. {armodel-1.6.2.dist-info → armodel-1.6.4.dist-info}/LICENSE +0 -0
  168. {armodel-1.6.2.dist-info → armodel-1.6.4.dist-info}/WHEEL +0 -0
  169. {armodel-1.6.2.dist-info → armodel-1.6.4.dist-info}/entry_points.txt +0 -0
  170. {armodel-1.6.2.dist-info → armodel-1.6.4.dist-info}/top_level.txt +0 -0
@@ -1,14 +1,14 @@
1
1
  from abc import ABCMeta
2
2
  from typing import List
3
-
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
3
+ from .....M2.AUTOSARTemplates.SWComponentTemplate.Composition import AssemblySwConnector, DelegationSwConnector, SwComponentPrototype, SwConnector
4
+ from .....M2.AUTOSARTemplates.SWComponentTemplate.Components.InstanceRefs import InnerPortGroupInCompositionInstanceRef
5
+ from .....M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior import SwcInternalBehavior
6
+ from .....M2.AUTOSARTemplates.CommonStructure.Implementation import ImplementationProps
7
+ from .....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.Identifiable import Identifiable, ARElement
8
+ from .....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.ArObject import ARObject
9
+ from .....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import TRefType
10
+ from .....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import ARBoolean, RefType
11
+ from .....M2.AUTOSARTemplates.SWComponentTemplate.Communication import ClientComSpec, ModeSwitchReceiverComSpec, ModeSwitchSenderComSpec, NonqueuedReceiverComSpec, NonqueuedSenderComSpec, PPortComSpec, ParameterRequireComSpec, QueuedReceiverComSpec, QueuedSenderComSpec, RPortComSpec, ServerComSpec
12
12
 
13
13
  class SymbolProps(ImplementationProps):
14
14
  def __init__(self, parent: ARObject, short_name: str):
@@ -210,7 +210,7 @@ class PortGroup(Identifiable):
210
210
  def getOuterPortRefs(self) -> List[RefType]:
211
211
  return self._outer_port_ref
212
212
 
213
- class SwComponentType(ARElement, metaclass = ABCMeta):
213
+ class SwComponentType(ARElement, metaclass = ABCMeta):
214
214
  def __init__(self, parent: ARObject, short_name: str):
215
215
  super().__init__(parent, short_name)
216
216
 
@@ -244,3 +244,107 @@ class SwComponentType(ARElement, metaclass = ABCMeta):
244
244
  def getPortGroups(self) -> List[PortGroup]:
245
245
  return list(sorted(filter(lambda c: isinstance(c, PortGroup), self.elements.values()), key= lambda o: o.short_name))
246
246
 
247
+
248
+ class AtomicSwComponentType(SwComponentType, metaclass = ABCMeta):
249
+ def __init__(self, parent: ARObject, short_name: str):
250
+ super().__init__(parent, short_name)
251
+
252
+ def createSwcInternalBehavior(self, short_name) -> SwcInternalBehavior:
253
+ if (short_name not in self.elements):
254
+ if (len(list(filter(lambda e: isinstance(e, SwcInternalBehavior), self.elements.values()))) >= 1):
255
+ raise ValueError("The internal behavior of <%s> can not more than 1" % self.short_name)
256
+ behavior = SwcInternalBehavior(self, short_name)
257
+ self.elements[short_name] = behavior
258
+ return self.elements[short_name]
259
+
260
+ @property
261
+ def internal_behavior(self) -> SwcInternalBehavior:
262
+ return next(filter(lambda e: isinstance(e, SwcInternalBehavior), self.elements.values()))
263
+
264
+ class EcuAbstractionSwComponentType(AtomicSwComponentType):
265
+ def __init__(self, parent:ARObject, short_name: str):
266
+ super().__init__(parent, short_name)
267
+
268
+
269
+ class ApplicationSwComponentType(AtomicSwComponentType):
270
+ def __init__(self, parent: ARObject, short_name: str):
271
+ super().__init__(parent, short_name)
272
+
273
+
274
+ class ComplexDeviceDriverSwComponentType(AtomicSwComponentType):
275
+ def __init__(self, parent: ARObject, short_name: str):
276
+ super().__init__(parent, short_name)
277
+
278
+
279
+ class NvBlockSwComponentType(AtomicSwComponentType):
280
+ def __init__(self, parent: ARObject, short_name: str):
281
+ super().__init__(parent, short_name)
282
+
283
+
284
+ class SensorActuatorSwComponentType(AtomicSwComponentType):
285
+ def __init__(self, parent: ARObject, short_name: str):
286
+ super().__init__(parent, short_name)
287
+
288
+
289
+ class ServiceProxySwComponentType(AtomicSwComponentType):
290
+ def __init__(self, parent: ARObject, short_name: str):
291
+ super().__init__(parent, short_name)
292
+
293
+
294
+ class ServiceSwComponentType(AtomicSwComponentType):
295
+ def __init__(self, parent: ARObject, short_name: str):
296
+ super().__init__(parent, short_name)
297
+
298
+
299
+ class CompositionSwComponentType(SwComponentType):
300
+ def __init__(self, parent: ARObject, short_name: str):
301
+ super().__init__(parent, short_name)
302
+
303
+ self.constantValueMappingRefs = [] # type: List[RefType]
304
+ self.dataTypeMappingRefs = [] # type: List[RefType]
305
+ self.instantiationRTEEventProps = [] # type: List[InstantiationRTEEventProps]
306
+
307
+ def removeAllAssemblySwConnector(self):
308
+ for sw_connector in self.getAssemblySwConnectors():
309
+ self.elements.pop(sw_connector.short_name)
310
+
311
+ def removeAllDelegationSwConnector(self):
312
+ for sw_connector in self.getDelegationSwConnectors():
313
+ self.elements.pop(sw_connector.short_name)
314
+
315
+ def createAssemblySwConnector(self, short_name: str) -> AssemblySwConnector:
316
+ if (short_name not in self.elements):
317
+ connector = AssemblySwConnector(self, short_name)
318
+ self.elements[short_name] = connector
319
+ return self.elements[short_name]
320
+
321
+ def createDelegationSwConnector(self, short_name: str) -> DelegationSwConnector:
322
+ if short_name not in self.elements:
323
+ connector = DelegationSwConnector(self, short_name)
324
+ self.elements[short_name] = connector
325
+ return self.elements[short_name]
326
+
327
+ def getAssemblySwConnectors(self) -> List[AssemblySwConnector]:
328
+ return list(sorted(filter(lambda e: isinstance(e, AssemblySwConnector), self.elements.values()), key = lambda c: c.short_name))
329
+
330
+ def getDelegationSwConnectors(self) -> List[DelegationSwConnector]:
331
+ return list(sorted(filter(lambda e: isinstance(e, DelegationSwConnector), self.elements.values()), key = lambda c: c.short_name))
332
+
333
+ def getSwConnectors(self) -> List[SwConnector]:
334
+ return list(sorted(filter(lambda e: isinstance(e, SwConnector), self.elements.values()), key = lambda c: c.short_name))
335
+
336
+ def createSwComponentPrototype(self, short_name: str) -> SwComponentPrototype:
337
+ if (short_name not in self.elements):
338
+ connector = SwComponentPrototype(self, short_name)
339
+ self.elements[short_name] = connector
340
+ return self.elements[short_name]
341
+
342
+ def getSwComponentPrototypes(self) -> List[SwComponentPrototype]:
343
+ return list(filter(lambda e: isinstance(e, SwComponentPrototype), self.elements.values()))
344
+
345
+ def addDataTypeMapping(self, data_type_mapping_ref: RefType):
346
+ self.dataTypeMappingRefs.append(data_type_mapping_ref)
347
+
348
+ def getDataTypeMappings(self) -> List[RefType]:
349
+ return self.dataTypeMappingRefs
350
+
@@ -1,9 +1,6 @@
1
-
2
1
  from abc import ABCMeta
3
-
4
- from .....ar_ref import RefType
5
- from ...generic_structure.abstract_structure import AtpInstanceRef
6
-
2
+ from .....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import RefType
3
+ from .....M2.AUTOSARTemplates.GenericStructure.AbstractStructure import AtpInstanceRef
7
4
 
8
5
  class PortInCompositionTypeInstanceRef(AtpInstanceRef, metaclass = ABCMeta):
9
6
  def __init__(self):
@@ -0,0 +1,96 @@
1
+ from abc import ABCMeta
2
+ from .....M2.AUTOSARTemplates.SWComponentTemplate.Composition.InstanceRefs import PPortInCompositionInstanceRef, PortInCompositionTypeInstanceRef, RPortInCompositionInstanceRef
3
+ from .....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import RefType
4
+ from .....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.ArObject import ARObject
5
+ from .....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.Identifiable import Identifiable
6
+
7
+ class SwComponentPrototype(Identifiable):
8
+ def __init__(self, parent: ARObject, short_name: str):
9
+ super().__init__(parent, short_name)
10
+
11
+ self.typeTRef = None # type: RefType
12
+
13
+ def getTypeTRef(self):
14
+ return self.typeTRef
15
+
16
+ def setTypeTRef(self, value):
17
+ self.typeTRef = value
18
+ return self
19
+
20
+ class SwConnector(Identifiable, metaclass = ABCMeta):
21
+ def __init__(self, parent: ARObject, short_name: str):
22
+ super().__init__(parent, short_name)
23
+
24
+ self.mappingRef = None # type: RefType
25
+
26
+ def getMappingRef(self):
27
+ return self.mappingRef
28
+
29
+ def setMappingRef(self, value):
30
+ self.mappingRef = value
31
+ return self
32
+
33
+ class AssemblySwConnector(SwConnector):
34
+ def __init__(self, parent: ARObject, short_name: str):
35
+ super().__init__(parent, short_name)
36
+
37
+ self.providerIRef = None # type: PPortInCompositionInstanceRef
38
+ self.requesterIRef = None # type: RPortInCompositionInstanceRef
39
+
40
+ def getProviderIRef(self) -> PPortInCompositionInstanceRef:
41
+ return self.providerIRef
42
+
43
+ def setProviderIRef(self, value: PPortInCompositionInstanceRef):
44
+ self.providerIRef = value
45
+ return self
46
+
47
+ def getRequesterIRef(self) -> PPortInCompositionInstanceRef:
48
+ return self.requesterIRef
49
+
50
+ def setRequesterIRef(self, value: PPortInCompositionInstanceRef):
51
+ self.requesterIRef = value
52
+ return self
53
+
54
+ class DelegationSwConnector(SwConnector):
55
+ def __init__(self, parent: ARObject, short_name: str):
56
+ super().__init__(parent, short_name)
57
+
58
+ self.innerPortIRref = None # type: PortInCompositionTypeInstanceRef
59
+ self.outerPortRef = None # type: RefType
60
+
61
+ def getInnerPortIRref(self):
62
+ return self.innerPortIRref
63
+
64
+ def setInnerPortIRref(self, value):
65
+ self.innerPortIRref = value
66
+ return self
67
+
68
+ def getOuterPortRef(self):
69
+ return self.outerPortRef
70
+
71
+ def setOuterPortRef(self, value):
72
+ self.outerPortRef = value
73
+ return self
74
+
75
+
76
+ class PassThroughSwConnector(SwConnector):
77
+ def __init__(self, parent: ARObject, short_name: str):
78
+ super().__init__(parent, short_name)
79
+
80
+ self.providedOuterPortRef = None # type: RefType
81
+ self.requiredOuterPortRef = None # type: RefType
82
+
83
+ def getProvidedOuterPortRef(self):
84
+ return self.providedOuterPortRef
85
+
86
+ def setProvidedOuterPortRef(self, value):
87
+ self.providedOuterPortRef = value
88
+ return self
89
+
90
+ def getRequiredOuterPortRef(self):
91
+ return self.requiredOuterPortRef
92
+
93
+ def setRequiredOuterPortRef(self, value):
94
+ self.requiredOuterPortRef = value
95
+ return self
96
+
@@ -1,10 +1,10 @@
1
1
  from abc import ABCMeta
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
2
+ from .....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.ArObject import ARObject
3
+ from .....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import ARNumerical, TRefType
4
+ from .....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import RefType
5
+ from .....M2.MSR.DataDictionary.DataDefProperties import SwDataDefProps
6
+ from .....M2.AUTOSARTemplates.CommonStructure import ValueSpecification
7
+ from .....M2.AUTOSARTemplates.GenericStructure.AbstractStructure import AtpFeature
8
8
 
9
9
  class AtpPrototype(AtpFeature, metaclass = ABCMeta):
10
10
  def __init__(self, parent:ARObject, short_name: str):
@@ -36,7 +36,7 @@ class AutosarDataPrototype(DataPrototype, metaclass = ABCMeta):
36
36
 
37
37
  super().__init__(parent, short_name)
38
38
 
39
- self.typeTRef = None
39
+ self.typeTRef = None # type: TRefType
40
40
 
41
41
  def getTypeTRef(self):
42
42
  return self.typeTRef
@@ -76,7 +76,7 @@ class ApplicationCompositeElementDataPrototype(DataPrototype, metaclass = ABCMet
76
76
 
77
77
 
78
78
  class ApplicationArrayElement(ApplicationCompositeElementDataPrototype):
79
- def __init__(self, parent:ARObject, short_name: str):
79
+ def __init__(self, parent: ARObject, short_name: str):
80
80
  super().__init__(parent, short_name)
81
81
 
82
82
  self.arraySizeHandling = None # type: str
@@ -84,6 +84,22 @@ class ApplicationArrayElement(ApplicationCompositeElementDataPrototype):
84
84
  self.indexDataTypeRef = None # type: RefType
85
85
  self.maxNumberOfElements = None # type: ARNumerical
86
86
 
87
+ def setArraySizeHandling(self, handling: str):
88
+ self.arraySizeHandling = handling
89
+ return self
90
+
91
+ def setArraySizeSemantics(self, semantics: str):
92
+ self.arraySizeSemantics = semantics
93
+ return self
94
+
95
+ def setIndexDataTypeRef(self, ref: RefType):
96
+ self.indexDataTypeRef = ref
97
+ return self
98
+
99
+ def setMaxNumberOfElements(self, number: ARNumerical):
100
+ self.maxNumberOfElements = number
101
+ return self
102
+
87
103
  class ApplicationRecordElement(ApplicationCompositeElementDataPrototype):
88
104
  def __init__(self, parent:ARObject, short_name: str):
89
105
  super().__init__(parent, short_name)
@@ -1,47 +1,12 @@
1
- from abc import ABCMeta
2
1
  from typing import List
3
-
4
- from .m2.msr.data_dictionary.data_def_properties import SwDataDefProps
5
- from .ar_object import ARLiteral, ARNumerical
6
- from .ar_ref import RefType
7
- from .general_structure import ARElement, ARObject
8
- from .m2.autosar_templates.sw_component_template.data_type.data_prototypes import ApplicationCompositeElementDataPrototype, ApplicationRecordElement
9
- from .common_structure import ModeRequestTypeMap
10
-
11
- class BaseTypeDefinition(ARObject):
12
- def __init__(self):
13
- super().__init__()
14
-
15
- class BaseTypeDirectDefinition(BaseTypeDefinition):
16
- def __init__(self):
17
- super().__init__()
18
-
19
- self.base_type_encoding = None
20
- self.base_type_size = None # type: ARNumerical
21
- self.byteOrder = None # type: str
22
- self.mem_alignment = None # type: ARNumerical
23
- self.native_declaration = None
24
-
25
- class BaseType(ARElement, metaclass=ABCMeta):
26
- def __init__(self, parent: ARObject, short_name: str):
27
- if type(self) == BaseType:
28
- raise NotImplementedError("BaseType is an abstract class.")
29
-
30
- super().__init__(parent, short_name)
31
-
32
- self.baseTypeDefinition = BaseTypeDirectDefinition()
33
-
34
- class SwBaseType(BaseType):
35
- def __init__(self, parent: ARObject, short_name: str):
36
- super().__init__(parent, short_name)
37
-
38
- class AtpType(ARElement, metaclass=ABCMeta):
39
- def __init__(self, parent: ARObject, short_name: str):
40
- if type(self) == AtpType:
41
- raise NotImplementedError("AtpType is an abstract class.")
42
-
43
- super().__init__(parent, short_name)
44
-
2
+ from .....M2.AUTOSARTemplates.CommonStructure.ModeDeclaration import ModeRequestTypeMap
3
+ from .....M2.AUTOSARTemplates.GenericStructure.AbstractStructure import AtpType
4
+ from .....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.ArObject import ARObject
5
+ from .....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.Identifiable import ARElement
6
+ from .....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import ARLiteral, RefType
7
+ from .....M2.AUTOSARTemplates.SWComponentTemplate.Datatype.DataPrototypes import ApplicationArrayElement, ApplicationRecordElement
8
+ from .....M2.MSR.DataDictionary.DataDefProperties import SwDataDefProps
9
+ from abc import ABCMeta
45
10
 
46
11
  class AutosarDataType(AtpType, metaclass = ABCMeta):
47
12
  def __init__(self, parent: ARObject, short_name: str):
@@ -59,6 +24,7 @@ class AutosarDataType(AtpType, metaclass = ABCMeta):
59
24
  self.swDataDefProps = value
60
25
  return self
61
26
 
27
+
62
28
  class ApplicationDataType(AutosarDataType, metaclass = ABCMeta):
63
29
  def __init__(self, parent: ARObject, short_name: str):
64
30
  if type(self) == ApplicationDataType:
@@ -79,30 +45,6 @@ class ApplicationCompositeDataType(ApplicationDataType, metaclass=ABCMeta):
79
45
 
80
46
  super().__init__(parent, short_name)
81
47
 
82
- class ApplicationArrayElement(ApplicationCompositeElementDataPrototype):
83
- def __init__(self, parent: ARObject, short_name: str):
84
- super().__init__(parent, short_name)
85
-
86
- self.arraySizeHandling = None # type: str
87
- self.arraySizeSemantics = None # type: str
88
- self.indexDataTypeRef = None # type: RefType
89
- self.maxNumberOfElements = None # type: ARNumerical
90
-
91
- def setArraySizeHandling(self, handling: str):
92
- self.arraySizeHandling = handling
93
- return self
94
-
95
- def setArraySizeSemantics(self, semantics: str):
96
- self.arraySizeSemantics = semantics
97
- return self
98
-
99
- def setIndexDataTypeRef(self, ref: RefType):
100
- self.indexDataTypeRef = ref
101
- return self
102
-
103
- def setMaxNumberOfElements(self, number: ARNumerical):
104
- self.maxNumberOfElements = number
105
- return self
106
48
 
107
49
  class ApplicationArrayDataType(ApplicationCompositeDataType):
108
50
  def __init__(self, parent: ARObject, short_name: str):
@@ -117,7 +59,8 @@ class ApplicationArrayDataType(ApplicationCompositeDataType):
117
59
  self.elements[short_name] = array_element
118
60
  self.element = self.elements[short_name]
119
61
  return self.elements[short_name]
120
-
62
+
63
+
121
64
  class ApplicationRecordDataType(ApplicationCompositeDataType):
122
65
  def __init__(self, parent: ARObject, short_name: str):
123
66
  super().__init__(parent, short_name)
@@ -134,16 +77,18 @@ class ApplicationRecordDataType(ApplicationCompositeDataType):
134
77
  def getApplicationRecordElements(self) -> List[ApplicationRecordElement]:
135
78
  return self.record_elements
136
79
 
80
+
137
81
  class DataTypeMap(ARObject):
138
82
  def __init__(self):
139
83
 
140
84
  self.application_data_type_ref = None # type: RefType
141
85
  self.implementation_data_type_ref = None # type: RefType
142
86
 
87
+
143
88
  class DataTypeMappingSet(ARElement):
144
89
  def __init__(self, parent: ARObject, short_name: str):
145
90
  super().__init__(parent, short_name)
146
-
91
+
147
92
  self._dataTypeMaps = [] # type: List[DataTypeMap]
148
93
  self._modeRequestTypeMaps = [] # type: List[ModeRequestTypeMap]
149
94
 
@@ -152,11 +97,9 @@ class DataTypeMappingSet(ARElement):
152
97
 
153
98
  def getDataTypeMaps(self) -> List[DataTypeMap]:
154
99
  return self._dataTypeMaps
155
-
100
+
156
101
  def addModeRequestTypeMap(self, map: ModeRequestTypeMap):
157
102
  self._modeRequestTypeMaps.append(map)
158
103
 
159
104
  def getModeRequestTypeMaps(self) -> List[ModeRequestTypeMap]:
160
- return self._modeRequestTypeMaps
161
-
162
-
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)
@@ -1,5 +1,5 @@
1
- from .....ar_ref import RefType
2
- from ...generic_structure.abstract_structure import AtpInstanceRef
1
+ from .....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import RefType
2
+ from .....M2.AUTOSARTemplates.GenericStructure.AbstractStructure import AtpInstanceRef
3
3
 
4
4
  class ApplicationCompositeElementInPortInterfaceInstanceRef(AtpInstanceRef):
5
5
  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 .....M2.AUTOSARTemplates.CommonStructure.TriggerDeclaration import Trigger
5
+ from .....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.Identifiable import Identifiable
6
+ from .....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.ArObject import ARObject
7
+ from .....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import ARLiteral, ARNumerical
8
+ from .....M2.AUTOSARTemplates.SWComponentTemplate.Datatype.DataPrototypes import ParameterDataPrototype, VariableDataPrototype, AutosarDataPrototype
9
+ from .....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import ARBoolean
10
+ from .....M2.AUTOSARTemplates.CommonStructure.ModeDeclaration import ModeDeclarationGroupPrototype
11
+ from .....M2.AUTOSARTemplates.GenericStructure.AbstractStructure import AtpType
12
+ from .....M2.AUTOSARTemplates.GenericStructure.AbstractStructure import AtpFeature
13
+ from .....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import RefType
10
14
 
11
15
  class PortInterface(AtpType, metaclass = ABCMeta):
12
16
  def __init__(self, parent: ARObject, short_name: str):
@@ -1,17 +1,15 @@
1
-
1
+ from ....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.ArObject import ARObject
2
+ from ....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.Identifiable import Identifiable
2
3
  from abc import ABCMeta
3
- from .ar_object import ARObject
4
- from .general_structure import Identifiable
5
-
6
4
 
7
5
  class IdentCaption(Identifiable):
8
-
6
+
9
7
  __metaclass__ = ABCMeta
10
8
 
11
9
  def __init__(self, parent: ARObject, short_name: str):
12
10
  if type(self) == IdentCaption:
13
11
  raise NotImplementedError("IdentCaption is an abstract class.")
14
-
12
+
15
13
  super().__init__(parent, short_name)
16
14
 
17
15