armodel 1.6.3__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 (126) hide show
  1. armodel/cli/arxml_dump_cli.py +7 -7
  2. armodel/cli/arxml_format_cli.py +0 -1
  3. armodel/cli/connector2xlsx_cli.py +2 -3
  4. armodel/cli/connector_update_cli.py +1 -4
  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 +2 -2
  9. armodel/lib/system_signal.py +1 -3
  10. armodel/models/M2/AUTOSARTemplates/AutosarTopLevelStructure.py +5 -10
  11. armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswBehavior.py +9 -11
  12. armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswImplementation.py +51 -12
  13. armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswInterfaces.py +3 -3
  14. armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswOverview.py +5 -6
  15. armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/__init__.py +4 -1
  16. armodel/models/M2/AUTOSARTemplates/CommonStructure/Implementation.py +186 -29
  17. armodel/models/M2/AUTOSARTemplates/CommonStructure/ImplementationDataTypes.py +7 -10
  18. armodel/models/M2/AUTOSARTemplates/CommonStructure/InternalBehavior.py +18 -7
  19. armodel/models/M2/AUTOSARTemplates/CommonStructure/ModeDeclaration.py +3 -3
  20. armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/MemorySectionUsage.py +3 -6
  21. armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/__init__.py +3 -5
  22. armodel/models/M2/AUTOSARTemplates/CommonStructure/ServiceNeeds.py +10 -6
  23. armodel/models/M2/AUTOSARTemplates/CommonStructure/SwcBswMapping.py +3 -4
  24. armodel/models/M2/AUTOSARTemplates/CommonStructure/SwcInternalBehavior/ModeDeclarationGroup.py +2 -5
  25. armodel/models/M2/AUTOSARTemplates/CommonStructure/SwcInternalBehavior/__init__.py +0 -1
  26. armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/ExecutionOrderConstraint.py +45 -0
  27. armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/TimingConstraint.py +24 -0
  28. armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/TimingExtensions.py +33 -0
  29. armodel/models/M2/AUTOSARTemplates/CommonStructure/TriggerDeclaration.py +2 -2
  30. armodel/models/M2/AUTOSARTemplates/CommonStructure/__init__.py +4 -6
  31. armodel/models/M2/AUTOSARTemplates/{ecuc_description_template.py → ECUCDescriptionTemplate.py} +6 -11
  32. armodel/models/M2/AUTOSARTemplates/GenericStructure/AbstractStructure.py +3 -6
  33. armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/ARPackage.py +40 -36
  34. armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/EngineeringObject.py +2 -5
  35. armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/Identifiable.py +11 -16
  36. armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/PrimitiveTypes.py +17 -2
  37. armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/__init__.py +0 -1
  38. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Communication.py +1 -1
  39. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Components/InstanceRefs.py +2 -4
  40. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Components/__init__.py +114 -12
  41. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Composition/InstanceRefs.py +2 -5
  42. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Composition/__init__.py +4 -62
  43. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Datatype/DataPrototypes.py +6 -8
  44. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Datatype/Datatypes.py +7 -7
  45. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Datatype/__init__.py +0 -1
  46. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/{port_interface/instance_refs.py → PortInterface/InstanceRefs.py} +2 -2
  47. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/{port_interface → PortInterface}/__init__.py +10 -10
  48. armodel/models/{rpt_scenario.py → M2/AUTOSARTemplates/SWComponentTemplate/RPTScenario.py} +4 -6
  49. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcImplementation.py +29 -6
  50. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/DataElements.py +6 -6
  51. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/IncludedDataTypes.py +2 -2
  52. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/InstanceRefsUsage.py +3 -3
  53. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/ModeDeclarationGroup.py +4 -4
  54. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/PerInstanceMemory.py +3 -3
  55. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/PortAPIOptions.py +86 -0
  56. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/RTEEvents.py +174 -0
  57. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/ServerCall.py +3 -4
  58. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/ServiceMapping.py +37 -3
  59. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/Trigger.py +2 -4
  60. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/__init__.py +166 -10
  61. armodel/models/M2/AUTOSARTemplates/SystemTemplate/{data_mapping.py → DataMapping.py} +2 -3
  62. armodel/models/{fibex/can_communication.py → M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Can/CanCommunication.py} +3 -4
  63. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet/EthernetFrame.py +14 -0
  64. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet/ServiceInstances.py +116 -0
  65. armodel/models/{fibex/lin_communication.py → M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Lin/LinCommunication.py} +4 -5
  66. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Lin/__init__.py +0 -0
  67. armodel/models/{fibex/fibex_4_multiplatform.py → M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Multiplatform.py} +5 -6
  68. armodel/models/{fibex/fibex_core/core_communication.py → M2/AUTOSARTemplates/SystemTemplate/Fibex/FibexCore/CoreCommunication.py} +4 -12
  69. armodel/models/{fibex/fibex_core/core_topology.py → M2/AUTOSARTemplates/SystemTemplate/Fibex/FibexCore/CoreTopology.py} +6 -11
  70. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/FibexCore/__init__.py +0 -0
  71. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/__init__.py +0 -0
  72. armodel/models/M2/AUTOSARTemplates/SystemTemplate/InstanceRefs.py +2 -2
  73. armodel/models/M2/AUTOSARTemplates/SystemTemplate/{network_management.py → NetworkManagement.py} +5 -10
  74. armodel/models/M2/AUTOSARTemplates/SystemTemplate/TransportProtocols.py +6 -0
  75. armodel/models/M2/AUTOSARTemplates/SystemTemplate/__init__.py +3 -6
  76. armodel/models/M2/MSR/AsamHdo/AdminData.py +2 -5
  77. armodel/models/M2/MSR/AsamHdo/BaseTypes.py +3 -3
  78. armodel/models/M2/MSR/AsamHdo/ComputationMethod.py +5 -6
  79. armodel/models/M2/MSR/AsamHdo/Constraints/GlobalConstraints.py +3 -4
  80. armodel/models/M2/MSR/AsamHdo/Constraints/__init__.py +0 -1
  81. armodel/models/M2/MSR/AsamHdo/SpecialData.py +1 -4
  82. armodel/models/M2/MSR/AsamHdo/Units.py +3 -6
  83. armodel/models/M2/MSR/AsamHdo/__init__.py +0 -1
  84. armodel/models/M2/MSR/CalibrationData/CalibrationValue.py +3 -7
  85. armodel/models/M2/MSR/CalibrationData/__init__.py +0 -1
  86. armodel/models/M2/MSR/DataDictionary/AuxillaryObjects.py +3 -6
  87. armodel/models/M2/MSR/DataDictionary/Axis.py +3 -3
  88. armodel/models/M2/MSR/DataDictionary/CalibrationParameter.py +3 -3
  89. armodel/models/M2/MSR/DataDictionary/DataDefProperties.py +5 -6
  90. armodel/models/M2/MSR/DataDictionary/RecordLayout.py +4 -4
  91. armodel/models/M2/MSR/DataDictionary/__init__.py +0 -1
  92. armodel/models/M2/MSR/Documentation/Annotation.py +4 -6
  93. armodel/models/M2/MSR/Documentation/BlockElements.py +2 -2
  94. armodel/models/M2/MSR/Documentation/TextModel/LanguageDataModel.py +1 -2
  95. armodel/models/M2/MSR/Documentation/TextModel/MultilanguageData.py +3 -6
  96. armodel/models/M2/MSR/Documentation/TextModel/__init__.py +0 -2
  97. armodel/models/M2/MSR/Documentation/__init__.py +1 -1
  98. armodel/models/M2/MSR/__init__.py +1 -1
  99. armodel/models/M2/__init__.py +0 -1
  100. armodel/models/__init__.py +46 -3
  101. armodel/parser/arxml_parser.py +58 -54
  102. armodel/parser/file_parser.py +2 -1
  103. armodel/report/connector_xls_report.py +2 -1
  104. armodel/tests/test_armodel/models/test_ar_object.py +0 -2
  105. armodel/tests/test_armodel/models/test_ar_package.py +4 -4
  106. armodel/tests/test_armodel/models/test_data_prototype.py +1 -1
  107. armodel/tests/test_armodel/models/test_datatype.py +7 -7
  108. armodel/tests/test_armodel/models/test_port_interface.py +6 -6
  109. armodel/tests/test_armodel/parser/test_parse_bswmd.py +12 -12
  110. armodel/tests/test_armodel/parser/test_sw_components.py +1 -1
  111. armodel/tests/test_armodel/parser/test_system.py +1 -1
  112. armodel/writer/arxml_writer.py +61 -49
  113. {armodel-1.6.3.dist-info → armodel-1.6.4.dist-info}/METADATA +371 -366
  114. armodel-1.6.4.dist-info/RECORD +156 -0
  115. {armodel-1.6.3.dist-info → armodel-1.6.4.dist-info}/WHEEL +1 -1
  116. armodel/models/M2/AUTOSARTemplates/SystemTemplate/transport_protocols.py +0 -7
  117. armodel/models/sw_component.py +0 -390
  118. armodel/models/timing.py +0 -91
  119. armodel-1.6.3.dist-info/RECORD +0 -148
  120. /armodel/models/{fibex → M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint}/__init__.py +0 -0
  121. /armodel/models/{fibex/fibex_4_can → M2/AUTOSARTemplates/CommonStructure/Timing}/__init__.py +0 -0
  122. /armodel/models/{fibex/fibex_4_lin → M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Can}/__init__.py +0 -0
  123. /armodel/models/{fibex/fibex_core → M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet}/__init__.py +0 -0
  124. {armodel-1.6.3.dist-info → armodel-1.6.4.dist-info}/LICENSE +0 -0
  125. {armodel-1.6.3.dist-info → armodel-1.6.4.dist-info}/entry_points.txt +0 -0
  126. {armodel-1.6.3.dist-info → armodel-1.6.4.dist-info}/top_level.txt +0 -0
@@ -1,12 +1,8 @@
1
1
  from abc import ABCMeta
2
- from typing import List
3
-
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
-
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
10
6
 
11
7
  class SwComponentPrototype(Identifiable):
12
8
  def __init__(self, parent: ARObject, short_name: str):
@@ -97,58 +93,4 @@ class PassThroughSwConnector(SwConnector):
97
93
  def setRequiredOuterPortRef(self, value):
98
94
  self.requiredOuterPortRef = value
99
95
  return self
100
-
101
-
102
- class CompositionSwComponentType(SwComponentType):
103
- def __init__(self, parent: ARObject, short_name: str):
104
- super().__init__(parent, short_name)
105
-
106
- self.constantValueMappingRefs = [] # type: List[RefType]
107
- self.dataTypeMappingRefs = [] # type: List[RefType]
108
- self.instantiationRTEEventProps = [] # type: List[InstantiationRTEEventProps]
109
-
110
- def removeAllAssemblySwConnector(self):
111
- for sw_connector in self.getAssemblySwConnectors():
112
- self.elements.pop(sw_connector.short_name)
113
-
114
- def removeAllDelegationSwConnector(self):
115
- for sw_connector in self.getDelegationSwConnectors():
116
- self.elements.pop(sw_connector.short_name)
117
-
118
- def createAssemblySwConnector(self, short_name: str) -> AssemblySwConnector:
119
- if (short_name not in self.elements):
120
- connector = AssemblySwConnector(self, short_name)
121
- self.elements[short_name] = connector
122
- return self.elements[short_name]
123
-
124
- def createDelegationSwConnector(self, short_name: str) -> DelegationSwConnector:
125
- if short_name not in self.elements:
126
- connector = DelegationSwConnector(self, short_name)
127
- self.elements[short_name] = connector
128
- return self.elements[short_name]
129
-
130
- def getAssemblySwConnectors(self) -> List[AssemblySwConnector]:
131
- return list(sorted(filter(lambda e: isinstance(e, AssemblySwConnector), self.elements.values()), key = lambda c: c.short_name))
132
-
133
- def getDelegationSwConnectors(self) -> List[DelegationSwConnector]:
134
- return list(sorted(filter(lambda e: isinstance(e, DelegationSwConnector), self.elements.values()), key = lambda c: c.short_name))
135
-
136
- def getSwConnectors(self) -> List[SwConnector]:
137
- return list(sorted(filter(lambda e: isinstance(e, SwConnector), self.elements.values()), key = lambda c: c.short_name))
138
-
139
- def createSwComponentPrototype(self, short_name: str) -> SwComponentPrototype:
140
- if (short_name not in self.elements):
141
- connector = SwComponentPrototype(self, short_name)
142
- self.elements[short_name] = connector
143
- return self.elements[short_name]
144
-
145
- def getSwComponentPrototypes(self) -> List[SwComponentPrototype]:
146
- return list(filter(lambda e: isinstance(e, SwComponentPrototype), self.elements.values()))
147
-
148
- def addDataTypeMapping(self, data_type_mapping_ref: RefType):
149
- self.dataTypeMappingRefs.append(data_type_mapping_ref)
150
-
151
- def getDataTypeMappings(self) -> List[RefType]:
152
- return self.dataTypeMappingRefs
153
-
154
96
 
@@ -1,12 +1,10 @@
1
1
  from abc import ABCMeta
2
-
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
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
10
8
 
11
9
  class AtpPrototype(AtpFeature, metaclass = ABCMeta):
12
10
  def __init__(self, parent:ARObject, short_name: str):
@@ -1,11 +1,11 @@
1
1
  from typing import List
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
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
9
  from abc import ABCMeta
10
10
 
11
11
  class AutosarDataType(AtpType, metaclass = ABCMeta):
@@ -1,5 +1,5 @@
1
- from ...GenericStructure.GeneralTemplateClasses.PrimitiveTypes import RefType
2
- from ...GenericStructure.AbstractStructure 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,16 +1,16 @@
1
1
  from abc import ABCMeta
2
2
  from typing import List
3
3
 
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
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
14
14
 
15
15
  class PortInterface(AtpType, metaclass = ABCMeta):
16
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 .M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.ArObject import ARObject
4
- from .M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.Identifiable 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
 
@@ -1,11 +1,34 @@
1
- from ..GenericStructure.GeneralTemplateClasses.ArObject import ARObject
2
- from ..GenericStructure.GeneralTemplateClasses.PrimitiveTypes import RefType
3
- from ..CommonStructure.Implementation import Implementation
1
+ from typing import List
2
+ from ....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.ArObject import ARObject
3
+ from ....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import RefType, String
4
+ from ....M2.AUTOSARTemplates.CommonStructure.Implementation import Implementation
4
5
 
5
6
  class SwcImplementation(Implementation):
6
7
  def __init__(self, parent: ARObject, short_name: str) -> None:
7
8
  super().__init__(parent, short_name)
8
9
 
9
- self.behavior_ref = None # type: RefType
10
- self.per_instance_memory_size = None
11
- self.required_rte_vendor = ""
10
+ self.behaviorRef = None # type: RefType
11
+ # type: List[PerInstanceMemorySize]
12
+ self.perInstanceMemorySizes = []
13
+ self.requiredRTEVendor = None # type: String
14
+
15
+ def getBehaviorRef(self):
16
+ return self.behaviorRef
17
+
18
+ def setBehaviorRef(self, value):
19
+ self.behaviorRef = value
20
+ return self
21
+
22
+ def getPerInstanceMemorySizes(self):
23
+ return self.perInstanceMemorySizes
24
+
25
+ def addPerInstanceMemorySize(self, value):
26
+ self.perInstanceMemorySizes.append(value)
27
+ return self
28
+
29
+ def getRequiredRTEVendor(self):
30
+ return self.requiredRTEVendor
31
+
32
+ def setRequiredRTEVendor(self, value):
33
+ self.requiredRTEVendor = value
34
+ return self
@@ -1,9 +1,9 @@
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
1
+ from .....M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.AccessCount import AbstractAccessPoint
2
+ from .....M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.InstanceRefsUsage import AutosarParameterRef, AutosarVariableRef
3
+ from .....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.ArObject import ARObject
4
+ from .....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.Identifiable import Identifiable
5
+ from .....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import ARLiteral
6
+ from .....M2.MSR.DataDictionary.DataDefProperties import SwDataDefProps
7
7
 
8
8
  class ParameterAccess(AbstractAccessPoint):
9
9
  def __init__(self, parent: ARObject, short_name: str):
@@ -1,5 +1,5 @@
1
- from ...GenericStructure.GeneralTemplateClasses.ArObject import ARObject
2
- from ...GenericStructure.GeneralTemplateClasses.PrimitiveTypes import ARLiteral, RefType
1
+ from .....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.ArObject import ARObject
2
+ from .....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import ARLiteral, RefType
3
3
  from typing import List
4
4
 
5
5
  class IncludedDataTypeSet(ARObject):
@@ -1,8 +1,8 @@
1
1
  from typing import List
2
2
 
3
- from ...GenericStructure.GeneralTemplateClasses.ArObject import ARObject
4
- from ...GenericStructure.GeneralTemplateClasses.PrimitiveTypes import RefType
5
- from ...GenericStructure.AbstractStructure import AtpInstanceRef
3
+ from .....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.ArObject import ARObject
4
+ from .....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import RefType
5
+ from .....M2.AUTOSARTemplates.GenericStructure.AbstractStructure import AtpInstanceRef
6
6
 
7
7
  class ArVariableInImplementationDataInstanceRef(AtpInstanceRef):
8
8
  def __init__(self):
@@ -1,7 +1,7 @@
1
- from .AccessCount import AbstractAccessPoint
2
- from ..Components.InstanceRefs import PModeGroupInAtomicSwcInstanceRef, RModeGroupInAtomicSWCInstanceRef
3
- from .....rpt_scenario import ModeAccessPointIdent
4
- from ...GenericStructure.GeneralTemplateClasses.ArObject import ARObject
1
+ from .....M2.AUTOSARTemplates.SWComponentTemplate.RPTScenario import ModeAccessPointIdent
2
+ from .....M2.AUTOSARTemplates.SWComponentTemplate.Components.InstanceRefs import PModeGroupInAtomicSwcInstanceRef, RModeGroupInAtomicSWCInstanceRef
3
+ from .....M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.AccessCount import AbstractAccessPoint
4
+ from .....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.ArObject import ARObject
5
5
 
6
6
  class ModeAccessPoint(ARObject):
7
7
  def __init__(self):
@@ -1,6 +1,6 @@
1
- from ...GenericStructure.GeneralTemplateClasses.ArObject import ARObject
2
- from ...GenericStructure.GeneralTemplateClasses.Identifiable import Identifiable
3
- from ...GenericStructure.GeneralTemplateClasses.PrimitiveTypes import ARLiteral
1
+ from .....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.ArObject import ARObject
2
+ from .....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.Identifiable import Identifiable
3
+ from .....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import ARLiteral
4
4
  from .....M2.MSR.DataDictionary.DataDefProperties import SwDataDefProps
5
5
 
6
6
  class PerInstanceMemory(Identifiable):
@@ -0,0 +1,86 @@
1
+ from .....M2.AUTOSARTemplates.CommonStructure import ValueSpecification
2
+ from .....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.ArObject import ARObject
3
+ from .....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import ARBoolean, RefType, TRefType
4
+ from typing import List
5
+
6
+ class PortDefinedArgumentValue(ARObject):
7
+ def __init__(self):
8
+ super().__init__()
9
+
10
+ self.value = None # type: ValueSpecification
11
+ self.valueTypeTRef = None # type: TRefType
12
+
13
+ def getValue(self):
14
+ return self.value
15
+
16
+ def setValue(self, value):
17
+ self.value = value
18
+ return self
19
+
20
+ def getValueTypeTRef(self):
21
+ return self.valueTypeTRef
22
+
23
+ def setValueTypeTRef(self, value):
24
+ self.valueTypeTRef = value
25
+ return self
26
+
27
+ class PortAPIOption(ARObject):
28
+ def __init__(self):
29
+ super().__init__()
30
+
31
+ self.enableTakeAddress = None # type: ARBoolean
32
+ self.errorHandling = None # type: DataTransformationErrorHandlingEnum
33
+ self.indirectAPI = None # type: ARBoolean
34
+ self.portRef = None # type: RefType
35
+ self.portArgValues = [] # type: List[PortDefinedArgumentValue]
36
+ self.supportedFeatures = [] # type: List[SwcSupportedFeature]
37
+ self.transformerStatusForwarding = None # type: DataTransformationStatusForwardingEnum
38
+
39
+ def getEnableTakeAddress(self):
40
+ return self.enableTakeAddress
41
+
42
+ def setEnableTakeAddress(self, value):
43
+ self.enableTakeAddress = value
44
+ return self
45
+
46
+ def getErrorHandling(self):
47
+ return self.errorHandling
48
+
49
+ def setErrorHandling(self, value):
50
+ self.errorHandling = value
51
+ return self
52
+
53
+ def getIndirectAPI(self):
54
+ return self.indirectAPI
55
+
56
+ def setIndirectAPI(self, value):
57
+ self.indirectAPI = value
58
+ return self
59
+
60
+ def getPortRef(self):
61
+ return self.portRef
62
+
63
+ def setPortRef(self, value):
64
+ self.portRef = value
65
+ return self
66
+
67
+ def getPortArgValues(self):
68
+ return self.portArgValues
69
+
70
+ def addPortArgValue(self, value):
71
+ self.portArgValues.append(value)
72
+ return self
73
+
74
+ def getSupportedFeatures(self):
75
+ return self.supportedFeatures
76
+
77
+ def addSupportedFeature(self, value):
78
+ self.supportedFeatures.append(value)
79
+ return self
80
+
81
+ def getTransformerStatusForwarding(self):
82
+ return self.transformerStatusForwarding
83
+
84
+ def setTransformerStatusForwarding(self, value):
85
+ self.transformerStatusForwarding = value
86
+ return self
@@ -0,0 +1,174 @@
1
+ from .....M2.AUTOSARTemplates.SWComponentTemplate.Components.InstanceRefs import RVariableInAtomicSwcInstanceRef, RModeInAtomicSwcInstanceRef
2
+ from .....M2.AUTOSARTemplates.SWComponentTemplate.Composition.InstanceRefs import POperationInAtomicSwcInstanceRef
3
+ from .....M2.AUTOSARTemplates.CommonStructure.InternalBehavior import AbstractEvent
4
+ from .....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.ArObject import ARObject
5
+ from .....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import RefType, TimeValue
6
+ from typing import List
7
+
8
+ class RTEEvent(AbstractEvent):
9
+ def __init__(self, parent: ARObject, short_name: str):
10
+ super().__init__(parent, short_name)
11
+
12
+ self.disabledModeIRefs = [] # type: List[RModeInAtomicSwcInstanceRef]
13
+ self.startOnEventRef = None # type: RefType
14
+
15
+ def getDisabledModeIRefs(self):
16
+ return self.disabledModeIRefs
17
+
18
+ def addDisabledModeIRef(self, value):
19
+ self.disabledModeIRefs.append(value)
20
+ return self
21
+
22
+ def getStartOnEventRef(self):
23
+ return self.startOnEventRef
24
+
25
+ def setStartOnEventRef(self, value):
26
+ self.startOnEventRef = value
27
+ return self
28
+
29
+ class AsynchronousServerCallReturnsEvent(RTEEvent):
30
+ def __init__(self, parent: ARObject, short_name: str):
31
+ super().__init__(parent, short_name)
32
+
33
+ self.eventSourceRef = None # type: RefType
34
+
35
+ def getEventSourceRef(self):
36
+ return self.eventSourceRef
37
+
38
+ def setEventSourceRef(self, value):
39
+ self.eventSourceRef = value
40
+ return self
41
+
42
+
43
+ class DataSendCompletedEvent(RTEEvent):
44
+ def __init__(self, parent: ARObject, short_name: str):
45
+ super().__init__(parent, short_name)
46
+
47
+ self.eventSourceRef = None # type: RefType
48
+
49
+ def getEventSourceRef(self):
50
+ return self.eventSourceRef
51
+
52
+ def setEventSourceRef(self, value):
53
+ self.eventSourceRef = value
54
+ return self
55
+
56
+ class DataWriteCompletedEvent(RTEEvent):
57
+ def __init__(self, parent: ARObject, short_name: str):
58
+ super().__init__(parent, short_name)
59
+
60
+ self.eventSourceRef = None # type: RefType
61
+
62
+ def getEventSourceRef(self):
63
+ return self.eventSourceRef
64
+
65
+ def setEventSourceRef(self, value):
66
+ self.eventSourceRef = value
67
+ return self
68
+
69
+ class DataReceivedEvent(RTEEvent):
70
+ def __init__(self, parent: ARObject, short_name: str):
71
+ super().__init__(parent, short_name)
72
+
73
+ self.dataIRef = None # type: RVariableInAtomicSwcInstanceRef
74
+
75
+ def getDataIRef(self):
76
+ return self.dataIRef
77
+
78
+ def setDataIRef(self, value):
79
+ self.dataIRef = value
80
+ return self
81
+
82
+
83
+ class SwcModeSwitchEvent(RTEEvent):
84
+ def __init__(self, parent: ARObject, short_name: str):
85
+ super().__init__(parent, short_name)
86
+
87
+ self.activation = None # type: ModeActivationKind
88
+ self.modeIRefs = [] # type: List[RModeInAtomicSwcInstanceRef]
89
+
90
+ def getActivation(self):
91
+ return self.activation
92
+
93
+ def setActivation(self, value):
94
+ self.activation = value
95
+ return self
96
+
97
+ def getModeIRefs(self):
98
+ return self.modeIRefs
99
+
100
+ def addModeIRef(self, value):
101
+ self.modeIRefs.append(value)
102
+ return self
103
+
104
+ class DataReceiveErrorEvent(RTEEvent):
105
+ def __init__(self, parent: ARObject, short_name: str):
106
+ super().__init__(parent, short_name)
107
+
108
+ self.dataIRef = None
109
+
110
+ def getDataIRef(self):
111
+ return self.dataIRef
112
+
113
+ def setDataIRef(self, value):
114
+ self.dataIRef = value
115
+ return self
116
+
117
+ class OperationInvokedEvent(RTEEvent):
118
+ def __init__(self, parent: ARObject, short_name: str):
119
+ super().__init__(parent, short_name)
120
+
121
+ self.operationIRef = None # type: POperationInAtomicSwcInstanceRef
122
+
123
+ def getOperationIRef(self):
124
+ return self.operationIRef
125
+
126
+ def setOperationIRef(self, value):
127
+ self.operationIRef = value
128
+ return self
129
+
130
+ class InitEvent(RTEEvent):
131
+ def __init__(self, parent: ARObject, short_name: str):
132
+ super().__init__(parent, short_name)
133
+
134
+
135
+ class TimingEvent(RTEEvent):
136
+ def __init__(self, parent: ARObject, short_name: str):
137
+ super().__init__(parent, short_name)
138
+
139
+ self.offset = None # type: TimeValue
140
+ self.period = None # type: TimeValue
141
+
142
+ @property
143
+ def periodMs(self):
144
+ if (self.period < 0.001):
145
+ return self.period * 1000
146
+ else:
147
+ return (int)(self.period * 1000)
148
+
149
+ def getOffset(self):
150
+ return self.offset
151
+
152
+ def setOffset(self, value):
153
+ self.offset = value
154
+ return self
155
+
156
+ def getPeriod(self):
157
+ return self.period
158
+
159
+ def setPeriod(self, value):
160
+ self.period = value
161
+ return self
162
+
163
+ class InternalTriggerOccurredEvent(RTEEvent):
164
+ def __init__(self, parent: ARObject, short_name: str):
165
+ super().__init__(parent, short_name)
166
+
167
+ self.eventSourceRef = None # type: RefType
168
+
169
+ def getEventSourceRef(self):
170
+ return self.eventSourceRef
171
+
172
+ def setEventSourceRef(self, value):
173
+ self.eventSourceRef = value
174
+ return self
@@ -1,8 +1,7 @@
1
1
  from abc import ABCMeta
2
- from ...GenericStructure.GeneralTemplateClasses.ArObject import ARObject
3
- from ..Composition.InstanceRefs import ROperationInAtomicSwcInstanceRef
4
- from .AccessCount import AbstractAccessPoint
5
-
2
+ from .....M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.AccessCount import AbstractAccessPoint
3
+ from .....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.ArObject import ARObject
4
+ from .....M2.AUTOSARTemplates.SWComponentTemplate.Composition.InstanceRefs import ROperationInAtomicSwcInstanceRef
6
5
 
7
6
  class ServerCallPoint(AbstractAccessPoint, metaclass = ABCMeta):
8
7
 
@@ -1,6 +1,8 @@
1
- from ....AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.ArObject import ARObject
2
- from ....AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import RefType
3
-
1
+ from typing import List
2
+ from .....M2.AUTOSARTemplates.CommonStructure.ServiceNeeds import NvBlockNeeds, RoleBasedDataAssignment, ServiceNeeds
3
+ from .....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.ArObject import ARObject
4
+ from .....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import Identifier, RefType
5
+ from .....M2.AUTOSARTemplates.CommonStructure.ServiceNeeds import ServiceDependency
4
6
  class RoleBasedPortAssignment(ARObject):
5
7
  def __init__(self):
6
8
  super().__init__()
@@ -21,3 +23,35 @@ class RoleBasedPortAssignment(ARObject):
21
23
  def setRole(self, value):
22
24
  self.role = value
23
25
  return self
26
+
27
+
28
+ class SwcServiceDependency(ServiceDependency):
29
+ def __init__(self, parent: ARObject, short_name: str):
30
+ super().__init__(parent, short_name)
31
+
32
+ self._assigned_data = []
33
+ self._assigned_ports = []
34
+
35
+ def AddAssignedData(self, data: RoleBasedDataAssignment):
36
+ self._assigned_data.append(data)
37
+
38
+ def getAssignedData(self) -> List[RoleBasedDataAssignment]:
39
+ return self._assigned_data
40
+
41
+ def AddAssignedPort(self, data: RoleBasedPortAssignment):
42
+ self._assigned_ports.append(data)
43
+
44
+ def getAssignedPorts(self) -> List[RoleBasedPortAssignment]:
45
+ return self._assigned_ports
46
+
47
+ def createNvBlockNeeds(self, short_name: str) -> NvBlockNeeds:
48
+ if (short_name not in self.elements):
49
+ event = NvBlockNeeds(self, short_name)
50
+ self.elements[short_name] = event
51
+ return self.elements[short_name]
52
+
53
+ def getNvBlockNeeds(self) -> List[NvBlockNeeds]:
54
+ return sorted(filter(lambda c: isinstance(c, NvBlockNeeds), self.elements.values()), key=lambda e: e.short_name)
55
+
56
+ def getServiceNeeds(self) -> List[ServiceNeeds]:
57
+ return sorted(filter(lambda c: isinstance(c, ServiceNeeds), self.elements.values()), key=lambda e: e.short_name)
@@ -1,7 +1,5 @@
1
-
2
- from .AccessCount import AbstractAccessPoint
3
- from ...GenericStructure.GeneralTemplateClasses.ArObject import ARObject
4
-
1
+ from .....M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.AccessCount import AbstractAccessPoint
2
+ from .....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.ArObject import ARObject
5
3
 
6
4
  class InternalTriggeringPoint(AbstractAccessPoint):
7
5
  def __init__(self, parent: ARObject, short_name: str):