armodel 1.5.0__py3-none-any.whl → 1.6.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- armodel/cli/arxml_dump_cli.py +13 -13
- armodel/cli/memory_section_cli.py +76 -0
- armodel/cli/system_signal_cli.py +74 -0
- armodel/lib/__init__.py +2 -1
- armodel/lib/system_signal.py +37 -0
- armodel/models/__init__.py +6 -3
- armodel/models/annotation.py +27 -3
- armodel/models/ar_object.py +18 -6
- armodel/models/ar_package.py +124 -14
- armodel/models/ar_ref.py +109 -62
- armodel/models/bsw_module_template.py +37 -14
- armodel/models/common_structure.py +132 -147
- armodel/models/communication.py +1 -1
- armodel/models/data_prototype.py +41 -6
- armodel/models/datatype.py +11 -5
- armodel/models/fibex/can_communication.py +119 -3
- armodel/models/fibex/fibex_4_can/__init__.py +0 -0
- armodel/models/fibex/fibex_4_lin/__init__.py +0 -0
- armodel/models/fibex/fibex_4_multiplatform.py +81 -88
- armodel/models/fibex/fibex_core/__init__.py +0 -0
- armodel/models/fibex/fibex_core/core_communication.py +627 -0
- armodel/models/fibex/fibex_core/core_topology.py +180 -0
- armodel/models/fibex/lin_communication.py +24 -3
- armodel/models/general_structure.py +101 -8
- armodel/models/m2/__init__.py +0 -0
- armodel/models/m2/autosar_templates/__init__.py +0 -0
- armodel/models/m2/autosar_templates/common_structure/__init__.py +188 -0
- armodel/models/m2/autosar_templates/common_structure/constants.py +0 -0
- armodel/models/m2/autosar_templates/ecuc_description_template.py +268 -0
- armodel/models/m2/autosar_templates/sw_component_template/__init__.py +0 -0
- armodel/models/m2/autosar_templates/sw_component_template/communication.py +316 -0
- armodel/models/m2/autosar_templates/sw_component_template/components/__init__.py +0 -0
- armodel/models/m2/autosar_templates/sw_component_template/components/instance_refs.py +149 -0
- armodel/models/m2/autosar_templates/sw_component_template/port_interface.py +236 -0
- armodel/models/m2/autosar_templates/sw_component_template/swc_internal_behavior/__init__.py +203 -0
- armodel/models/m2/autosar_templates/sw_component_template/swc_internal_behavior/access_count.py +13 -0
- armodel/models/m2/autosar_templates/sw_component_template/swc_internal_behavior/data_elements.py +54 -0
- armodel/models/m2/autosar_templates/sw_component_template/swc_internal_behavior/mode_declaration_group.py +39 -0
- armodel/models/m2/autosar_templates/sw_component_template/swc_internal_behavior/server_call.py +26 -0
- armodel/models/m2/autosar_templates/sw_component_template/swc_internal_behavior/trigger.py +10 -0
- armodel/models/m2/autosar_templates/system_template/__init__.py +321 -0
- armodel/models/m2/autosar_templates/system_template/data_mapping.py +88 -0
- armodel/models/m2/autosar_templates/system_template/network_management.py +554 -0
- armodel/models/m2/autosar_templates/system_template/transport_protocols.py +7 -0
- armodel/models/m2/msr/__init__.py +0 -0
- armodel/models/m2/msr/asam_hdo/__init__.py +0 -0
- armodel/models/m2/msr/asam_hdo/units.py +105 -0
- armodel/models/m2/msr/data_dictionary/__init__.py +0 -0
- armodel/models/m2/msr/data_dictionary/auxillary_objects.py +42 -0
- armodel/models/m2/msr/data_dictionary/data_def_properties.py +295 -0
- armodel/models/m2/msr/documentation/__init__.py +0 -0
- armodel/models/m2/msr/documentation/block_elements.py +18 -0
- armodel/models/multilanguage_data.py +15 -0
- armodel/models/per_instance_memory.py +34 -6
- armodel/models/port_prototype.py +12 -174
- armodel/models/sw_component.py +14 -216
- armodel/parser/abstract_arxml_parser.py +10 -1
- armodel/parser/arxml_parser.py +803 -186
- armodel/tests/test_armodel/models/test_ar_package.py +1 -1
- armodel/tests/test_armodel/models/test_ar_ref.py +3 -3
- armodel/tests/test_armodel/models/test_bsw_module_template.py +5 -5
- armodel/tests/test_armodel/models/test_common_structure.py +3 -3
- armodel/tests/test_armodel/models/test_data_dictionary.py +5 -5
- armodel/tests/test_armodel/models/test_data_prototype.py +1 -1
- armodel/tests/test_armodel/models/test_datatype.py +1 -1
- armodel/tests/test_armodel/models/test_port_interface.py +1 -1
- armodel/tests/test_armodel/parser/test_parse_bswmd.py +3 -3
- armodel/tests/test_armodel/parser/test_sw_components.py +2 -2
- armodel/writer/arxml_writer.py +832 -196
- {armodel-1.5.0.dist-info → armodel-1.6.0.dist-info}/METADATA +24 -1
- armodel-1.6.0.dist-info/RECORD +127 -0
- {armodel-1.5.0.dist-info → armodel-1.6.0.dist-info}/entry_points.txt +3 -1
- armodel-1.5.0.dist-info/RECORD +0 -91
- {armodel-1.5.0.dist-info → armodel-1.6.0.dist-info}/LICENSE +0 -0
- {armodel-1.5.0.dist-info → armodel-1.6.0.dist-info}/WHEEL +0 -0
- {armodel-1.5.0.dist-info → armodel-1.6.0.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,627 @@
|
|
|
1
|
+
from abc import ABCMeta
|
|
2
|
+
from typing import List
|
|
3
|
+
|
|
4
|
+
from ...ar_ref import RefType
|
|
5
|
+
from ...ar_object import ARBoolean, ARFloat, ARLiteral, ARNumerical, ARObject, ARPositiveInteger
|
|
6
|
+
from ...general_structure import ARElement, Describable, Identifiable
|
|
7
|
+
|
|
8
|
+
class FibexElement(Identifiable, metaclass = ABCMeta):
|
|
9
|
+
def __init__(self, parent: ARObject, short_name: str):
|
|
10
|
+
if type(self) == FibexElement:
|
|
11
|
+
raise NotImplementedError("FibexElement is an abstract class.")
|
|
12
|
+
|
|
13
|
+
super().__init__(parent, short_name)
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
class PduToFrameMapping(Identifiable):
|
|
17
|
+
def __init__(self, parent: ARObject, short_name: str):
|
|
18
|
+
super().__init__(parent, short_name)
|
|
19
|
+
|
|
20
|
+
self.packingByteOrder = None # type: ARLiteral
|
|
21
|
+
self.pduRef = None # type: RefType
|
|
22
|
+
self.startPosition = None # type: ARNumerical
|
|
23
|
+
self.updateIndicationBitPosition = None # type: ARNumerical
|
|
24
|
+
|
|
25
|
+
def getPackingByteOrder(self):
|
|
26
|
+
return self.packingByteOrder
|
|
27
|
+
|
|
28
|
+
def setPackingByteOrder(self, value):
|
|
29
|
+
self.packingByteOrder = value
|
|
30
|
+
return self
|
|
31
|
+
|
|
32
|
+
def getPduRef(self):
|
|
33
|
+
return self.pduRef
|
|
34
|
+
|
|
35
|
+
def setPduRef(self, value):
|
|
36
|
+
self.pduRef = value
|
|
37
|
+
return self
|
|
38
|
+
|
|
39
|
+
def getStartPosition(self):
|
|
40
|
+
return self.startPosition
|
|
41
|
+
|
|
42
|
+
def setStartPosition(self, value):
|
|
43
|
+
self.startPosition = value
|
|
44
|
+
return self
|
|
45
|
+
|
|
46
|
+
def getUpdateIndicationBitPosition(self):
|
|
47
|
+
return self.updateIndicationBitPosition
|
|
48
|
+
|
|
49
|
+
def setUpdateIndicationBitPosition(self, value):
|
|
50
|
+
self.updateIndicationBitPosition = value
|
|
51
|
+
return self
|
|
52
|
+
|
|
53
|
+
class Frame(Identifiable):
|
|
54
|
+
__metaclass__ = ABCMeta
|
|
55
|
+
|
|
56
|
+
def __init__(self, parent: ARObject, short_name: str):
|
|
57
|
+
if type(self) == Frame:
|
|
58
|
+
raise NotImplementedError("Frame is an abstract class.")
|
|
59
|
+
|
|
60
|
+
super().__init__(parent, short_name)
|
|
61
|
+
|
|
62
|
+
self.frameLength = None
|
|
63
|
+
self.pduToFrameMappings = [] # type: List[PduToFrameMapping]
|
|
64
|
+
|
|
65
|
+
def getFrameLength(self):
|
|
66
|
+
return self.frameLength
|
|
67
|
+
|
|
68
|
+
def setFrameLength(self, value):
|
|
69
|
+
self.frameLength = value
|
|
70
|
+
return self
|
|
71
|
+
|
|
72
|
+
def createPduToFrameMapping(self, short_name: str) -> PduToFrameMapping:
|
|
73
|
+
if (short_name not in self.elements):
|
|
74
|
+
mapping = PduToFrameMapping(self, short_name)
|
|
75
|
+
self.elements[short_name] = mapping
|
|
76
|
+
self.pduToFrameMappings.append(mapping)
|
|
77
|
+
return self.elements[short_name]
|
|
78
|
+
|
|
79
|
+
def getPduToFrameMappings(self) -> List[PduToFrameMapping]:
|
|
80
|
+
return list(sorted(filter(lambda a: isinstance(a, PduToFrameMapping), self.elements.values()), key= lambda o:o.short_name))
|
|
81
|
+
|
|
82
|
+
class ContainedIPduProps(ARObject):
|
|
83
|
+
def __init__(self):
|
|
84
|
+
super().__init__()
|
|
85
|
+
|
|
86
|
+
self.collectionSemantics = None # type: ARLiteral
|
|
87
|
+
self.headerIdLongHeader = None # type: ARPositiveInteger
|
|
88
|
+
self.headerIdShortHeader = None # type: ARPositiveInteger
|
|
89
|
+
self.offset = None # type: ARNumerical
|
|
90
|
+
self.timeout = None # type: ARNumerical
|
|
91
|
+
self.trigger = None # type: ARLiteral
|
|
92
|
+
self.updateIndicationBitPosition = None # type: ARNumerical
|
|
93
|
+
|
|
94
|
+
def getCollectionSemantics(self):
|
|
95
|
+
return self.collectionSemantics
|
|
96
|
+
|
|
97
|
+
def setCollectionSemantics(self, value):
|
|
98
|
+
self.collectionSemantics = value
|
|
99
|
+
return self
|
|
100
|
+
|
|
101
|
+
def getHeaderIdLongHeader(self):
|
|
102
|
+
return self.headerIdLongHeader
|
|
103
|
+
|
|
104
|
+
def setHeaderIdLongHeader(self, value):
|
|
105
|
+
self.headerIdLongHeader = value
|
|
106
|
+
return self
|
|
107
|
+
|
|
108
|
+
def getHeaderIdShortHeader(self):
|
|
109
|
+
return self.headerIdShortHeader
|
|
110
|
+
|
|
111
|
+
def setHeaderIdShortHeader(self, value):
|
|
112
|
+
self.headerIdShortHeader = value
|
|
113
|
+
return self
|
|
114
|
+
|
|
115
|
+
def getOffset(self):
|
|
116
|
+
return self.offset
|
|
117
|
+
|
|
118
|
+
def setOffset(self, value):
|
|
119
|
+
self.offset = value
|
|
120
|
+
return self
|
|
121
|
+
|
|
122
|
+
def getTimeout(self):
|
|
123
|
+
return self.timeout
|
|
124
|
+
|
|
125
|
+
def setTimeout(self, value):
|
|
126
|
+
self.timeout = value
|
|
127
|
+
return self
|
|
128
|
+
|
|
129
|
+
def getTrigger(self):
|
|
130
|
+
return self.trigger
|
|
131
|
+
|
|
132
|
+
def setTrigger(self, value):
|
|
133
|
+
self.trigger = value
|
|
134
|
+
return self
|
|
135
|
+
|
|
136
|
+
def getUpdateIndicationBitPosition(self):
|
|
137
|
+
return self.updateIndicationBitPosition
|
|
138
|
+
|
|
139
|
+
def setUpdateIndicationBitPosition(self, value):
|
|
140
|
+
self.updateIndicationBitPosition = value
|
|
141
|
+
return self
|
|
142
|
+
|
|
143
|
+
class ISignalGroup(FibexElement):
|
|
144
|
+
def __init__(self, parent, short_name):
|
|
145
|
+
super().__init__(parent, short_name)
|
|
146
|
+
|
|
147
|
+
self.comBasedSignalGroupTransformationRef = None # type: RefType
|
|
148
|
+
self.iSignalRefs = [] # type: List[RefType]
|
|
149
|
+
self.systemSignalGroupRef = None
|
|
150
|
+
self.transformationISignalProps = None
|
|
151
|
+
|
|
152
|
+
def getComBasedSignalGroupTransformationRef(self):
|
|
153
|
+
return self.comBasedSignalGroupTransformationRef
|
|
154
|
+
|
|
155
|
+
def setComBasedSignalGroupTransformationRef(self, value):
|
|
156
|
+
self.comBasedSignalGroupTransformationRef = value
|
|
157
|
+
return self
|
|
158
|
+
|
|
159
|
+
def getISignalRefs(self):
|
|
160
|
+
return self.iSignalRefs
|
|
161
|
+
|
|
162
|
+
def addISignalRef(self, value):
|
|
163
|
+
self.iSignalRefs.append(value)
|
|
164
|
+
return self
|
|
165
|
+
|
|
166
|
+
def getSystemSignalGroupRef(self):
|
|
167
|
+
return self.systemSignalGroupRef
|
|
168
|
+
|
|
169
|
+
def setSystemSignalGroupRef(self, value):
|
|
170
|
+
self.systemSignalGroupRef = value
|
|
171
|
+
return self
|
|
172
|
+
|
|
173
|
+
def getTransformationISignalProps(self):
|
|
174
|
+
return self.transformationISignalProps
|
|
175
|
+
|
|
176
|
+
def setTransformationISignalProps(self, value):
|
|
177
|
+
self.transformationISignalProps = value
|
|
178
|
+
return self
|
|
179
|
+
|
|
180
|
+
|
|
181
|
+
class ISignalIPduGroup(FibexElement):
|
|
182
|
+
def __init__(self, parent, short_name):
|
|
183
|
+
super().__init__(parent, short_name)
|
|
184
|
+
|
|
185
|
+
self.communicationDirection = None
|
|
186
|
+
self.communicationMode = None
|
|
187
|
+
self.containedISignalIPduGroupRefs = []
|
|
188
|
+
self.iSignalIPduRefs = []
|
|
189
|
+
self.nmPduRefs = []
|
|
190
|
+
|
|
191
|
+
def getCommunicationDirection(self):
|
|
192
|
+
return self.communicationDirection
|
|
193
|
+
|
|
194
|
+
def setCommunicationDirection(self, value):
|
|
195
|
+
self.communicationDirection = value
|
|
196
|
+
return self
|
|
197
|
+
|
|
198
|
+
def getCommunicationMode(self):
|
|
199
|
+
return self.communicationMode
|
|
200
|
+
|
|
201
|
+
def setCommunicationMode(self, value):
|
|
202
|
+
self.communicationMode = value
|
|
203
|
+
return self
|
|
204
|
+
|
|
205
|
+
def getContainedISignalIPduGroupRefs(self):
|
|
206
|
+
return self.containedISignalIPduGroupRefs
|
|
207
|
+
|
|
208
|
+
def addContainedISignalIPduGroupRef(self, value):
|
|
209
|
+
self.containedISignalIPduGroupRefs.append(value)
|
|
210
|
+
return self
|
|
211
|
+
|
|
212
|
+
def getISignalIPduRefs(self):
|
|
213
|
+
return self.iSignalIPduRefs
|
|
214
|
+
|
|
215
|
+
def addISignalIPduRef(self, value):
|
|
216
|
+
self.iSignalIPduRefs.append(value)
|
|
217
|
+
return self
|
|
218
|
+
|
|
219
|
+
def getNmPduRefs(self):
|
|
220
|
+
return self.nmPduRefs
|
|
221
|
+
|
|
222
|
+
def addNmPduRef(self, value):
|
|
223
|
+
self.nmPduRefs.append(value)
|
|
224
|
+
return self
|
|
225
|
+
|
|
226
|
+
class Pdu(FibexElement, metaclass = ABCMeta):
|
|
227
|
+
def __init__(self, parent: ARObject, short_name: str):
|
|
228
|
+
if type(self) == Pdu:
|
|
229
|
+
raise NotImplementedError("Pdu is an abstract class.")
|
|
230
|
+
|
|
231
|
+
super().__init__(parent, short_name)
|
|
232
|
+
|
|
233
|
+
self.length = None # type: ARNumerical
|
|
234
|
+
|
|
235
|
+
def getLength(self):
|
|
236
|
+
return self.length
|
|
237
|
+
|
|
238
|
+
def setLength(self, value):
|
|
239
|
+
self.length = value
|
|
240
|
+
return self
|
|
241
|
+
|
|
242
|
+
class IPdu(Pdu, metaclass = ABCMeta):
|
|
243
|
+
def __init__(self, parent: ARObject, short_name: str):
|
|
244
|
+
if type(self) == IPdu:
|
|
245
|
+
raise NotImplementedError("IPdu is an abstract class.")
|
|
246
|
+
|
|
247
|
+
super().__init__(parent, short_name)
|
|
248
|
+
|
|
249
|
+
self.containedOpduProps = None # type: ContainedIPduProps
|
|
250
|
+
|
|
251
|
+
def getContainedOpduProps(self):
|
|
252
|
+
return self.containedOpduProps
|
|
253
|
+
|
|
254
|
+
def setContainedOpduProps(self, value):
|
|
255
|
+
self.containedOpduProps = value
|
|
256
|
+
return self
|
|
257
|
+
|
|
258
|
+
class SecuredIPdu(IPdu):
|
|
259
|
+
def __init__(self, parent: ARObject, short_name: str):
|
|
260
|
+
super().__init__(parent, short_name)
|
|
261
|
+
|
|
262
|
+
class NmPdu(Pdu):
|
|
263
|
+
def __init__(self, parent: ARObject, short_name: str):
|
|
264
|
+
super().__init__(parent, short_name)
|
|
265
|
+
|
|
266
|
+
|
|
267
|
+
class NPdu(IPdu):
|
|
268
|
+
def __init__(self, parent: ARObject, short_name: str):
|
|
269
|
+
super().__init__(parent, short_name)
|
|
270
|
+
|
|
271
|
+
class DcmIPdu(IPdu):
|
|
272
|
+
def __init__(self, parent: ARObject, short_name: str):
|
|
273
|
+
super().__init__(parent, short_name)
|
|
274
|
+
|
|
275
|
+
self.diagPduType = None # type: ARLiteral
|
|
276
|
+
|
|
277
|
+
def getDiagPduType(self):
|
|
278
|
+
return self.diagPduType
|
|
279
|
+
|
|
280
|
+
def setDiagPduType(self, value):
|
|
281
|
+
self.diagPduType = value
|
|
282
|
+
return self
|
|
283
|
+
|
|
284
|
+
|
|
285
|
+
class IPduTiming(Describable):
|
|
286
|
+
def __init__(self):
|
|
287
|
+
super().__init__()
|
|
288
|
+
|
|
289
|
+
self.minimumDelay = None # type: TimeValue
|
|
290
|
+
# type: TransmissionModeDeclaration
|
|
291
|
+
self.transmissionModeDeclaration = None
|
|
292
|
+
|
|
293
|
+
def getMinimumDelay(self):
|
|
294
|
+
return self.minimumDelay
|
|
295
|
+
|
|
296
|
+
def setMinimumDelay(self, value):
|
|
297
|
+
self.minimumDelay = value
|
|
298
|
+
return self
|
|
299
|
+
|
|
300
|
+
def getTransmissionModeDeclaration(self):
|
|
301
|
+
return self.transmissionModeDeclaration
|
|
302
|
+
|
|
303
|
+
def setTransmissionModeDeclaration(self, value):
|
|
304
|
+
self.transmissionModeDeclaration = value
|
|
305
|
+
return self
|
|
306
|
+
|
|
307
|
+
class ISignalToIPduMapping(Identifiable):
|
|
308
|
+
def __init__(self, parent, short_name):
|
|
309
|
+
super().__init__(parent, short_name)
|
|
310
|
+
|
|
311
|
+
self.iSignalRef = None # type: RefType
|
|
312
|
+
self.iSignalGroupRef = None # type: RefType
|
|
313
|
+
self.packingByteOrder = None # type: ByteOrderEnum
|
|
314
|
+
self.startPosition = None # type: ARNumerical
|
|
315
|
+
# type: TransferPropertyEnum
|
|
316
|
+
self.transferProperty = None
|
|
317
|
+
self.updateIndicationBitPosition = None # type: ARNumerical
|
|
318
|
+
|
|
319
|
+
def getISignalRef(self):
|
|
320
|
+
return self.iSignalRef
|
|
321
|
+
|
|
322
|
+
def setISignalRef(self, value):
|
|
323
|
+
self.iSignalRef = value
|
|
324
|
+
return self
|
|
325
|
+
|
|
326
|
+
def getISignalGroupRef(self):
|
|
327
|
+
return self.iSignalGroupRef
|
|
328
|
+
|
|
329
|
+
def setISignalGroupRef(self, value):
|
|
330
|
+
self.iSignalGroupRef = value
|
|
331
|
+
return self
|
|
332
|
+
|
|
333
|
+
def getPackingByteOrder(self):
|
|
334
|
+
return self.packingByteOrder
|
|
335
|
+
|
|
336
|
+
def setPackingByteOrder(self, value):
|
|
337
|
+
self.packingByteOrder = value
|
|
338
|
+
return self
|
|
339
|
+
|
|
340
|
+
def getStartPosition(self):
|
|
341
|
+
return self.startPosition
|
|
342
|
+
|
|
343
|
+
def setStartPosition(self, value):
|
|
344
|
+
self.startPosition = value
|
|
345
|
+
return self
|
|
346
|
+
|
|
347
|
+
def getTransferProperty(self):
|
|
348
|
+
return self.transferProperty
|
|
349
|
+
|
|
350
|
+
def setTransferProperty(self, value):
|
|
351
|
+
self.transferProperty = value
|
|
352
|
+
return self
|
|
353
|
+
|
|
354
|
+
def getUpdateIndicationBitPosition(self):
|
|
355
|
+
return self.updateIndicationBitPosition
|
|
356
|
+
|
|
357
|
+
def setUpdateIndicationBitPosition(self, value):
|
|
358
|
+
self.updateIndicationBitPosition = value
|
|
359
|
+
return self
|
|
360
|
+
|
|
361
|
+
|
|
362
|
+
class ISignalIPdu(IPdu):
|
|
363
|
+
def __init__(self, parent, short_name):
|
|
364
|
+
super().__init__(parent, short_name)
|
|
365
|
+
|
|
366
|
+
self.iPduTimingSpecification = None # type: IPduTiming
|
|
367
|
+
self.iSignalToPduMappings = [] # type: List[ISignalToIPduMapping]
|
|
368
|
+
self.unusedBitPattern = None # type: ARNumerical
|
|
369
|
+
|
|
370
|
+
def getIPduTimingSpecification(self):
|
|
371
|
+
return self.iPduTimingSpecification
|
|
372
|
+
|
|
373
|
+
def setIPduTimingSpecification(self, value):
|
|
374
|
+
self.iPduTimingSpecification = value
|
|
375
|
+
return self
|
|
376
|
+
|
|
377
|
+
def getISignalToPduMappings(self):
|
|
378
|
+
return self.iSignalToPduMappings
|
|
379
|
+
|
|
380
|
+
def createISignalToPduMappings(self, short_name: str) -> ISignalToIPduMapping:
|
|
381
|
+
if (short_name not in self.elements):
|
|
382
|
+
mapping = ISignalToIPduMapping(self, short_name)
|
|
383
|
+
self.elements[short_name] = mapping
|
|
384
|
+
self.iSignalToPduMappings.append(mapping)
|
|
385
|
+
return self.elements[short_name]
|
|
386
|
+
|
|
387
|
+
def getUnusedBitPattern(self):
|
|
388
|
+
return self.unusedBitPattern
|
|
389
|
+
|
|
390
|
+
def setUnusedBitPattern(self, value):
|
|
391
|
+
self.unusedBitPattern = value
|
|
392
|
+
return self
|
|
393
|
+
|
|
394
|
+
|
|
395
|
+
class ISignal(FibexElement):
|
|
396
|
+
def __init__(self, parent: ARObject, short_name: str):
|
|
397
|
+
super().__init__(parent, short_name)
|
|
398
|
+
|
|
399
|
+
self.dataTransformationRef = None
|
|
400
|
+
self.dataTypePolicy = None
|
|
401
|
+
self.iSignalProps = None
|
|
402
|
+
self.iSignalType = None
|
|
403
|
+
self.initValue = None
|
|
404
|
+
self.length = None
|
|
405
|
+
self.networkRepresentationProps = None
|
|
406
|
+
self.systemSignalRef = None # type: RefType
|
|
407
|
+
self.timeoutSubstitutionValue = None
|
|
408
|
+
self.transformationISignalProps = []
|
|
409
|
+
|
|
410
|
+
def getDataTransformationRef(self):
|
|
411
|
+
return self.dataTransformationRef
|
|
412
|
+
|
|
413
|
+
def setDataTransformationRef(self, value):
|
|
414
|
+
self.dataTransformationRef = value
|
|
415
|
+
return self
|
|
416
|
+
|
|
417
|
+
def getDataTypePolicy(self):
|
|
418
|
+
return self.dataTypePolicy
|
|
419
|
+
|
|
420
|
+
def setDataTypePolicy(self, value):
|
|
421
|
+
self.dataTypePolicy = value
|
|
422
|
+
return self
|
|
423
|
+
|
|
424
|
+
def getISignalProps(self):
|
|
425
|
+
return self.iSignalProps
|
|
426
|
+
|
|
427
|
+
def setISignalProps(self, value):
|
|
428
|
+
self.iSignalProps = value
|
|
429
|
+
return self
|
|
430
|
+
|
|
431
|
+
def getISignalType(self):
|
|
432
|
+
return self.iSignalType
|
|
433
|
+
|
|
434
|
+
def setISignalType(self, value):
|
|
435
|
+
self.iSignalType = value
|
|
436
|
+
return self
|
|
437
|
+
|
|
438
|
+
def getInitValue(self):
|
|
439
|
+
return self.initValue
|
|
440
|
+
|
|
441
|
+
def setInitValue(self, value):
|
|
442
|
+
self.initValue = value
|
|
443
|
+
return self
|
|
444
|
+
|
|
445
|
+
def getLength(self):
|
|
446
|
+
return self.length
|
|
447
|
+
|
|
448
|
+
def setLength(self, value):
|
|
449
|
+
self.length = value
|
|
450
|
+
return self
|
|
451
|
+
|
|
452
|
+
def getNetworkRepresentationProps(self):
|
|
453
|
+
return self.networkRepresentationProps
|
|
454
|
+
|
|
455
|
+
def setNetworkRepresentationProps(self, value):
|
|
456
|
+
self.networkRepresentationProps = value
|
|
457
|
+
return self
|
|
458
|
+
|
|
459
|
+
def getSystemSignalRef(self):
|
|
460
|
+
return self.systemSignalRef
|
|
461
|
+
|
|
462
|
+
def setSystemSignalRef(self, value):
|
|
463
|
+
self.systemSignalRef = value
|
|
464
|
+
return self
|
|
465
|
+
|
|
466
|
+
def getTimeoutSubstitutionValue(self):
|
|
467
|
+
return self.timeoutSubstitutionValue
|
|
468
|
+
|
|
469
|
+
def setTimeoutSubstitutionValue(self, value):
|
|
470
|
+
self.timeoutSubstitutionValue = value
|
|
471
|
+
return self
|
|
472
|
+
|
|
473
|
+
def getTransformationISignalProps(self):
|
|
474
|
+
return self.transformationISignalProps
|
|
475
|
+
|
|
476
|
+
def addTransformationISignalProps(self, value):
|
|
477
|
+
self.transformationISignalProps.append(value)
|
|
478
|
+
return self
|
|
479
|
+
|
|
480
|
+
class PduTriggering(Identifiable):
|
|
481
|
+
def __init__(self, parent, short_name):
|
|
482
|
+
super().__init__(parent, short_name)
|
|
483
|
+
|
|
484
|
+
self.iPduRef = None # type: RefType
|
|
485
|
+
self.iPduPortRefs = [] # type: List[RefType]
|
|
486
|
+
self.iSignalTriggeringRefs = [] # type: List[RefType]
|
|
487
|
+
self.secOcCryptoMappingRef = None # type: RefType
|
|
488
|
+
self.triggerIPduSendConditions = [] # type: List
|
|
489
|
+
|
|
490
|
+
def getIPduRef(self):
|
|
491
|
+
return self.iPduRef
|
|
492
|
+
|
|
493
|
+
def setIPduRef(self, value):
|
|
494
|
+
self.iPduRef = value
|
|
495
|
+
return self
|
|
496
|
+
|
|
497
|
+
def getIPduPortRefs(self):
|
|
498
|
+
return self.iPduPortRefs
|
|
499
|
+
|
|
500
|
+
def addIPduPortRef(self, value):
|
|
501
|
+
self.iPduPortRefs.append(value)
|
|
502
|
+
return self
|
|
503
|
+
|
|
504
|
+
def getISignalTriggeringRefs(self):
|
|
505
|
+
return self.iSignalTriggeringRefs
|
|
506
|
+
|
|
507
|
+
def addISignalTriggeringRef(self, value):
|
|
508
|
+
self.iSignalTriggeringRefs.append(value)
|
|
509
|
+
return self
|
|
510
|
+
|
|
511
|
+
def getSecOcCryptoMappingRef(self):
|
|
512
|
+
return self.secOcCryptoMappingRef
|
|
513
|
+
|
|
514
|
+
def setSecOcCryptoMappingRef(self, value):
|
|
515
|
+
self.secOcCryptoMappingRef = value
|
|
516
|
+
return self
|
|
517
|
+
|
|
518
|
+
def getTriggerIPduSendConditions(self):
|
|
519
|
+
return self.triggerIPduSendConditions
|
|
520
|
+
|
|
521
|
+
def addTriggerIPduSendCondition(self, value):
|
|
522
|
+
self.triggerIPduSendConditions.append(value)
|
|
523
|
+
return self
|
|
524
|
+
|
|
525
|
+
|
|
526
|
+
class FrameTriggering(Identifiable, metaclass = ABCMeta):
|
|
527
|
+
def __init__(self, parent, short_name):
|
|
528
|
+
if type(self) == FrameTriggering:
|
|
529
|
+
raise NotImplementedError("FrameTriggering is an abstract class.")
|
|
530
|
+
|
|
531
|
+
super().__init__(parent, short_name)
|
|
532
|
+
|
|
533
|
+
self.frameRef = None # type: RefType
|
|
534
|
+
self.framePortRefs = [] # type: List[RefType]
|
|
535
|
+
self.pduTriggeringRefs = [] # type: List[RefType]
|
|
536
|
+
|
|
537
|
+
def getFrameRef(self) -> RefType:
|
|
538
|
+
return self.frameRef
|
|
539
|
+
|
|
540
|
+
def setFrameRef(self, value: RefType):
|
|
541
|
+
self.frameRef = value
|
|
542
|
+
return self
|
|
543
|
+
|
|
544
|
+
def getFramePortRefs(self) -> List[RefType]:
|
|
545
|
+
return self.framePortRefs
|
|
546
|
+
|
|
547
|
+
def addFramePortRef(self, value: RefType):
|
|
548
|
+
self.framePortRefs.append(value)
|
|
549
|
+
return self
|
|
550
|
+
|
|
551
|
+
def getPduTriggeringRefs(self) -> RefType:
|
|
552
|
+
return self.pduTriggeringRefs
|
|
553
|
+
|
|
554
|
+
def addPduTriggeringRef(self, value: RefType):
|
|
555
|
+
self.pduTriggeringRefs.append(value)
|
|
556
|
+
return self
|
|
557
|
+
|
|
558
|
+
class SystemSignal(ARElement):
|
|
559
|
+
def __init__(self, parent, short_name):
|
|
560
|
+
super().__init__(parent, short_name)
|
|
561
|
+
|
|
562
|
+
self.dynamicLength = None # type: ARBoolean
|
|
563
|
+
self.physicalProps = None # type: SwDataDefProps
|
|
564
|
+
|
|
565
|
+
def getDynamicLength(self):
|
|
566
|
+
return self.dynamicLength
|
|
567
|
+
|
|
568
|
+
def setDynamicLength(self, value):
|
|
569
|
+
self.dynamicLength = value
|
|
570
|
+
return self
|
|
571
|
+
|
|
572
|
+
def getPhysicalProps(self):
|
|
573
|
+
return self.physicalProps
|
|
574
|
+
|
|
575
|
+
def setPhysicalProps(self, value):
|
|
576
|
+
self.physicalProps = value
|
|
577
|
+
return self
|
|
578
|
+
|
|
579
|
+
class SystemSignalGroup(ARElement):
|
|
580
|
+
def __init__(self, parent, short_name):
|
|
581
|
+
super().__init__(parent, short_name)
|
|
582
|
+
|
|
583
|
+
self.systemSignalRefs = [] # type: List[RefType]
|
|
584
|
+
self.transformingSystemSignalRef = None # type: RefType
|
|
585
|
+
|
|
586
|
+
def getSystemSignalRefs(self):
|
|
587
|
+
return self.systemSignalRefs
|
|
588
|
+
|
|
589
|
+
def addSystemSignalRefs(self, value:RefType):
|
|
590
|
+
self.systemSignalRefs.append(value)
|
|
591
|
+
return self
|
|
592
|
+
|
|
593
|
+
def getTransformingSystemSignalRef(self):
|
|
594
|
+
return self.transformingSystemSignalRef
|
|
595
|
+
|
|
596
|
+
def setTransformingSystemSignalRef(self, value):
|
|
597
|
+
self.transformingSystemSignalRef = value
|
|
598
|
+
return self
|
|
599
|
+
|
|
600
|
+
class ISignalTriggering(Identifiable):
|
|
601
|
+
def __init__(self, parent, short_name):
|
|
602
|
+
super().__init__(parent, short_name)
|
|
603
|
+
|
|
604
|
+
self.iSignalRef = None # type: RefType
|
|
605
|
+
self.iSignalGroupRef = None # type: RefType
|
|
606
|
+
self.iSignalPortRefs = [] # type: List[RefType]
|
|
607
|
+
|
|
608
|
+
def getISignalRef(self):
|
|
609
|
+
return self.iSignalRef
|
|
610
|
+
|
|
611
|
+
def setISignalRef(self, value):
|
|
612
|
+
self.iSignalRef = value
|
|
613
|
+
return self
|
|
614
|
+
|
|
615
|
+
def getISignalGroupRef(self):
|
|
616
|
+
return self.iSignalGroupRef
|
|
617
|
+
|
|
618
|
+
def setISignalGroupRef(self, value):
|
|
619
|
+
self.iSignalGroupRef = value
|
|
620
|
+
return self
|
|
621
|
+
|
|
622
|
+
def getISignalPortRefs(self):
|
|
623
|
+
return self.iSignalPortRefs
|
|
624
|
+
|
|
625
|
+
def addISignalPortRef(self, value):
|
|
626
|
+
self.iSignalPortRefs.append(value)
|
|
627
|
+
return self
|