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.
Files changed (76) hide show
  1. armodel/cli/arxml_dump_cli.py +13 -13
  2. armodel/cli/memory_section_cli.py +76 -0
  3. armodel/cli/system_signal_cli.py +74 -0
  4. armodel/lib/__init__.py +2 -1
  5. armodel/lib/system_signal.py +37 -0
  6. armodel/models/__init__.py +6 -3
  7. armodel/models/annotation.py +27 -3
  8. armodel/models/ar_object.py +18 -6
  9. armodel/models/ar_package.py +124 -14
  10. armodel/models/ar_ref.py +109 -62
  11. armodel/models/bsw_module_template.py +37 -14
  12. armodel/models/common_structure.py +132 -147
  13. armodel/models/communication.py +1 -1
  14. armodel/models/data_prototype.py +41 -6
  15. armodel/models/datatype.py +11 -5
  16. armodel/models/fibex/can_communication.py +119 -3
  17. armodel/models/fibex/fibex_4_can/__init__.py +0 -0
  18. armodel/models/fibex/fibex_4_lin/__init__.py +0 -0
  19. armodel/models/fibex/fibex_4_multiplatform.py +81 -88
  20. armodel/models/fibex/fibex_core/__init__.py +0 -0
  21. armodel/models/fibex/fibex_core/core_communication.py +627 -0
  22. armodel/models/fibex/fibex_core/core_topology.py +180 -0
  23. armodel/models/fibex/lin_communication.py +24 -3
  24. armodel/models/general_structure.py +101 -8
  25. armodel/models/m2/__init__.py +0 -0
  26. armodel/models/m2/autosar_templates/__init__.py +0 -0
  27. armodel/models/m2/autosar_templates/common_structure/__init__.py +188 -0
  28. armodel/models/m2/autosar_templates/common_structure/constants.py +0 -0
  29. armodel/models/m2/autosar_templates/ecuc_description_template.py +268 -0
  30. armodel/models/m2/autosar_templates/sw_component_template/__init__.py +0 -0
  31. armodel/models/m2/autosar_templates/sw_component_template/communication.py +316 -0
  32. armodel/models/m2/autosar_templates/sw_component_template/components/__init__.py +0 -0
  33. armodel/models/m2/autosar_templates/sw_component_template/components/instance_refs.py +149 -0
  34. armodel/models/m2/autosar_templates/sw_component_template/port_interface.py +236 -0
  35. armodel/models/m2/autosar_templates/sw_component_template/swc_internal_behavior/__init__.py +203 -0
  36. armodel/models/m2/autosar_templates/sw_component_template/swc_internal_behavior/access_count.py +13 -0
  37. armodel/models/m2/autosar_templates/sw_component_template/swc_internal_behavior/data_elements.py +54 -0
  38. armodel/models/m2/autosar_templates/sw_component_template/swc_internal_behavior/mode_declaration_group.py +39 -0
  39. armodel/models/m2/autosar_templates/sw_component_template/swc_internal_behavior/server_call.py +26 -0
  40. armodel/models/m2/autosar_templates/sw_component_template/swc_internal_behavior/trigger.py +10 -0
  41. armodel/models/m2/autosar_templates/system_template/__init__.py +321 -0
  42. armodel/models/m2/autosar_templates/system_template/data_mapping.py +88 -0
  43. armodel/models/m2/autosar_templates/system_template/network_management.py +554 -0
  44. armodel/models/m2/autosar_templates/system_template/transport_protocols.py +7 -0
  45. armodel/models/m2/msr/__init__.py +0 -0
  46. armodel/models/m2/msr/asam_hdo/__init__.py +0 -0
  47. armodel/models/m2/msr/asam_hdo/units.py +105 -0
  48. armodel/models/m2/msr/data_dictionary/__init__.py +0 -0
  49. armodel/models/m2/msr/data_dictionary/auxillary_objects.py +42 -0
  50. armodel/models/m2/msr/data_dictionary/data_def_properties.py +295 -0
  51. armodel/models/m2/msr/documentation/__init__.py +0 -0
  52. armodel/models/m2/msr/documentation/block_elements.py +18 -0
  53. armodel/models/multilanguage_data.py +15 -0
  54. armodel/models/per_instance_memory.py +34 -6
  55. armodel/models/port_prototype.py +12 -174
  56. armodel/models/sw_component.py +14 -216
  57. armodel/parser/abstract_arxml_parser.py +10 -1
  58. armodel/parser/arxml_parser.py +803 -186
  59. armodel/tests/test_armodel/models/test_ar_package.py +1 -1
  60. armodel/tests/test_armodel/models/test_ar_ref.py +3 -3
  61. armodel/tests/test_armodel/models/test_bsw_module_template.py +5 -5
  62. armodel/tests/test_armodel/models/test_common_structure.py +3 -3
  63. armodel/tests/test_armodel/models/test_data_dictionary.py +5 -5
  64. armodel/tests/test_armodel/models/test_data_prototype.py +1 -1
  65. armodel/tests/test_armodel/models/test_datatype.py +1 -1
  66. armodel/tests/test_armodel/models/test_port_interface.py +1 -1
  67. armodel/tests/test_armodel/parser/test_parse_bswmd.py +3 -3
  68. armodel/tests/test_armodel/parser/test_sw_components.py +2 -2
  69. armodel/writer/arxml_writer.py +832 -196
  70. {armodel-1.5.0.dist-info → armodel-1.6.0.dist-info}/METADATA +24 -1
  71. armodel-1.6.0.dist-info/RECORD +127 -0
  72. {armodel-1.5.0.dist-info → armodel-1.6.0.dist-info}/entry_points.txt +3 -1
  73. armodel-1.5.0.dist-info/RECORD +0 -91
  74. {armodel-1.5.0.dist-info → armodel-1.6.0.dist-info}/LICENSE +0 -0
  75. {armodel-1.5.0.dist-info → armodel-1.6.0.dist-info}/WHEEL +0 -0
  76. {armodel-1.5.0.dist-info → armodel-1.6.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,554 @@
1
+ from abc import ABCMeta
2
+ from typing import List
3
+
4
+ from ....ar_ref import RefType
5
+ from ....general_structure import Identifiable
6
+ from ....ar_object import ARBoolean, ARLiteral, ARNumerical, ARObject
7
+ from ....fibex.fibex_core.core_communication import FibexElement
8
+ from ....fibex.can_communication import RxIdentifierRange
9
+
10
+ class NmClusterCoupling(ARObject, metaclass = ABCMeta):
11
+ def __init__(self):
12
+ if type(self) == NmClusterCoupling:
13
+ raise NotImplementedError("NmClusterCoupling is an abstract class.")
14
+
15
+ super().__init__()
16
+
17
+ class CanNmClusterCoupling(NmClusterCoupling):
18
+ def __init__(self):
19
+ super().__init__()
20
+
21
+ self.coupledClusterRefs = []
22
+ self.nmBusloadReductionEnabled = None
23
+ self.nmImmediateRestartEnabled = None
24
+
25
+ def getCoupledClusterRefs(self):
26
+ return self.coupledClusterRefs
27
+
28
+ def addCoupledClusterRef(self, value):
29
+ self.coupledClusterRefs.append(value)
30
+ return self
31
+
32
+ def getNmBusloadReductionEnabled(self):
33
+ return self.nmBusloadReductionEnabled
34
+
35
+ def setNmBusloadReductionEnabled(self, value):
36
+ self.nmBusloadReductionEnabled = value
37
+ return self
38
+
39
+ def getNmImmediateRestartEnabled(self):
40
+ return self.nmImmediateRestartEnabled
41
+
42
+ def setNmImmediateRestartEnabled(self, value):
43
+ self.nmImmediateRestartEnabled = value
44
+ return self
45
+
46
+ class FlexrayNmClusterCoupling(NmClusterCoupling):
47
+ def __init__(self):
48
+ super().__init__()
49
+
50
+ self.coupledClusterRefs = []
51
+ self.nmScheduleVariant = None
52
+
53
+ def getCoupledClusterRefs(self):
54
+ return self.coupledClusterRefs
55
+
56
+ def addCoupledClusterRef(self, value):
57
+ self.coupledClusterRefs.append(value)
58
+ return self
59
+
60
+ def getNmScheduleVariant(self):
61
+ return self.nmScheduleVariant
62
+
63
+ def setNmScheduleVariant(self, value):
64
+ self.nmScheduleVariant = value
65
+ return self
66
+
67
+ class UdpNmClusterCoupling(NmClusterCoupling):
68
+ def __init__(self):
69
+ super().__init__()
70
+
71
+ class NmNode(Identifiable, metaclass = ABCMeta):
72
+ def __init__(self, parent: ARObject, short_name: str):
73
+ if type(self) == NmNode:
74
+ raise NotImplementedError("NmNode is an abstract class.")
75
+
76
+ super().__init__(parent, short_name)
77
+
78
+ self.controllerRef = None
79
+ self.nmCoordCluster = None
80
+ self.nmCoordinatorRole = None
81
+ self.nmIfEcuRef = None
82
+ self.nmNodeId = None
83
+ self.nmPassiveModeEnabled = None
84
+ self.rxNmPduRefs = []
85
+ self.TxNmPduRefs = []
86
+
87
+ def getControllerRef(self) -> RefType:
88
+ return self.controllerRef
89
+
90
+ def setControllerRef(self, value):
91
+ self.controllerRef = value
92
+ return self
93
+
94
+ def getNmCoordCluster(self) -> ARNumerical:
95
+ return self.nmCoordCluster
96
+
97
+ def setNmCoordCluster(self, value: ARNumerical):
98
+ self.nmCoordCluster = value
99
+ return self
100
+
101
+ def getNmCoordinatorRole(self) -> ARLiteral:
102
+ return self.nmCoordinatorRole
103
+
104
+ def setNmCoordinatorRole(self, value: ARLiteral):
105
+ self.nmCoordinatorRole = value
106
+ return self
107
+
108
+ def getNmIfEcuRef(self) -> RefType:
109
+ return self.nmIfEcuRef
110
+
111
+ def setNmIfEcuRef(self, value):
112
+ self.nmIfEcuRef = value
113
+ return self
114
+
115
+ def getNmNodeId(self) -> ARNumerical:
116
+ return self.nmNodeId
117
+
118
+ def setNmNodeId(self, value: ARNumerical):
119
+ self.nmNodeId = value
120
+ return self
121
+
122
+ def getNmPassiveModeEnabled(self) -> ARBoolean:
123
+ return self.nmPassiveModeEnabled
124
+
125
+ def setNmPassiveModeEnabled(self, value: ARBoolean):
126
+ self.nmPassiveModeEnabled = value
127
+ return self
128
+
129
+ def addRxNmPduRef(self, ref: RefType):
130
+ self.rxNmPduRefs.append(ref)
131
+ return self
132
+
133
+ def getRxNmPduRefs(self) -> List[RefType]:
134
+ return self.rxNmPduRefs
135
+
136
+ def addTxNmPduRefs(self, ref: RefType):
137
+ self.TxNmPduRefs.append(ref)
138
+ return self
139
+
140
+ def getTxNmPduRefs(self) -> List[RefType]:
141
+ return self.TxNmPduRefs
142
+
143
+ class CanNmNode(NmNode):
144
+ def __init__(self, parent: ARObject, short_name: str):
145
+ super().__init__(parent, short_name)
146
+
147
+ self.allNmMessagesKeepAwake = None
148
+ self.nmCarWakeUpFilterEnabled = None
149
+ self.nmCarWakeUpRxEnabled = None
150
+ self.nmMsgCycleOffset = None
151
+ self.nmMsgReducedTime = None
152
+ self.nmRangeConfig = None
153
+
154
+ def getAllNmMessagesKeepAwake(self):
155
+ return self.allNmMessagesKeepAwake
156
+
157
+ def setAllNmMessagesKeepAwake(self, value):
158
+ self.allNmMessagesKeepAwake = value
159
+ return self
160
+
161
+ def getNmCarWakeUpFilterEnabled(self):
162
+ return self.nmCarWakeUpFilterEnabled
163
+
164
+ def setNmCarWakeUpFilterEnabled(self, value):
165
+ self.nmCarWakeUpFilterEnabled = value
166
+ return self
167
+
168
+ def getNmCarWakeUpRxEnabled(self):
169
+ return self.nmCarWakeUpRxEnabled
170
+
171
+ def setNmCarWakeUpRxEnabled(self, value):
172
+ self.nmCarWakeUpRxEnabled = value
173
+ return self
174
+
175
+ def getNmMsgCycleOffset(self):
176
+ return self.nmMsgCycleOffset
177
+
178
+ def setNmMsgCycleOffset(self, value):
179
+ self.nmMsgCycleOffset = value
180
+ return self
181
+
182
+ def getNmMsgReducedTime(self):
183
+ return self.nmMsgReducedTime
184
+
185
+ def setNmMsgReducedTime(self, value):
186
+ self.nmMsgReducedTime = value
187
+ return self
188
+
189
+ def getNmRangeConfig(self) -> RxIdentifierRange:
190
+ return self.nmRangeConfig
191
+
192
+ def setNmRangeConfig(self, value: RxIdentifierRange):
193
+ self.nmRangeConfig = value
194
+
195
+ class FlexrayNmNode(NmNode):
196
+ def __init__(self, parent: ARObject, short_name: str):
197
+ super().__init__(parent, short_name)
198
+
199
+ class J1939NmNode(NmNode):
200
+ def __init__(self, parent: ARObject, short_name: str):
201
+ super().__init__(parent, short_name)
202
+
203
+ class UdpNmNode(NmNode):
204
+ def __init__(self, parent: ARObject, short_name: str):
205
+ super().__init__(parent, short_name)
206
+
207
+ class NmCluster(Identifiable, metaclass=ABCMeta):
208
+ def __init__(self, parent: ARObject, short_name: str):
209
+ super().__init__(parent, short_name)
210
+
211
+ self.communicationClusterRef = None
212
+ self.nmChannelId = None
213
+ self.nmChannelSleepMaster = None
214
+ self._nmNodes = [] # type: List[NmNode]
215
+ self.nmNodeDetectionEnabled = None
216
+ self.nmNodeIdEnabled = None
217
+ self.nmPncParticipation = None
218
+ self.nmRepeatMsgIndEnabled = None
219
+ self._nmSynchronizingNetwork = None
220
+
221
+ def getCommunicationClusterRef(self):
222
+ return self.communicationClusterRef
223
+
224
+ def setCommunicationClusterRef(self, value):
225
+ self.communicationClusterRef = value
226
+ return self
227
+
228
+ def getNmChannelId(self):
229
+ return self.nmChannelId
230
+
231
+ def setNmChannelId(self, value):
232
+ self.nmChannelId = value
233
+ return self
234
+
235
+ def getNmChannelSleepMaster(self):
236
+ return self.nmChannelSleepMaster
237
+
238
+ def setNmChannelSleepMaster(self, value):
239
+ self.nmChannelSleepMaster = value
240
+ return self
241
+
242
+ def createCanNmNode(self, short_name: str) -> CanNmNode:
243
+ if (short_name not in self.elements):
244
+ cluster = CanNmNode(self, short_name)
245
+ self.elements[short_name] = cluster
246
+ self._nmNodes.append(cluster)
247
+ return self.elements[short_name]
248
+
249
+ def getCanNmNodes(self) -> List[CanNmNode]:
250
+ return list(sorted(filter(lambda a: isinstance(a, CanNmNode), self.elements.values()), key= lambda o:o.short_name))
251
+
252
+ def getNmNodes(self) -> List[NmNode]:
253
+ return list(sorted(filter(lambda a: isinstance(a, NmNode), self.elements.values()), key= lambda o:o.short_name))
254
+
255
+ def getNmNodeDetectionEnabled(self):
256
+ return self.nmNodeDetectionEnabled
257
+
258
+ def setNmNodeDetectionEnabled(self, value):
259
+ self.nmNodeDetectionEnabled = value
260
+ return self
261
+
262
+ def getNmNodeIdEnabled(self):
263
+ return self.nmNodeIdEnabled
264
+
265
+ def setNmNodeIdEnabled(self, value):
266
+ self.nmNodeIdEnabled = value
267
+ return self
268
+
269
+ def getNmPncParticipation(self):
270
+ return self.nmPncParticipation
271
+
272
+ def setNmPncParticipation(self, value):
273
+ self.nmPncParticipation = value
274
+ return self
275
+
276
+ def getNmRepeatMsgIndEnabled(self):
277
+ return self.nmRepeatMsgIndEnabled
278
+
279
+ def setNmRepeatMsgIndEnabled(self, value):
280
+ self.nmRepeatMsgIndEnabled = value
281
+ return self
282
+
283
+ def getNmSynchronizingNetwork(self):
284
+ return self._nmSynchronizingNetwork
285
+
286
+ def setNmSynchronizingNetwork(self, value):
287
+ self._nmSynchronizingNetwork = value
288
+ return self
289
+
290
+ class CanNmCluster(NmCluster):
291
+ def __init__(self, parent: ARObject, short_name: str):
292
+ super().__init__(parent, short_name)
293
+
294
+ self.nmBusloadReductionActive = None
295
+ self.nmCarWakeUpBitPosition = None
296
+ self.nmCarWakeUpFilterNodeId = None
297
+ self.nmCarWakeUpRxEnabled = None
298
+ self.nmCbvPosition = None
299
+ self.nmChannelActive = None
300
+ self.nmImmediateNmCycleTime = None
301
+ self.nmImmediateNmTransmissions = None
302
+ self.nmMessageTimeoutTime = None
303
+ self.nmMsgCycleTime = None
304
+ self.nmNetworkTimeout = None
305
+ self.nmNidPosition = None
306
+ self.nmRemoteSleepIndicationTime = None
307
+ self.nmRepeatMessageTime = None
308
+ self.nmUserDataLength = None
309
+ self.nmWaitBusSleepTime = None
310
+
311
+ def getNmBusloadReductionActive(self):
312
+ return self.nmBusloadReductionActive
313
+
314
+ def setNmBusloadReductionActive(self, value):
315
+ self.nmBusloadReductionActive = value
316
+ return self
317
+
318
+ def getNmCarWakeUpBitPosition(self):
319
+ return self.nmCarWakeUpBitPosition
320
+
321
+ def setNmCarWakeUpBitPosition(self, value):
322
+ self.nmCarWakeUpBitPosition = value
323
+ return self
324
+
325
+ def getNmCarWakeUpFilterNodeId(self):
326
+ return self.nmCarWakeUpFilterNodeId
327
+
328
+ def setNmCarWakeUpFilterNodeId(self, value):
329
+ self.nmCarWakeUpFilterNodeId = value
330
+ return self
331
+
332
+ def getNmCarWakeUpRxEnabled(self):
333
+ return self.nmCarWakeUpRxEnabled
334
+
335
+ def setNmCarWakeUpRxEnabled(self, value):
336
+ self.nmCarWakeUpRxEnabled = value
337
+ return self
338
+
339
+ def getNmCbvPosition(self):
340
+ return self.nmCbvPosition
341
+
342
+ def setNmCbvPosition(self, value):
343
+ self.nmCbvPosition = value
344
+ return self
345
+
346
+ def getNmChannelActive(self):
347
+ return self.nmChannelActive
348
+
349
+ def setNmChannelActive(self, value):
350
+ self.nmChannelActive = value
351
+ return self
352
+
353
+ def getNmImmediateNmCycleTime(self):
354
+ return self.nmImmediateNmCycleTime
355
+
356
+ def setNmImmediateNmCycleTime(self, value):
357
+ self.nmImmediateNmCycleTime = value
358
+ return self
359
+
360
+ def getNmImmediateNmTransmissions(self):
361
+ return self.nmImmediateNmTransmissions
362
+
363
+ def setNmImmediateNmTransmissions(self, value):
364
+ self.nmImmediateNmTransmissions = value
365
+ return self
366
+
367
+ def getNmMessageTimeoutTime(self):
368
+ return self.nmMessageTimeoutTime
369
+
370
+ def setNmMessageTimeoutTime(self, value):
371
+ self.nmMessageTimeoutTime = value
372
+ return self
373
+
374
+ def getNmMsgCycleTime(self):
375
+ return self.nmMsgCycleTime
376
+
377
+ def setNmMsgCycleTime(self, value):
378
+ self.nmMsgCycleTime = value
379
+ return self
380
+
381
+ def getNmNetworkTimeout(self):
382
+ return self.nmNetworkTimeout
383
+
384
+ def setNmNetworkTimeout(self, value):
385
+ self.nmNetworkTimeout = value
386
+ return self
387
+
388
+ def getNmNidPosition(self):
389
+ return self.nmNidPosition
390
+
391
+ def setNmNidPosition(self, value):
392
+ self.nmNidPosition = value
393
+ return self
394
+
395
+ def getNmRemoteSleepIndicationTime(self):
396
+ return self.nmRemoteSleepIndicationTime
397
+
398
+ def setNmRemoteSleepIndicationTime(self, value):
399
+ self.nmRemoteSleepIndicationTime = value
400
+ return self
401
+
402
+ def getNmRepeatMessageTime(self):
403
+ return self.nmRepeatMessageTime
404
+
405
+ def setNmRepeatMessageTime(self, value):
406
+ self.nmRepeatMessageTime = value
407
+ return self
408
+
409
+ def getNmUserDataLength(self):
410
+ return self.nmUserDataLength
411
+
412
+ def setNmUserDataLength(self, value):
413
+ self.nmUserDataLength = value
414
+ return self
415
+
416
+ def getNmWaitBusSleepTime(self):
417
+ return self.nmWaitBusSleepTime
418
+
419
+ def setNmWaitBusSleepTime(self, value):
420
+ self.nmWaitBusSleepTime = value
421
+ return self
422
+
423
+ class FlexrayNmCluster(NmCluster):
424
+ def __init__(self, parent: ARObject, short_name: str):
425
+ super().__init__(parent, short_name)
426
+
427
+ class J1939NmCluster(NmCluster):
428
+ def __init__(self, parent: ARObject, short_name: str):
429
+ super().__init__(parent, short_name)
430
+
431
+ class UdpNmCluster(NmCluster):
432
+ def __init__(self, parent: ARObject, short_name: str):
433
+ super().__init__(parent, short_name)
434
+
435
+ class NmEcu(Identifiable):
436
+ def __init__(self, parent: ARObject, short_name: str):
437
+ super().__init__(parent, short_name)
438
+
439
+ self.busDependentNmEcus = []
440
+ self.ecuInstance = None
441
+ self.nmBusSynchronizationEnabled = None
442
+ self.nmComControlEnabled = None
443
+ self.nmCoordinator = None
444
+ self.nmCycletimeMainFunction = None
445
+ self.nmPduRxIndicationEnabled = None
446
+ self.nmRemoteSleepIndEnabled = None
447
+ self.nmStateChangeIndEnabled = None
448
+ self.nmUserDataEnabled = None
449
+
450
+ def getBusDependentNmEcus(self):
451
+ return self.busDependentNmEcus
452
+
453
+ def addBusDependentNmEcu(self, value):
454
+ self.busDependentNmEcus.append(value)
455
+ return self
456
+
457
+ def getEcuInstance(self):
458
+ return self.ecuInstance
459
+
460
+ def setEcuInstance(self, value):
461
+ self.ecuInstance = value
462
+ return self
463
+
464
+ def getNmBusSynchronizationEnabled(self):
465
+ return self.nmBusSynchronizationEnabled
466
+
467
+ def setNmBusSynchronizationEnabled(self, value):
468
+ self.nmBusSynchronizationEnabled = value
469
+ return self
470
+
471
+ def getNmComControlEnabled(self):
472
+ return self.nmComControlEnabled
473
+
474
+ def setNmComControlEnabled(self, value):
475
+ self.nmComControlEnabled = value
476
+ return self
477
+
478
+ def getNmCoordinator(self):
479
+ return self.nmCoordinator
480
+
481
+ def setNmCoordinator(self, value):
482
+ self.nmCoordinator = value
483
+ return self
484
+
485
+ def getNmCycletimeMainFunction(self):
486
+ return self.nmCycletimeMainFunction
487
+
488
+ def setNmCycletimeMainFunction(self, value):
489
+ self.nmCycletimeMainFunction = value
490
+ return self
491
+
492
+ def getNmPduRxIndicationEnabled(self):
493
+ return self.nmPduRxIndicationEnabled
494
+
495
+ def setNmPduRxIndicationEnabled(self, value):
496
+ self.nmPduRxIndicationEnabled = value
497
+ return self
498
+
499
+ def getNmRemoteSleepIndEnabled(self):
500
+ return self.nmRemoteSleepIndEnabled
501
+
502
+ def setNmRemoteSleepIndEnabled(self, value):
503
+ self.nmRemoteSleepIndEnabled = value
504
+ return self
505
+
506
+ def getNmStateChangeIndEnabled(self):
507
+ return self.nmStateChangeIndEnabled
508
+
509
+ def setNmStateChangeIndEnabled(self, value):
510
+ self.nmStateChangeIndEnabled = value
511
+ return self
512
+
513
+ def getNmUserDataEnabled(self):
514
+ return self.nmUserDataEnabled
515
+
516
+ def setNmUserDataEnabled(self, value):
517
+ self.nmUserDataEnabled = value
518
+ return self
519
+
520
+
521
+
522
+
523
+ class NmConfig(FibexElement):
524
+ def __init__(self, parent: ARObject, short_name: str):
525
+ super().__init__(parent, short_name)
526
+
527
+ self.nmClusterCouplings = [] # type: List[NmClusterCoupling]
528
+ self.nmIfEcus = [] # type: List[NmEcu]
529
+
530
+ def createCanNmCluster(self, short_name: str) -> CanNmCluster:
531
+ if (short_name not in self.elements):
532
+ cluster = CanNmCluster(self, short_name)
533
+ self.elements[short_name] = cluster
534
+ return self.elements[short_name]
535
+
536
+ def getCanNmClusters(self) -> List[CanNmCluster]:
537
+ return list(sorted(filter(lambda a: isinstance(a, CanNmCluster), self.elements.values()), key= lambda o:o.short_name))
538
+
539
+ def getNmClusters(self) -> List[NmCluster]:
540
+ return list(sorted(filter(lambda a: isinstance(a, NmCluster), self.elements.values()), key= lambda o:o.short_name))
541
+
542
+ def getNmClusterCouplings(self):
543
+ return self.nmClusterCouplings
544
+
545
+ def addNmClusterCouplings(self, value):
546
+ self.nmClusterCouplings.append(value)
547
+ return self
548
+
549
+ def getNmIfEcus(self):
550
+ return self.nmIfEcus
551
+
552
+ def addNmIfEcus(self, value):
553
+ self.nmIfEcus.append(value)
554
+ return self
@@ -0,0 +1,7 @@
1
+
2
+ from ....ar_object import ARObject
3
+ from ....fibex.fibex_core.core_communication import FibexElement
4
+
5
+ class CanTpConfig(FibexElement):
6
+ def __init__(self, parent: ARObject, short_name: str):
7
+ super().__init__(parent, short_name)
File without changes
File without changes
@@ -0,0 +1,105 @@
1
+
2
+ from ....ar_ref import RefType
3
+ from ....ar_object import ARFloat, ARLiteral, ARNumerical, ARObject
4
+ from ....general_structure import ARElement
5
+ class PhysicalDimension(ARElement):
6
+ def __init__(self, parent: ARObject, short_name: str):
7
+ super().__init__(parent, short_name)
8
+
9
+ self.currentExp = None # type: ARNumerical
10
+ self.lengthExp = None # type: ARNumerical
11
+ self.luminousIntensityExp = None # type: ARNumerical
12
+ self.massExp = None # type: ARNumerical
13
+ self.molarAmountExp = None # type: ARNumerical
14
+ self.temperatureExp = None # type: ARNumerical
15
+ self.timeExp = None # type: ARNumerical
16
+
17
+ def getCurrentExp(self):
18
+ return self.currentExp
19
+
20
+ def setCurrentExp(self, value):
21
+ self.currentExp = value
22
+ return self
23
+
24
+ def getLengthExp(self):
25
+ return self.lengthExp
26
+
27
+ def setLengthExp(self, value):
28
+ self.lengthExp = value
29
+ return self
30
+
31
+ def getLuminousIntensityExp(self):
32
+ return self.luminousIntensityExp
33
+
34
+ def setLuminousIntensityExp(self, value):
35
+ self.luminousIntensityExp = value
36
+ return self
37
+
38
+ def getMassExp(self):
39
+ return self.massExp
40
+
41
+ def setMassExp(self, value):
42
+ self.massExp = value
43
+ return self
44
+
45
+ def getMolarAmountExp(self):
46
+ return self.molarAmountExp
47
+
48
+ def setMolarAmountExp(self, value):
49
+ self.molarAmountExp = value
50
+ return self
51
+
52
+ def getTemperatureExp(self):
53
+ return self.temperatureExp
54
+
55
+ def setTemperatureExp(self, value):
56
+ self.temperatureExp = value
57
+ return self
58
+
59
+ def getTimeExp(self):
60
+ return self.timeExp
61
+
62
+ def setTimeExp(self, value):
63
+ self.timeExp = value
64
+ return self
65
+
66
+ class SingleLanguageUnitNames(ARLiteral):
67
+ def __init__(self) -> None:
68
+ super().__init__()
69
+
70
+ class Unit(ARElement):
71
+ def __init__(self, parent: ARObject, short_name: str):
72
+ super().__init__(parent, short_name)
73
+
74
+ self.displayName = None # type: SingleLanguageUnitNames
75
+ self.factorSiToUnit = None # type: ARFloat
76
+ self.offsetSiToUnit = None # type: ARFloat
77
+ self.physicalDimensionRef = None # type: RefType
78
+
79
+ def getDisplayName(self):
80
+ return self.displayName
81
+
82
+ def setDisplayName(self, value):
83
+ self.displayName = value
84
+ return self
85
+
86
+ def getFactorSiToUnit(self):
87
+ return self.factorSiToUnit
88
+
89
+ def setFactorSiToUnit(self, value):
90
+ self.factorSiToUnit = value
91
+ return self
92
+
93
+ def getOffsetSiToUnit(self):
94
+ return self.offsetSiToUnit
95
+
96
+ def setOffsetSiToUnit(self, value):
97
+ self.offsetSiToUnit = value
98
+ return self
99
+
100
+ def getPhysicalDimensionRef(self):
101
+ return self.physicalDimensionRef
102
+
103
+ def setPhysicalDimensionRef(self, value):
104
+ self.physicalDimensionRef = value
105
+ return self
File without changes
@@ -0,0 +1,42 @@
1
+
2
+ from typing import List
3
+ from ....ar_object import ARLiteral, ARObject
4
+ from ....general_structure import Identifiable
5
+
6
+
7
+ class SwAddrMethod(Identifiable):
8
+ def __init__(self, parent: ARObject, short_name: str):
9
+ super().__init__(parent, short_name)
10
+
11
+ self.memoryAllocationKeywordPolicy = None # type: ARLiteral
12
+ self.option = [] # type: List[ARLiteral]
13
+ self.sectionInitializationPolicy = None # type: ARLiteral
14
+ self.sectionType = None # type: ARLiteral
15
+
16
+ def getMemoryAllocationKeywordPolicy(self):
17
+ return self.memoryAllocationKeywordPolicy
18
+
19
+ def setMemoryAllocationKeywordPolicy(self, value):
20
+ self.memoryAllocationKeywordPolicy = value
21
+ return self
22
+
23
+ def getOption(self):
24
+ return self.option
25
+
26
+ def addOption(self, value):
27
+ self.option.append(value)
28
+ return self
29
+
30
+ def getSectionInitializationPolicy(self):
31
+ return self.sectionInitializationPolicy
32
+
33
+ def setSectionInitializationPolicy(self, value):
34
+ self.sectionInitializationPolicy = value
35
+ return self
36
+
37
+ def getSectionType(self):
38
+ return self.sectionType
39
+
40
+ def setSectionType(self, value):
41
+ self.sectionType = value
42
+ return self