armodel 1.8.2__py3-none-any.whl → 1.8.4__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- armodel/cli/format_xml_cli.py +62 -0
- armodel/cli/uuid_checker_cli.py +94 -0
- armodel/models/M2/AUTOSARTemplates/AutosarTopLevelStructure.py +4 -1
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswBehavior.py +7 -0
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswInterfaces.py +7 -4
- armodel/models/M2/AUTOSARTemplates/CommonStructure/ImplementationDataTypes.py +17 -15
- armodel/models/M2/AUTOSARTemplates/CommonStructure/TriggerDeclaration.py +1 -1
- armodel/models/M2/AUTOSARTemplates/CommonStructure/__init__.py +44 -28
- armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/Identifiable.py +5 -5
- armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/PrimitiveTypes.py +15 -3
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Communication.py +247 -45
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/AutosarVariableRef.py +9 -6
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/DataElements.py +7 -5
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/RTEEvents.py +3 -3
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/Trigger.py +43 -2
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/__init__.py +40 -43
- armodel/models/M2/MSR/AsamHdo/ComputationMethod.py +13 -12
- armodel/models/M2/MSR/DataDictionary/DataDefProperties.py +40 -9
- armodel/models/utils/uuid_mgr.py +6 -0
- armodel/parser/abstract_arxml_parser.py +5 -1
- armodel/parser/arxml_parser.py +111 -62
- armodel/tests/test_armodel/models/test_common_structure.py +2 -2
- armodel/tests/test_armodel/parser/test_arxml_parser.py +38 -0
- armodel/tests/test_armodel/parser/test_implementation_data_type.py +247 -0
- armodel/tests/test_armodel/parser/test_rte_event.py +142 -0
- armodel/tests/test_armodel/parser/test_runnable_entity.py +135 -0
- armodel/writer/abstract_arxml_writer.py +2 -0
- armodel/writer/arxml_writer.py +106 -28
- {armodel-1.8.2.dist-info → armodel-1.8.4.dist-info}/METADATA +19 -1
- {armodel-1.8.2.dist-info → armodel-1.8.4.dist-info}/RECORD +34 -29
- {armodel-1.8.2.dist-info → armodel-1.8.4.dist-info}/entry_points.txt +2 -0
- {armodel-1.8.2.dist-info → armodel-1.8.4.dist-info}/LICENSE +0 -0
- {armodel-1.8.2.dist-info → armodel-1.8.4.dist-info}/WHEEL +0 -0
- {armodel-1.8.2.dist-info → armodel-1.8.4.dist-info}/top_level.txt +0 -0
|
@@ -1,12 +1,15 @@
|
|
|
1
1
|
from abc import ABCMeta
|
|
2
2
|
from typing import List
|
|
3
|
+
|
|
4
|
+
from ....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.Identifiable import Describable
|
|
3
5
|
from ....M2.MSR.DataDictionary.DataDefProperties import SwDataDefProps
|
|
4
6
|
from ....M2.AUTOSARTemplates.CommonStructure import ValueSpecification
|
|
5
7
|
from ....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.ArObject import ARObject
|
|
6
|
-
from ....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import AREnum,
|
|
8
|
+
from ....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import AREnum, ARNumerical, ARPositiveInteger, Boolean
|
|
9
|
+
from ....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import PositiveInteger, TimeValue
|
|
7
10
|
from ....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import ARBoolean
|
|
8
11
|
from ....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import RefType
|
|
9
|
-
|
|
12
|
+
|
|
10
13
|
|
|
11
14
|
class HandleInvalidEnum(AREnum):
|
|
12
15
|
DONT_INVALIDATE = "dontInvalidate"
|
|
@@ -21,40 +24,40 @@ class HandleInvalidEnum(AREnum):
|
|
|
21
24
|
HandleInvalidEnum.KEEP,
|
|
22
25
|
HandleInvalidEnum.REPLACE
|
|
23
26
|
))
|
|
24
|
-
|
|
25
27
|
|
|
26
|
-
|
|
28
|
+
|
|
29
|
+
class PPortComSpec(ARObject, metaclass=ABCMeta):
|
|
27
30
|
"""
|
|
28
31
|
Communication attributes of a provided PortPrototype. This class will contain attributes that are valid for
|
|
29
32
|
all kinds of provide ports, independent of client-server or sender-receiver communication patterns.
|
|
30
33
|
|
|
31
|
-
Abstract Class
|
|
34
|
+
Abstract Class
|
|
32
35
|
|
|
33
36
|
Package: M2::AUTOSARTemplates::SWComponentTemplate::Communication
|
|
34
37
|
Base: ARObject
|
|
35
38
|
"""
|
|
36
39
|
|
|
37
40
|
def __init__(self):
|
|
38
|
-
if type(self)
|
|
41
|
+
if type(self) is PPortComSpec:
|
|
39
42
|
raise NotImplementedError("PPortComSpec is an abstract class.")
|
|
40
43
|
super().__init__()
|
|
41
44
|
|
|
42
45
|
|
|
43
|
-
class RPortComSpec(ARObject, metaclass
|
|
46
|
+
class RPortComSpec(ARObject, metaclass=ABCMeta):
|
|
44
47
|
"""
|
|
45
48
|
Communication attributes of a provided PortPrototype. This class will contain attributes that are valid for
|
|
46
49
|
all kinds of provide ports, independent of client-server or sender-receiver communication patterns.
|
|
47
50
|
|
|
48
|
-
Abstract Class
|
|
51
|
+
Abstract Class
|
|
49
52
|
|
|
50
53
|
Package: M2::AUTOSARTemplates::SWComponentTemplate::Communication
|
|
51
54
|
Base: ARObject
|
|
52
55
|
"""
|
|
53
56
|
|
|
54
57
|
def __init__(self):
|
|
55
|
-
if type(self)
|
|
58
|
+
if type(self) is RPortComSpec:
|
|
56
59
|
raise NotImplementedError("RPortComSpec is an abstract class.")
|
|
57
|
-
|
|
60
|
+
|
|
58
61
|
super().__init__()
|
|
59
62
|
|
|
60
63
|
|
|
@@ -62,7 +65,8 @@ class CompositeNetworkRepresentation(ARObject):
|
|
|
62
65
|
def __init__(self):
|
|
63
66
|
super().__init__()
|
|
64
67
|
|
|
65
|
-
|
|
68
|
+
# type: ApplicationCompositeElementInPortInterfaceInstanceRef
|
|
69
|
+
self.leafElementIRef = None
|
|
66
70
|
self.networkRepresentation = None # type: SwDataDefProps
|
|
67
71
|
|
|
68
72
|
def getLeafElementIRef(self):
|
|
@@ -79,6 +83,7 @@ class CompositeNetworkRepresentation(ARObject):
|
|
|
79
83
|
self.networkRepresentation = value
|
|
80
84
|
return self
|
|
81
85
|
|
|
86
|
+
|
|
82
87
|
class TransmissionAcknowledgementRequest(ARObject):
|
|
83
88
|
def __init__(self):
|
|
84
89
|
super().__init__()
|
|
@@ -86,18 +91,20 @@ class TransmissionAcknowledgementRequest(ARObject):
|
|
|
86
91
|
self.timeout = None # type: float
|
|
87
92
|
|
|
88
93
|
|
|
89
|
-
class SenderComSpec(PPortComSpec, metaclass
|
|
94
|
+
class SenderComSpec(PPortComSpec, metaclass=ABCMeta):
|
|
90
95
|
def __init__(self):
|
|
91
|
-
if type(self)
|
|
96
|
+
if type(self) is SenderComSpec:
|
|
92
97
|
raise NotImplementedError("SenderComSpec is an abstract class.")
|
|
93
|
-
|
|
98
|
+
|
|
94
99
|
super().__init__()
|
|
95
100
|
|
|
96
|
-
|
|
101
|
+
# type: List[CompositeNetworkRepresentation]
|
|
102
|
+
self.compositeNetworkRepresentations = []
|
|
97
103
|
self.dataElementRef = None # type: RefType
|
|
98
104
|
self.networkRepresentation = None # type: SwDataDefProps
|
|
99
105
|
self.handleOutOfRange = None # type: str
|
|
100
|
-
|
|
106
|
+
# type: TransmissionAcknowledgementRequest
|
|
107
|
+
self.transmissionAcknowledge = None
|
|
101
108
|
self.usesEndToEndProtection = None # type: ARBoolean
|
|
102
109
|
|
|
103
110
|
def addCompositeNetworkRepresentation(self, representation: CompositeNetworkRepresentation):
|
|
@@ -105,7 +112,7 @@ class SenderComSpec(PPortComSpec, metaclass = ABCMeta):
|
|
|
105
112
|
|
|
106
113
|
def getCompositeNetworkRepresentations(self) -> List[CompositeNetworkRepresentation]:
|
|
107
114
|
return self.compositeNetworkRepresentations
|
|
108
|
-
|
|
115
|
+
|
|
109
116
|
def getDataElementRef(self):
|
|
110
117
|
return self.dataElementRef
|
|
111
118
|
|
|
@@ -141,15 +148,17 @@ class SenderComSpec(PPortComSpec, metaclass = ABCMeta):
|
|
|
141
148
|
self.usesEndToEndProtection = value
|
|
142
149
|
return self
|
|
143
150
|
|
|
151
|
+
|
|
144
152
|
class QueuedSenderComSpec(SenderComSpec):
|
|
145
153
|
def __init__(self):
|
|
146
154
|
super().__init__()
|
|
147
155
|
|
|
156
|
+
|
|
148
157
|
class NonqueuedSenderComSpec(SenderComSpec):
|
|
149
158
|
def __init__(self):
|
|
150
159
|
super().__init__()
|
|
151
|
-
|
|
152
|
-
self.initValue = None # type: ValueSpecification
|
|
160
|
+
|
|
161
|
+
self.initValue = None # type: ValueSpecification
|
|
153
162
|
|
|
154
163
|
def getInitValue(self):
|
|
155
164
|
return self.initValue
|
|
@@ -158,6 +167,7 @@ class NonqueuedSenderComSpec(SenderComSpec):
|
|
|
158
167
|
self.initValue = value
|
|
159
168
|
return self
|
|
160
169
|
|
|
170
|
+
|
|
161
171
|
class ClientComSpec(RPortComSpec):
|
|
162
172
|
def __init__(self):
|
|
163
173
|
super().__init__()
|
|
@@ -171,6 +181,7 @@ class ClientComSpec(RPortComSpec):
|
|
|
171
181
|
self.operationRef = value
|
|
172
182
|
return self
|
|
173
183
|
|
|
184
|
+
|
|
174
185
|
class ModeSwitchReceiverComSpec(RPortComSpec):
|
|
175
186
|
def __init__(self):
|
|
176
187
|
super().__init__()
|
|
@@ -192,7 +203,7 @@ class ModeSwitchReceiverComSpec(RPortComSpec):
|
|
|
192
203
|
def setModeGroupRef(self, value):
|
|
193
204
|
self.modeGroupRef = value
|
|
194
205
|
return self
|
|
195
|
-
|
|
206
|
+
|
|
196
207
|
def getSupportsAsynchronousModeSwitch(self):
|
|
197
208
|
return self.supportsAsynchronousModeSwitch
|
|
198
209
|
|
|
@@ -200,10 +211,12 @@ class ModeSwitchReceiverComSpec(RPortComSpec):
|
|
|
200
211
|
self.supportsAsynchronousModeSwitch = value
|
|
201
212
|
return self
|
|
202
213
|
|
|
214
|
+
|
|
203
215
|
class NvRequireComSpec(RPortComSpec):
|
|
204
216
|
def __init__(self):
|
|
205
217
|
super().__init__()
|
|
206
218
|
|
|
219
|
+
|
|
207
220
|
class ParameterRequireComSpec(RPortComSpec):
|
|
208
221
|
def __init__(self):
|
|
209
222
|
super().__init__()
|
|
@@ -225,82 +238,95 @@ class ParameterRequireComSpec(RPortComSpec):
|
|
|
225
238
|
self.parameterRef = value
|
|
226
239
|
return self
|
|
227
240
|
|
|
241
|
+
|
|
228
242
|
class ReceiverComSpec(RPortComSpec):
|
|
229
243
|
__metaclass__ = ABCMeta
|
|
230
244
|
|
|
231
245
|
def __init__(self):
|
|
232
246
|
super().__init__()
|
|
233
247
|
|
|
234
|
-
self.compositeNetworkRepresentations
|
|
235
|
-
|
|
236
|
-
self.
|
|
248
|
+
self.compositeNetworkRepresentations: List[CompositeNetworkRepresentation] = [
|
|
249
|
+
]
|
|
250
|
+
self.dataElementRef: RefType = None
|
|
251
|
+
self.networkRepresentation: SwDataDefProps = None
|
|
237
252
|
self.handleOutOfRange = None # type: HandleOutOfRangeEnum
|
|
238
|
-
|
|
239
|
-
self.
|
|
240
|
-
self.
|
|
241
|
-
self.
|
|
253
|
+
# type: HandleOutOfRangeStatusEnum
|
|
254
|
+
self.handleOutOfRangeStatus = None
|
|
255
|
+
self.maxDeltaCounterInit: PositiveInteger = None
|
|
256
|
+
self.maxNoNewOrRepeatedData: PositiveInteger = None
|
|
257
|
+
self.usesEndToEndProtection: ARBoolean = None
|
|
242
258
|
|
|
243
259
|
def getDataElementRef(self):
|
|
244
260
|
return self.dataElementRef
|
|
245
261
|
|
|
246
262
|
def setDataElementRef(self, value):
|
|
247
|
-
|
|
263
|
+
if value is not None:
|
|
264
|
+
self.dataElementRef = value
|
|
248
265
|
return self
|
|
249
266
|
|
|
250
267
|
def getNetworkRepresentation(self):
|
|
251
268
|
return self.networkRepresentation
|
|
252
269
|
|
|
253
270
|
def setNetworkRepresentation(self, value):
|
|
254
|
-
|
|
271
|
+
if value is not None:
|
|
272
|
+
self.networkRepresentation = value
|
|
255
273
|
return self
|
|
256
274
|
|
|
257
275
|
def getHandleOutOfRange(self):
|
|
258
276
|
return self.handleOutOfRange
|
|
259
277
|
|
|
260
278
|
def setHandleOutOfRange(self, value):
|
|
261
|
-
|
|
279
|
+
if value is not None:
|
|
280
|
+
self.handleOutOfRange = value
|
|
262
281
|
return self
|
|
263
|
-
|
|
282
|
+
|
|
264
283
|
def getHandleOutOfRangeStatus(self):
|
|
265
284
|
return self.handleOutOfRangeStatus
|
|
266
285
|
|
|
267
286
|
def setHandleOutOfRangeStatus(self, value):
|
|
268
|
-
|
|
287
|
+
if value is not None:
|
|
288
|
+
self.handleOutOfRangeStatus = value
|
|
269
289
|
return self
|
|
270
290
|
|
|
271
291
|
def getMaxDeltaCounterInit(self):
|
|
272
292
|
return self.maxDeltaCounterInit
|
|
273
293
|
|
|
274
294
|
def setMaxDeltaCounterInit(self, value):
|
|
275
|
-
|
|
295
|
+
if value is not None:
|
|
296
|
+
self.maxDeltaCounterInit = value
|
|
276
297
|
return self
|
|
277
298
|
|
|
278
299
|
def getMaxNoNewOrRepeatedData(self):
|
|
279
300
|
return self.maxNoNewOrRepeatedData
|
|
280
301
|
|
|
281
302
|
def setMaxNoNewOrRepeatedData(self, value):
|
|
282
|
-
|
|
303
|
+
if value is not None:
|
|
304
|
+
self.maxNoNewOrRepeatedData = value
|
|
283
305
|
return self
|
|
284
306
|
|
|
285
|
-
|
|
286
307
|
def getUsesEndToEndProtection(self):
|
|
287
308
|
return self.usesEndToEndProtection
|
|
288
309
|
|
|
289
310
|
def setUsesEndToEndProtection(self, value):
|
|
290
|
-
|
|
311
|
+
if value is not None:
|
|
312
|
+
self.usesEndToEndProtection = value
|
|
291
313
|
return self
|
|
292
314
|
|
|
293
315
|
def addCompositeNetworkRepresentation(self, representation: CompositeNetworkRepresentation):
|
|
294
|
-
|
|
316
|
+
if representation is not None:
|
|
317
|
+
self.compositeNetworkRepresentations.append(representation)
|
|
318
|
+
return self
|
|
295
319
|
|
|
296
320
|
def getCompositeNetworkRepresentations(self) -> List[CompositeNetworkRepresentation]:
|
|
297
321
|
return self.compositeNetworkRepresentations
|
|
298
|
-
|
|
322
|
+
|
|
323
|
+
|
|
299
324
|
class ModeSwitchedAckRequest(ARObject):
|
|
300
325
|
def __init__(self):
|
|
301
326
|
super().__init__()
|
|
302
327
|
|
|
303
|
-
|
|
328
|
+
# type: TimeValue
|
|
329
|
+
self.timeout = None
|
|
304
330
|
|
|
305
331
|
def getTimeout(self):
|
|
306
332
|
return self.timeout
|
|
@@ -310,14 +336,17 @@ class ModeSwitchedAckRequest(ARObject):
|
|
|
310
336
|
self.timeout = value
|
|
311
337
|
return self
|
|
312
338
|
|
|
339
|
+
|
|
313
340
|
class ModeSwitchSenderComSpec(RPortComSpec):
|
|
314
341
|
def __init__(self):
|
|
315
342
|
super().__init__()
|
|
316
343
|
|
|
317
344
|
self.enhancedModeApi = None # type: ARBoolean
|
|
318
345
|
self.modeGroupRef = None # type: RefType
|
|
319
|
-
|
|
320
|
-
self.
|
|
346
|
+
# type: ModeSwitchedAckRequest
|
|
347
|
+
self.modeSwitchedAck = None
|
|
348
|
+
# type: ARPositiveInteger
|
|
349
|
+
self.queueLength = None
|
|
321
350
|
|
|
322
351
|
def getEnhancedModeApi(self):
|
|
323
352
|
return self.enhancedModeApi
|
|
@@ -348,17 +377,181 @@ class ModeSwitchSenderComSpec(RPortComSpec):
|
|
|
348
377
|
return self
|
|
349
378
|
|
|
350
379
|
|
|
351
|
-
|
|
352
380
|
class ParameterProvideComSpec(RPortComSpec):
|
|
353
381
|
def __init__(self):
|
|
354
382
|
super().__init__()
|
|
355
383
|
|
|
384
|
+
|
|
385
|
+
class TransformationComSpecProps(Describable, metaclass=ABCMeta):
|
|
386
|
+
def __init__(self):
|
|
387
|
+
if type(self) is TransformationComSpecProps:
|
|
388
|
+
raise NotImplementedError("TransformationComSpecProps is an abstract class.")
|
|
389
|
+
|
|
390
|
+
super().__init__()
|
|
391
|
+
|
|
392
|
+
|
|
393
|
+
class EndToEndTransformationComSpecProps(TransformationComSpecProps):
|
|
394
|
+
def __init__(self):
|
|
395
|
+
super().__init__()
|
|
396
|
+
|
|
397
|
+
self.clearFromValidToInvalid: ARBoolean = None
|
|
398
|
+
self.disableEndToEndCheck: ARBoolean = None
|
|
399
|
+
self.disableEndToEndStateMachine: ARBoolean = None
|
|
400
|
+
self.e2eProfileCompatibilityPropsRef: RefType = None
|
|
401
|
+
self.maxDeltaCounter: PositiveInteger = None
|
|
402
|
+
self.maxErrorStateInit: PositiveInteger = None
|
|
403
|
+
self.maxErrorStateInvalid: PositiveInteger = None
|
|
404
|
+
self.maxErrorStateValid: PositiveInteger = None
|
|
405
|
+
self.maxNoNewOrRepeatedData: PositiveInteger = None
|
|
406
|
+
self.minOkStateInit: PositiveInteger = None
|
|
407
|
+
self.minOkStateInvalid: PositiveInteger = None
|
|
408
|
+
self.minOkStateValid: PositiveInteger = None
|
|
409
|
+
self.syncCounterInit: PositiveInteger = None
|
|
410
|
+
self.windowSizeInit: PositiveInteger = None
|
|
411
|
+
self.windowSizeInvalid: PositiveInteger = None
|
|
412
|
+
self.windowSizeValid: PositiveInteger = None
|
|
413
|
+
|
|
414
|
+
def getClearFromValidToInvalid(self) -> ARBoolean:
|
|
415
|
+
return self.clearFromValidToInvalid
|
|
416
|
+
|
|
417
|
+
def setClearFromValidToInvalid(self, value: ARBoolean):
|
|
418
|
+
if value is not None:
|
|
419
|
+
self.clearFromValidToInvalid = value
|
|
420
|
+
return self
|
|
421
|
+
|
|
422
|
+
def getDisableEndToEndCheck(self) -> ARBoolean:
|
|
423
|
+
return self.disableEndToEndCheck
|
|
424
|
+
|
|
425
|
+
def setDisableEndToEndCheck(self, value: ARBoolean):
|
|
426
|
+
if value is not None:
|
|
427
|
+
self.disableEndToEndCheck = value
|
|
428
|
+
return self
|
|
429
|
+
|
|
430
|
+
def getDisableEndToEndStateMachine(self) -> ARBoolean:
|
|
431
|
+
return self.disableEndToEndStateMachine
|
|
432
|
+
|
|
433
|
+
def setDisableEndToEndStateMachine(self, value: ARBoolean):
|
|
434
|
+
if value is not None:
|
|
435
|
+
self.disableEndToEndStateMachine = value
|
|
436
|
+
return self
|
|
437
|
+
|
|
438
|
+
def getE2eProfileCompatibilityPropsRef(self) -> RefType:
|
|
439
|
+
return self.e2eProfileCompatibilityPropsRef
|
|
440
|
+
|
|
441
|
+
def setE2eProfileCompatibilityPropsRef(self, value: RefType):
|
|
442
|
+
if value is not None:
|
|
443
|
+
self.e2eProfileCompatibilityPropsRef = value
|
|
444
|
+
return self
|
|
445
|
+
|
|
446
|
+
def getMaxDeltaCounter(self) -> PositiveInteger:
|
|
447
|
+
return self.maxDeltaCounter
|
|
448
|
+
|
|
449
|
+
def setMaxDeltaCounter(self, value: PositiveInteger):
|
|
450
|
+
if value is not None:
|
|
451
|
+
self.maxDeltaCounter = value
|
|
452
|
+
return self
|
|
453
|
+
|
|
454
|
+
def getMaxErrorStateInit(self) -> PositiveInteger:
|
|
455
|
+
return self.maxErrorStateInit
|
|
456
|
+
|
|
457
|
+
def setMaxErrorStateInit(self, value: PositiveInteger):
|
|
458
|
+
if value is not None:
|
|
459
|
+
self.maxErrorStateInit = value
|
|
460
|
+
return self
|
|
461
|
+
|
|
462
|
+
def getMaxErrorStateInvalid(self) -> PositiveInteger:
|
|
463
|
+
return self.maxErrorStateInvalid
|
|
464
|
+
|
|
465
|
+
def setMaxErrorStateInvalid(self, value: PositiveInteger):
|
|
466
|
+
if value is not None:
|
|
467
|
+
self.maxErrorStateInvalid = value
|
|
468
|
+
return self
|
|
469
|
+
|
|
470
|
+
def getMaxErrorStateValid(self) -> PositiveInteger:
|
|
471
|
+
return self.maxErrorStateValid
|
|
472
|
+
|
|
473
|
+
def setMaxErrorStateValid(self, value: PositiveInteger):
|
|
474
|
+
if value is not None:
|
|
475
|
+
self.maxErrorStateValid = value
|
|
476
|
+
return self
|
|
477
|
+
|
|
478
|
+
def getMaxNoNewOrRepeatedData(self) -> PositiveInteger:
|
|
479
|
+
return self.maxNoNewOrRepeatedData
|
|
480
|
+
|
|
481
|
+
def setMaxNoNewOrRepeatedData(self, value: PositiveInteger):
|
|
482
|
+
if value is not None:
|
|
483
|
+
self.maxNoNewOrRepeatedData = value
|
|
484
|
+
return self
|
|
485
|
+
|
|
486
|
+
def getMinOkStateInit(self) -> PositiveInteger:
|
|
487
|
+
return self.minOkStateInit
|
|
488
|
+
|
|
489
|
+
def setMinOkStateInit(self, value: PositiveInteger):
|
|
490
|
+
if value is not None:
|
|
491
|
+
self.minOkStateInit = value
|
|
492
|
+
return self
|
|
493
|
+
|
|
494
|
+
def getMinOkStateInvalid(self) -> PositiveInteger:
|
|
495
|
+
return self.minOkStateInvalid
|
|
496
|
+
|
|
497
|
+
def setMinOkStateInvalid(self, value: PositiveInteger):
|
|
498
|
+
if value is not None:
|
|
499
|
+
self.minOkStateInvalid = value
|
|
500
|
+
return self
|
|
501
|
+
|
|
502
|
+
def getMinOkStateValid(self) -> PositiveInteger:
|
|
503
|
+
return self.minOkStateValid
|
|
504
|
+
|
|
505
|
+
def setMinOkStateValid(self, value: PositiveInteger):
|
|
506
|
+
if value is not None:
|
|
507
|
+
self.minOkStateValid = value
|
|
508
|
+
return self
|
|
509
|
+
|
|
510
|
+
def getSyncCounterInit(self) -> PositiveInteger:
|
|
511
|
+
return self.syncCounterInit
|
|
512
|
+
|
|
513
|
+
def setSyncCounterInit(self, value: PositiveInteger):
|
|
514
|
+
if value is not None:
|
|
515
|
+
self.syncCounterInit = value
|
|
516
|
+
return self
|
|
517
|
+
|
|
518
|
+
def getWindowSizeInit(self) -> PositiveInteger:
|
|
519
|
+
return self.windowSizeInit
|
|
520
|
+
|
|
521
|
+
def setWindowSizeInit(self, value: PositiveInteger):
|
|
522
|
+
if value is not None:
|
|
523
|
+
self.windowSizeInit = value
|
|
524
|
+
return self
|
|
525
|
+
|
|
526
|
+
def getWindowSizeInvalid(self) -> PositiveInteger:
|
|
527
|
+
return self.windowSizeInvalid
|
|
528
|
+
|
|
529
|
+
def setWindowSizeInvalid(self, value: PositiveInteger):
|
|
530
|
+
if value is not None:
|
|
531
|
+
self.windowSizeInvalid = value
|
|
532
|
+
return self
|
|
533
|
+
|
|
534
|
+
def getWindowSizeValid(self) -> PositiveInteger:
|
|
535
|
+
return self.windowSizeValid
|
|
536
|
+
|
|
537
|
+
def setWindowSizeValid(self, value: PositiveInteger):
|
|
538
|
+
if value is not None:
|
|
539
|
+
self.windowSizeValid = value
|
|
540
|
+
return self
|
|
541
|
+
|
|
542
|
+
|
|
543
|
+
class UserDefinedTransformationComSpecProps(TransformationComSpecProps):
|
|
544
|
+
def __init__(self):
|
|
545
|
+
super().__init__()
|
|
546
|
+
|
|
547
|
+
|
|
356
548
|
class ServerComSpec(PPortComSpec):
|
|
357
549
|
def __init__(self):
|
|
358
550
|
super().__init__()
|
|
359
551
|
|
|
360
|
-
self.operationRef = None
|
|
361
|
-
self.queueLength = None
|
|
552
|
+
self.operationRef: RefType = None
|
|
553
|
+
self.queueLength: PositiveInteger = None
|
|
554
|
+
self.transformationComSpecProps: List[TransformationComSpecProps] = []
|
|
362
555
|
|
|
363
556
|
def getOperationRef(self):
|
|
364
557
|
return self.operationRef
|
|
@@ -373,6 +566,15 @@ class ServerComSpec(PPortComSpec):
|
|
|
373
566
|
def setQueueLength(self, value):
|
|
374
567
|
self.queueLength = value
|
|
375
568
|
return self
|
|
569
|
+
|
|
570
|
+
def getTransformationComSpecProps(self) -> List[TransformationComSpecProps]:
|
|
571
|
+
return self.transformationComSpecProps
|
|
572
|
+
|
|
573
|
+
def addTransformationComSpecProps(self, transformationComSpecProps: TransformationComSpecProps):
|
|
574
|
+
if transformationComSpecProps is not None:
|
|
575
|
+
self.transformationComSpecProps.append(transformationComSpecProps)
|
|
576
|
+
return self
|
|
577
|
+
|
|
376
578
|
|
|
377
579
|
class NonqueuedReceiverComSpec(ReceiverComSpec):
|
|
378
580
|
def __init__(self):
|
|
@@ -448,7 +650,7 @@ class QueuedReceiverComSpec(ReceiverComSpec):
|
|
|
448
650
|
def __init__(self):
|
|
449
651
|
super().__init__()
|
|
450
652
|
|
|
451
|
-
self.queueLength = None # type: ARPositiveInteger
|
|
653
|
+
self.queueLength = None # type: ARPositiveInteger
|
|
452
654
|
|
|
453
655
|
def getQueueLength(self):
|
|
454
656
|
return self.queueLength
|
armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/AutosarVariableRef.py
CHANGED
|
@@ -1,22 +1,25 @@
|
|
|
1
1
|
from .....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.ArObject import ARObject
|
|
2
|
-
from .....M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.InstanceRefsUsage import ArVariableInImplementationDataInstanceRef
|
|
2
|
+
from .....M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.InstanceRefsUsage import ArVariableInImplementationDataInstanceRef
|
|
3
|
+
from .....M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.InstanceRefsUsage import VariableInAtomicSWCTypeInstanceRef
|
|
4
|
+
|
|
3
5
|
|
|
4
6
|
class AutosarVariableRef(ARObject):
|
|
5
7
|
def __init__(self):
|
|
6
8
|
super().__init__()
|
|
7
9
|
|
|
8
|
-
self.autosarVariableIRef = None
|
|
9
|
-
self.autosarVariableInImplDatatype = None
|
|
10
|
+
self.autosarVariableIRef: VariableInAtomicSWCTypeInstanceRef = None
|
|
11
|
+
self.autosarVariableInImplDatatype: ArVariableInImplementationDataInstanceRef = None
|
|
10
12
|
self.localVariableRef = None
|
|
11
13
|
|
|
12
|
-
def getAutosarVariableIRef(self):
|
|
14
|
+
def getAutosarVariableIRef(self) -> VariableInAtomicSWCTypeInstanceRef:
|
|
13
15
|
return self.autosarVariableIRef
|
|
14
16
|
|
|
15
17
|
def setAutosarVariableIRef(self, value):
|
|
16
18
|
self.autosarVariableIRef = value
|
|
17
19
|
return self
|
|
18
20
|
|
|
19
|
-
def getAutosarVariableInImplDatatype(self):
|
|
21
|
+
def getAutosarVariableInImplDatatype(self) -> ArVariableInImplementationDataInstanceRef:
|
|
22
|
+
"""Get the autosarVariableInImplDatatype attribute."""
|
|
20
23
|
return self.autosarVariableInImplDatatype
|
|
21
24
|
|
|
22
25
|
def setAutosarVariableInImplDatatype(self, value):
|
|
@@ -28,4 +31,4 @@ class AutosarVariableRef(ARObject):
|
|
|
28
31
|
|
|
29
32
|
def setLocalVariableRef(self, value):
|
|
30
33
|
self.localVariableRef = value
|
|
31
|
-
return self
|
|
34
|
+
return self
|
|
@@ -27,18 +27,20 @@ class ParameterAccess(AbstractAccessPoint):
|
|
|
27
27
|
self.swDataDefProps = value
|
|
28
28
|
return self
|
|
29
29
|
|
|
30
|
+
|
|
30
31
|
class VariableAccess(Identifiable):
|
|
31
32
|
def __init__(self, parent: ARObject, short_name):
|
|
32
33
|
super().__init__(parent, short_name)
|
|
33
34
|
|
|
34
|
-
self.accessedVariableRef = None
|
|
35
|
-
self.scope = None
|
|
35
|
+
self.accessedVariableRef: AutosarVariableRef = None
|
|
36
|
+
self.scope: ARLiteral = None
|
|
36
37
|
|
|
37
|
-
def getAccessedVariableRef(self):
|
|
38
|
+
def getAccessedVariableRef(self) -> AutosarVariableRef:
|
|
38
39
|
return self.accessedVariableRef
|
|
39
40
|
|
|
40
|
-
def setAccessedVariableRef(self, value):
|
|
41
|
-
|
|
41
|
+
def setAccessedVariableRef(self, value: AutosarVariableRef):
|
|
42
|
+
if value is not None:
|
|
43
|
+
self.accessedVariableRef = value
|
|
42
44
|
return self
|
|
43
45
|
|
|
44
46
|
def getScope(self):
|
|
@@ -88,8 +88,8 @@ class SwcModeSwitchEvent(RTEEvent):
|
|
|
88
88
|
def __init__(self, parent: ARObject, short_name: str):
|
|
89
89
|
super().__init__(parent, short_name)
|
|
90
90
|
|
|
91
|
-
self.activation = None
|
|
92
|
-
self.modeIRefs
|
|
91
|
+
self.activation = None # type: ModeActivationKind
|
|
92
|
+
self.modeIRefs: List[RModeInAtomicSwcInstanceRef] = []
|
|
93
93
|
|
|
94
94
|
def getActivation(self):
|
|
95
95
|
return self.activation
|
|
@@ -195,7 +195,7 @@ class ModeSwitchedAckEvent(RTEEvent):
|
|
|
195
195
|
def __init__(self, parent: ARObject, short_name: str):
|
|
196
196
|
super().__init__(parent, short_name)
|
|
197
197
|
|
|
198
|
-
self.eventSourceRef = None
|
|
198
|
+
self.eventSourceRef: RefType = None
|
|
199
199
|
|
|
200
200
|
def getEventSourceRef(self):
|
|
201
201
|
return self.eventSourceRef
|
|
@@ -1,8 +1,49 @@
|
|
|
1
|
+
from .....M2.AUTOSARTemplates.CommonStructure.TriggerDeclaration import Trigger
|
|
2
|
+
from .....M2.MSR.DataDictionary.DataDefProperties import SwImplPolicyEnum
|
|
3
|
+
from .....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import AREnum
|
|
1
4
|
from .....M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.AccessCount import AbstractAccessPoint
|
|
2
5
|
from .....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.ArObject import ARObject
|
|
3
6
|
|
|
7
|
+
|
|
4
8
|
class InternalTriggeringPoint(AbstractAccessPoint):
|
|
5
9
|
def __init__(self, parent: ARObject, short_name: str):
|
|
6
|
-
super().__init__(parent, short_name)
|
|
10
|
+
super().__init__(parent, short_name)
|
|
11
|
+
|
|
12
|
+
self.swImplPolicy: SwImplPolicyEnum = None
|
|
13
|
+
|
|
14
|
+
def getSwImplPolicy(self) -> SwImplPolicyEnum:
|
|
15
|
+
return self.swImplPolicy
|
|
16
|
+
|
|
17
|
+
def setSwImplPolicy(self, value: SwImplPolicyEnum):
|
|
18
|
+
if value is not None:
|
|
19
|
+
self.swImplPolicy = value
|
|
20
|
+
return self
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
class ExternalTriggeringPointIdent(AbstractAccessPoint):
|
|
24
|
+
def __init__(self, parent, short_name):
|
|
25
|
+
super().__init__(parent, short_name)
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
class ExternalTriggeringPoint(ARObject):
|
|
29
|
+
def __init__(self):
|
|
30
|
+
super().__init__()
|
|
31
|
+
|
|
32
|
+
self.ident: ExternalTriggeringPointIdent = None
|
|
33
|
+
self.trigger: Trigger = None
|
|
34
|
+
|
|
35
|
+
def getIdent(self) -> ExternalTriggeringPointIdent:
|
|
36
|
+
return self.ident
|
|
37
|
+
|
|
38
|
+
def setIdent(self, value: ExternalTriggeringPointIdent):
|
|
39
|
+
if value is not None:
|
|
40
|
+
self.ident = value
|
|
41
|
+
return self
|
|
42
|
+
|
|
43
|
+
def getTrigger(self) -> Trigger:
|
|
44
|
+
return self.trigger
|
|
7
45
|
|
|
8
|
-
|
|
46
|
+
def setTrigger(self, value: Trigger):
|
|
47
|
+
if value is not None:
|
|
48
|
+
self.trigger = value
|
|
49
|
+
return self
|