armodel 1.7.6__py3-none-any.whl → 1.7.8__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 (69) hide show
  1. armodel/cli/arxml_dump_cli.py +33 -22
  2. armodel/cli/arxml_format_cli.py +25 -13
  3. armodel/models/M2/AUTOSARTemplates/AutosarTopLevelStructure.py +95 -21
  4. armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswBehavior.py +359 -59
  5. armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswOverview.py +134 -35
  6. armodel/models/M2/AUTOSARTemplates/CommonStructure/Filter.py +17 -7
  7. armodel/models/M2/AUTOSARTemplates/CommonStructure/InternalBehavior.py +10 -1
  8. armodel/models/M2/AUTOSARTemplates/CommonStructure/TriggerDeclaration.py +18 -2
  9. armodel/models/M2/AUTOSARTemplates/ECUCDescriptionTemplate.py +20 -19
  10. armodel/models/M2/AUTOSARTemplates/EcuResourceTemplate/HwElementCategory.py +59 -0
  11. armodel/models/M2/AUTOSARTemplates/EcuResourceTemplate/__init__.py +145 -0
  12. armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/ARPackage.py +215 -157
  13. armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/Identifiable.py +69 -35
  14. armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/PrimitiveTypes.py +17 -1
  15. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Communication.py +19 -5
  16. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Components/__init__.py +113 -39
  17. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Composition/__init__.py +3 -2
  18. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Datatype/DataPrototypes.py +41 -16
  19. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Datatype/Datatypes.py +10 -3
  20. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/EndToEndProtection.py +13 -6
  21. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/PortInterface/__init__.py +111 -38
  22. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/AccessCount.py +9 -1
  23. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/ModeDeclarationGroup.py +5 -4
  24. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/RTEEvents.py +26 -8
  25. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/__init__.py +28 -6
  26. armodel/models/M2/AUTOSARTemplates/SystemTemplate/DataMapping.py +167 -5
  27. armodel/models/M2/AUTOSARTemplates/SystemTemplate/DoIp.py +29 -0
  28. armodel/models/M2/AUTOSARTemplates/SystemTemplate/EcuResourceMapping.py +45 -0
  29. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Can/CanTopology.py +31 -21
  30. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet/EthernetFrame.py +5 -3
  31. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet/EthernetTopology.py +9 -0
  32. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Flexray/FlexrayCommunication.py +76 -0
  33. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Flexray/FlexrayTopology.py +654 -0
  34. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Flexray/__init__.py +0 -0
  35. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/FibexCore/CoreCommunication.py +539 -77
  36. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/FibexCore/CoreTopology.py +158 -40
  37. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/FibexCore/EcuInstance.py +28 -6
  38. armodel/models/M2/AUTOSARTemplates/SystemTemplate/InstanceRefs.py +2 -0
  39. armodel/models/M2/AUTOSARTemplates/SystemTemplate/NetworkManagement.py +245 -130
  40. armodel/models/M2/AUTOSARTemplates/SystemTemplate/SWmapping.py +27 -0
  41. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Transformer/__init__.py +524 -0
  42. armodel/models/M2/AUTOSARTemplates/SystemTemplate/TransportProtocols.py +592 -17
  43. armodel/models/M2/AUTOSARTemplates/SystemTemplate/__init__.py +33 -21
  44. armodel/models/M2/MSR/AsamHdo/AdminData.py +1 -2
  45. armodel/models/M2/MSR/AsamHdo/ComputationMethod.py +3 -1
  46. armodel/models/M2/MSR/AsamHdo/SpecialData.py +35 -8
  47. armodel/models/M2/MSR/DataDictionary/RecordLayout.py +0 -3
  48. armodel/models/__init__.py +8 -0
  49. armodel/parser/abstract_arxml_parser.py +34 -27
  50. armodel/parser/arxml_parser.py +1778 -616
  51. armodel/parser/file_parser.py +5 -3
  52. armodel/tests/test_armodel/models/test_ar_package.py +6 -11
  53. armodel/tests/test_armodel/models/test_bsw_module_template.py +5 -3
  54. armodel/tests/test_armodel/models/test_datatype.py +1 -1
  55. armodel/tests/test_armodel/models/test_port_interface.py +116 -117
  56. armodel/tests/test_armodel/parser/test_bsw_module_descriiption.py +218 -0
  57. armodel/tests/test_armodel/parser/test_sw_components.py +54 -22
  58. armodel/tests/test_armodel/parser/test_system.py +2 -8
  59. armodel/transformer/__init__.py +0 -0
  60. armodel/transformer/abstract.py +6 -0
  61. armodel/transformer/admin_data.py +31 -0
  62. armodel/writer/abstract_arxml_writer.py +27 -33
  63. armodel/writer/arxml_writer.py +1875 -599
  64. {armodel-1.7.6.dist-info → armodel-1.7.8.dist-info}/METADATA +81 -3
  65. {armodel-1.7.6.dist-info → armodel-1.7.8.dist-info}/RECORD +69 -56
  66. {armodel-1.7.6.dist-info → armodel-1.7.8.dist-info}/LICENSE +0 -0
  67. {armodel-1.7.6.dist-info → armodel-1.7.8.dist-info}/WHEEL +0 -0
  68. {armodel-1.7.6.dist-info → armodel-1.7.8.dist-info}/entry_points.txt +0 -0
  69. {armodel-1.7.6.dist-info → armodel-1.7.8.dist-info}/top_level.txt +0 -0
@@ -1,14 +1,18 @@
1
- from ....M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.IncludedDataTypes import IncludedDataTypeSet
2
- from ....M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.ModeDeclarationGroup import IncludedModeDeclarationGroupSet
1
+ from abc import ABCMeta
2
+ from typing import List
3
+
4
+ from ....M2.AUTOSARTemplates.CommonStructure.InternalBehavior import ExecutableEntity
5
+ from ....M2.AUTOSARTemplates.CommonStructure.InternalBehavior import InternalBehavior
3
6
  from ....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.Identifiable import Identifiable
4
- from ....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import ARBoolean, AREnum, ARFloat, ARNumerical, String, TimeValue
7
+ from ....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import ARBoolean, AREnum, ARFloat, ARNumerical, Boolean
8
+ from ....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import PositiveInteger, String, TimeValue
5
9
  from ....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.ArObject import ARObject
6
10
  from ....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import RefType
7
- from ....M2.AUTOSARTemplates.CommonStructure.InternalBehavior import ExecutableEntity
8
11
  from ....M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.Identifiable import Referrable
9
- from ....M2.AUTOSARTemplates.CommonStructure.InternalBehavior import InternalBehavior
10
- from abc import ABCMeta
11
- from typing import List
12
+ from ....M2.AUTOSARTemplates.SWComponentTemplate.Datatype.DataPrototypes import VariableDataPrototype
13
+ from ....M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.IncludedDataTypes import IncludedDataTypeSet
14
+ from ....M2.AUTOSARTemplates.SWComponentTemplate.SwcInternalBehavior.ModeDeclarationGroup import IncludedModeDeclarationGroupSet
15
+
12
16
 
13
17
  class BswModuleCallPoint(Referrable):
14
18
  def __init__(self, parent: ARObject, short_name: str):
@@ -22,7 +26,8 @@ class BswModuleCallPoint(Referrable):
22
26
  def addContextLimitationRef(self, value):
23
27
  self.contextLimitationRefs.append(value)
24
28
  return self
25
-
29
+
30
+
26
31
  class BswVariableAccess(Referrable):
27
32
  def __init__(self, parent: ARObject, short_name: str):
28
33
  super().__init__(parent, short_name)
@@ -44,9 +49,10 @@ class BswVariableAccess(Referrable):
44
49
  self.contextLimitationRefs.append(value)
45
50
  return self
46
51
 
47
- class BswModuleEntity(ExecutableEntity, metaclass = ABCMeta):
52
+
53
+ class BswModuleEntity(ExecutableEntity, metaclass=ABCMeta):
48
54
  def __init__(self, parent: ARObject, short_name: str):
49
- if type(self) == BswModuleEntity:
55
+ if type(self) is BswModuleEntity:
50
56
  raise NotImplementedError("BswModuleEntity is an abstract class.")
51
57
  super().__init__(parent, short_name)
52
58
 
@@ -59,68 +65,81 @@ class BswModuleEntity(ExecutableEntity, metaclass = ABCMeta):
59
65
  self.issuedTriggerRefs = [] # type: List[RefType]
60
66
  self.managedModeGroupRefs = [] # type: List[RefType]
61
67
  self.schedulerNamePrefixRef = None # type: List[RefType]
62
-
68
+
63
69
  def getAccessedModeGroupRefs(self):
64
70
  return self.accessedModeGroupRefs
65
71
 
66
- def addAccessedModeGroupRef(self, value):
67
- self.accessedModeGroupRefs.append(value)
72
+ def setAccessedModeGroupRefs(self, value):
73
+ if value is not None:
74
+ self.accessedModeGroupRefs = value
68
75
  return self
69
76
 
70
77
  def getActivationPointRefs(self):
71
78
  return self.activationPointRefs
72
79
 
73
- def addActivationPointRef(self, value):
74
- self.activationPointRefs.append(value)
80
+ def setActivationPointRefs(self, value):
81
+ if value is not None:
82
+ self.activationPointRefs = value
75
83
  return self
76
84
 
77
85
  def getCallPoints(self):
78
86
  return self.callPoints
79
87
 
80
- def addCallPoint(self, value):
81
- self.callPoints.append(value)
88
+ def setCallPoints(self, value):
89
+ if value is not None:
90
+ self.callPoints = value
82
91
  return self
83
92
 
84
- def getDataReceivePoint(self):
93
+ def getDataReceivePoints(self):
85
94
  return self.dataReceivePoints
86
95
 
87
- def addDataReceivePoint(self, value):
88
- self.dataReceivePoints.append(value)
89
- return self
96
+ def createDataReceivePoint(self, short_name: str) -> BswVariableAccess:
97
+ if (not self.IsElementExists(short_name)):
98
+ access = BswVariableAccess(self, short_name)
99
+ self.addElement(access)
100
+ self.dataReceivePoints.append(access)
101
+ return self.getElement(short_name)
90
102
 
91
103
  def getDataSendPoints(self):
92
104
  return self.dataSendPoints
93
105
 
94
- def addDataSendPoint(self, value):
95
- self.dataSendPoints.append(value)
96
- return self
106
+ def createDataSendPoint(self, short_name: str) -> BswVariableAccess:
107
+ if (not self.IsElementExists(short_name)):
108
+ access = BswVariableAccess(self, short_name)
109
+ self.addElement(access)
110
+ self.dataSendPoints.append(access)
111
+ return self.getElement(short_name)
97
112
 
98
113
  def getImplementedEntryRef(self):
99
114
  return self.implementedEntryRef
100
115
 
101
116
  def setImplementedEntryRef(self, value):
102
- self.implementedEntryRef = value
117
+ if value is not None:
118
+ self.implementedEntryRef = value
103
119
  return self
104
120
 
105
121
  def getIssuedTriggerRefs(self):
106
122
  return self.issuedTriggerRefs
107
123
 
108
- def addIssuedTriggerRefs(self, value):
109
- self.issuedTriggerRefs(value)
124
+ def addIssuedTriggerRef(self, value):
125
+ if value is not None:
126
+ self.issuedTriggerRefs.append(value)
110
127
  return self
111
128
 
112
129
  def getManagedModeGroupRefs(self):
113
130
  return self.managedModeGroupRefs
114
131
 
115
132
  def addManagedModeGroupRef(self, value):
116
- self.managedModeGroupRefs = value
133
+ if value is not None:
134
+ self.managedModeGroupRefs.append(value)
117
135
  return self
118
136
 
119
137
  def getSchedulerNamePrefixRef(self):
120
138
  return self.schedulerNamePrefixRef
121
139
 
122
140
  def setSchedulerNamePrefixRef(self, value):
123
- self.schedulerNamePrefixRef = value
141
+ if value is not None:
142
+ self.schedulerNamePrefixRef = value
124
143
  return self
125
144
 
126
145
 
@@ -128,10 +147,12 @@ class BswCalledEntity(BswModuleEntity):
128
147
  def __init__(self, parent: ARObject, short_name: str):
129
148
  super().__init__(parent, short_name)
130
149
 
150
+
131
151
  class BswSchedulableEntity(BswModuleEntity):
132
152
  def __init__(self, parent: ARObject, short_name: str):
133
153
  super().__init__(parent, short_name)
134
154
 
155
+
135
156
  class BswInterruptCategory(AREnum):
136
157
  CAT1 = "cat1"
137
158
  CAT2 = "cat2"
@@ -140,7 +161,8 @@ class BswInterruptCategory(AREnum):
140
161
  super().__init__((
141
162
  BswInterruptCategory.CAT1,
142
163
  BswInterruptCategory.CAT2,
143
- ))
164
+ ))
165
+
144
166
 
145
167
  class BswInterruptEntity(BswModuleEntity):
146
168
  def __init__(self, parent: ARObject, short_name: str):
@@ -163,9 +185,10 @@ class BswInterruptEntity(BswModuleEntity):
163
185
  self.interruptSource = value
164
186
  return self
165
187
 
188
+
166
189
  class BswEvent(Identifiable, metaclass=ABCMeta):
167
190
  def __init__(self, parent: ARObject, short_name: str):
168
- if type(self) == BswEvent:
191
+ if type(self) is BswEvent:
169
192
  raise NotImplementedError("BswEvent is an abstract class.")
170
193
  super().__init__(parent, short_name)
171
194
 
@@ -178,16 +201,29 @@ class BswEvent(Identifiable, metaclass=ABCMeta):
178
201
  self.startsOnEventRef = value
179
202
  return self
180
203
 
204
+
181
205
  class BswOperationInvokedEvent(BswEvent):
182
206
  def __init__(self, parent: ARObject, short_name: str):
183
207
  super().__init__(parent, short_name)
184
208
 
209
+ self.entryRef = None # type: RefType
210
+
211
+ def getEntryRef(self):
212
+ return self.entryRef
213
+
214
+ def setEntryRef(self, value):
215
+ if value is not None:
216
+ self.entryRef = value
217
+ return self
218
+
219
+
185
220
  class BswScheduleEvent(BswEvent, metaclass=ABCMeta):
186
221
  def __init__(self, parent: ARObject, short_name: str):
187
- if type(self) == BswScheduleEvent:
222
+ if type(self) is BswScheduleEvent:
188
223
  raise NotImplementedError("BswScheduleEvent is an abstract class.")
189
224
  super().__init__(parent, short_name)
190
225
 
226
+
191
227
  class BswModeSwitchEvent(BswScheduleEvent):
192
228
  def __init__(self, parent: ARObject, short_name: str):
193
229
  super().__init__(parent, short_name)
@@ -201,6 +237,7 @@ class BswModeSwitchEvent(BswScheduleEvent):
201
237
  self.activation = value
202
238
  return self
203
239
 
240
+
204
241
  class BswTimingEvent(BswScheduleEvent):
205
242
  def __init__(self, parent: ARObject, short_name: str):
206
243
  super().__init__(parent, short_name)
@@ -235,6 +272,7 @@ class BswDataReceivedEvent(BswScheduleEvent):
235
272
  self.dataRef = value
236
273
  return self
237
274
 
275
+
238
276
  class BswInternalTriggerOccurredEvent(BswScheduleEvent):
239
277
  def __init__(self, parent: ARObject, short_name: str):
240
278
  super().__init__(parent, short_name)
@@ -247,6 +285,8 @@ class BswInternalTriggerOccurredEvent(BswScheduleEvent):
247
285
  def setEventSourceRef(self, value):
248
286
  self.eventSourceRef = value
249
287
  return self
288
+
289
+
250
290
  class BswModeSwitchAckRequest(ARObject):
251
291
  def __init__(self):
252
292
  super().__init__()
@@ -260,6 +300,7 @@ class BswModeSwitchAckRequest(ARObject):
260
300
  self.timeout = value
261
301
  return self
262
302
 
303
+
263
304
  class BswModeSenderPolicy(ARObject):
264
305
  def __init__(self):
265
306
  super().__init__()
@@ -289,24 +330,253 @@ class BswModeSenderPolicy(ARObject):
289
330
  return self._queue_length
290
331
 
291
332
 
333
+ class BswBackgroundEvent(BswScheduleEvent):
334
+ def __init__(self, parent, short_name):
335
+ super().__init__(parent, short_name)
336
+
337
+
338
+ class BswOsTaskExecutionEvent(BswScheduleEvent):
339
+ def __init__(self, parent, short_name):
340
+ super().__init__(parent, short_name)
341
+
342
+
343
+ class BswExternalTriggerOccurredEvent(BswScheduleEvent):
344
+ def __init__(self, parent, short_name):
345
+ super().__init__(parent, short_name)
346
+
347
+ self.triggerRef = None # type: RefType
348
+
349
+ def getTriggerRef(self):
350
+ return self.triggerRef
351
+
352
+ def setTriggerRef(self, value):
353
+ if value is not None:
354
+ self.triggerRef = value
355
+ return self
356
+
357
+
358
+ class BswApiOptions(ARObject, metaclass=ABCMeta):
359
+ def __init__(self):
360
+ if type(self) is BswApiOptions:
361
+ raise NotImplementedError("BswApiOptions is an abstract class.")
362
+
363
+ super().__init__()
364
+
365
+ self.enableTakeAddress = None # type: Boolean
366
+
367
+ def getEnableTakeAddress(self):
368
+ return self.enableTakeAddress
369
+
370
+ def setEnableTakeAddress(self, value):
371
+ if value is not None:
372
+ self.enableTakeAddress = value
373
+ return self
374
+
375
+
376
+ class BswDataReceptionPolicy(BswApiOptions, metaclass=ABCMeta):
377
+ def __init__(self):
378
+ if type(self) is BswDataReceptionPolicy:
379
+ raise NotImplementedError("BswDataReceptionPolicy is an abstract class.")
380
+
381
+ super().__init__()
382
+
383
+ self.receivedDataRef = None # type: RefType
384
+
385
+ def getReceivedDataRef(self):
386
+ return self.receivedDataRef
387
+
388
+ def setReceivedDataRef(self, value):
389
+ if value is not None:
390
+ self.receivedDataRef = value
391
+ return self
392
+
393
+
394
+ class BswQueuedDataReceptionPolicy(BswDataReceptionPolicy):
395
+ def __init__(self):
396
+ super().__init__()
397
+
398
+ self.queueLength = None # type: PositiveInteger
399
+
400
+ def getQueueLength(self):
401
+ return self.queueLength
402
+
403
+ def setQueueLength(self, value):
404
+ if value is not None:
405
+ self.queueLength = value
406
+ return self
407
+
408
+
292
409
  class BswInternalBehavior(InternalBehavior):
293
410
  def __init__(self, parent: ARObject, short_name: str):
294
411
  super().__init__(parent, short_name)
295
412
 
296
- self.entities = [] # type: List[BswModuleEntity]
297
- self.events = [] # type: List[BswEvent]
298
- self.mode_sender_policies = [] # type: List[BswModeSenderPolicy]
299
- self.included_mode_declaration_group_sets = [] # type: List[IncludedModeDeclarationGroupSet]
300
- self.included_data_type_sets = [] # type: List[IncludedDataTypeSet]
413
+ self.arTypedPerInstanceMemories = [] # type: List[VariableDataPrototype]
414
+ self.bswPerInstanceMemoryPolicies = [] # type: List[BswPerInstanceMemoryPolicy]
415
+ self.clientPolicies = [] # type: List[BswClientPolicy]
416
+ self.distinguishedPartitions = [] # type: List[BswDistinguishedPartition]
417
+ self.entities = [] # type: List[BswModuleEntity]
418
+ self.events = [] # type: List[BswEvent]
419
+ self.exclusiveAreaPolicies = [] # type: List[BswExclusiveAreaPolicy]
420
+ self.includedDataTypeSets = [] # type: List[IncludedDataTypeSet]
421
+ self.includedModeDeclarationGroupSets = [] # type: List[IncludedModeDeclarationGroupSet]
422
+ self.internalTriggeringPoints = [] # type: List[BswInternalTriggeringPoint]
423
+ self.internalTriggeringPointPolicies = [] # type: List[BswInternalTriggeringPointPolicy]
424
+ self.modeReceiverPolicies = [] # type: List[BswModeReceiverPolicy]
425
+ self.modeSenderPolicies = [] # type: List[BswModeSenderPolicy]
426
+ self.parameterPolicies = [] # type: List[BswParameterPolicy]
427
+ self.perInstanceParameters = [] # type: List[ParameterDataPrototype]
428
+ self.receptionPolicies = [] # type: List[BswDataReceptionPolicy]
429
+ self.releasedTriggerPolicies = [] # type: List[BswReleasedTriggerPolicy]
430
+ self.schedulerNamePrefixes = [] # type: List[BswSchedulerNamePrefix]
431
+ self.sendPolicies = [] # type: List[BswDataSendPolicy]
432
+ self.serviceDependencies = [] # type: List[BswServiceDependency]
433
+ self.triggerDirectImplementations = [] # type: List[BswTriggerDirectImplementation]
434
+ self.variationPointProxies = [] # type: List[VariationPointProxy]
435
+
436
+ def getArTypedPerInstanceMemories(self):
437
+ return self.arTypedPerInstanceMemories
438
+
439
+ def setArTypedPerInstanceMemories(self, value):
440
+ if value is not None:
441
+ self.arTypedPerInstanceMemories = value
442
+ return self
443
+
444
+ def getBswPerInstanceMemoryPolicies(self):
445
+ return self.bswPerInstanceMemoryPolicies
446
+
447
+ def setBswPerInstanceMemoryPolicies(self, value):
448
+ if value is not None:
449
+ self.bswPerInstanceMemoryPolicies = value
450
+ return self
451
+
452
+ def getClientPolicies(self):
453
+ return self.clientPolicies
454
+
455
+ def setClientPolicies(self, value):
456
+ if value is not None:
457
+ self.clientPolicies = value
458
+ return self
459
+
460
+ def getDistinguishedPartitions(self):
461
+ return self.distinguishedPartitions
462
+
463
+ def setDistinguishedPartitions(self, value):
464
+ if value is not None:
465
+ self.distinguishedPartitions = value
466
+ return self
467
+
468
+ def getExclusiveAreaPolicies(self):
469
+ return self.exclusiveAreaPolicies
470
+
471
+ def setExclusiveAreaPolicies(self, value):
472
+ if value is not None:
473
+ self.exclusiveAreaPolicies = value
474
+ return self
475
+
476
+ def getInternalTriggeringPoints(self):
477
+ return self.internalTriggeringPoints
478
+
479
+ def setInternalTriggeringPoints(self, value):
480
+ if value is not None:
481
+ self.internalTriggeringPoints = value
482
+ return self
483
+
484
+ def getInternalTriggeringPointPolicies(self):
485
+ return self.internalTriggeringPointPolicies
486
+
487
+ def setInternalTriggeringPointPolicies(self, value):
488
+ if value is not None:
489
+ self.internalTriggeringPointPolicies = value
490
+ return self
491
+
492
+ def getModeReceiverPolicies(self):
493
+ return self.modeReceiverPolicies
494
+
495
+ def setModeSenderPolicies(self, value):
496
+ if value is not None:
497
+ self.modeSenderPolicies = value
498
+ return self
499
+
500
+ def getParameterPolicies(self):
501
+ return self.parameterPolicies
502
+
503
+ def setParameterPolicies(self, value):
504
+ if value is not None:
505
+ self.parameterPolicies = value
506
+ return self
507
+
508
+ def getPerInstanceParameters(self):
509
+ return self.perInstanceParameters
510
+
511
+ def setPerInstanceParameters(self, value):
512
+ if value is not None:
513
+ self.perInstanceParameters = value
514
+ return self
515
+
516
+ def getReceptionPolicies(self):
517
+ return self.receptionPolicies
518
+
519
+ def addReceptionPolicy(self, value):
520
+ if value is not None:
521
+ self.receptionPolicies.append(value)
522
+ return self
301
523
 
524
+ def getReleasedTriggerPolicies(self):
525
+ return self.releasedTriggerPolicies
526
+
527
+ def setReleasedTriggerPolicies(self, value):
528
+ if value is not None:
529
+ self.releasedTriggerPolicies = value
530
+ return self
531
+
532
+ def getSchedulerNamePrefixes(self):
533
+ return self.schedulerNamePrefixes
534
+
535
+ def setSchedulerNamePrefixes(self, value):
536
+ if value is not None:
537
+ self.schedulerNamePrefixes = value
538
+ return self
539
+
540
+ def getSendPolicies(self):
541
+ return self.sendPolicies
542
+
543
+ def setSendPolicies(self, value):
544
+ if value is not None:
545
+ self.sendPolicies = value
546
+ return self
547
+
548
+ def getServiceDependencies(self):
549
+ return self.serviceDependencies
550
+
551
+ def setServiceDependencies(self, value):
552
+ if value is not None:
553
+ self.serviceDependencies = value
554
+ return self
555
+
556
+ def getTriggerDirectImplementations(self):
557
+ return self.triggerDirectImplementations
558
+
559
+ def setTriggerDirectImplementations(self, value):
560
+ if value is not None:
561
+ self.triggerDirectImplementations = value
562
+ return self
563
+
564
+ def getVariationPointProxies(self):
565
+ return self.variationPointProxies
566
+
567
+ def setVariationPointProxies(self, value):
568
+ if value is not None:
569
+ self.variationPointProxies = value
570
+ return self
571
+
302
572
  def addModeSenderPolicy(self, policy: BswModeSenderPolicy):
303
- self.mode_sender_policies.append(policy)
573
+ self.modeReceiverPolicies.append(policy)
304
574
 
305
575
  def getModeSenderPolicies(self) -> List[BswModeSenderPolicy]:
306
- return self.mode_sender_policies
576
+ return self.modeReceiverPolicies
307
577
 
308
578
  def createBswCalledEntity(self, short_name: str) -> BswCalledEntity:
309
- if (short_name not in self.elements):
579
+ if not self.IsElementExists(short_name):
310
580
  entity = BswCalledEntity(self, short_name)
311
581
  self.addElement(entity)
312
582
  self.entities.append(entity)
@@ -316,7 +586,7 @@ class BswInternalBehavior(InternalBehavior):
316
586
  return list(filter(lambda a: isinstance(a, BswCalledEntity), self.elements.values()))
317
587
 
318
588
  def createBswSchedulableEntity(self, short_name: str) -> BswSchedulableEntity:
319
- if (short_name not in self.elements):
589
+ if not self.IsElementExists(short_name):
320
590
  entity = BswSchedulableEntity(self, short_name)
321
591
  self.addElement(entity)
322
592
  self.entities.append(entity)
@@ -326,7 +596,7 @@ class BswInternalBehavior(InternalBehavior):
326
596
  return list(filter(lambda a: isinstance(a, BswSchedulableEntity), self.elements.values()))
327
597
 
328
598
  def createBswInterruptEntity(self, short_name: str) -> BswInterruptEntity:
329
- if (short_name not in self.elements):
599
+ if not self.IsElementExists(short_name):
330
600
  entity = BswInterruptEntity(self, short_name)
331
601
  self.addElement(entity)
332
602
  self.entities.append(entity)
@@ -339,58 +609,88 @@ class BswInternalBehavior(InternalBehavior):
339
609
  return list(filter(lambda a: isinstance(a, BswModuleEntity), self.elements.values()))
340
610
 
341
611
  def createBswModeSwitchEvent(self, short_name: str) -> BswModeSwitchEvent:
342
- if (short_name not in self.elements):
612
+ if not self.IsElementExists(short_name):
343
613
  event = BswModeSwitchEvent(self, short_name)
344
- self.elements[short_name] = event
614
+ self.addElement(event)
345
615
  self.events.append(event)
346
- return self.elements[short_name]
616
+ return self.getElement(short_name)
347
617
 
348
618
  def getBswModeSwitchEvents(self) -> List[BswModeSwitchEvent]:
349
619
  return list(filter(lambda a: isinstance(a, BswModeSwitchEvent), self.elements.values()))
350
620
 
351
621
  def createBswTimingEvent(self, short_name: str) -> BswTimingEvent:
352
- if (short_name not in self.elements):
622
+ if not self.IsElementExists(short_name):
353
623
  event = BswTimingEvent(self, short_name)
354
- self.elements[short_name] = event
624
+ self.addElement(event)
355
625
  self.events.append(event)
356
- return self.elements[short_name]
626
+ return self.getElement(short_name)
357
627
 
358
628
  def getBswTimingEvents(self) -> List[BswTimingEvent]:
359
629
  return list(filter(lambda a: isinstance(a, BswTimingEvent), self.elements.values()))
360
630
 
361
631
  def createBswDataReceivedEvent(self, short_name: str) -> BswDataReceivedEvent:
362
- if (short_name not in self.elements):
632
+ if not self.IsElementExists(short_name):
363
633
  event = BswDataReceivedEvent(self, short_name)
364
- self.elements[short_name] = event
634
+ self.addElement(event)
365
635
  self.events.append(event)
366
- return self.elements[short_name]
636
+ return self.getElement(short_name)
367
637
 
368
638
  def getBswDataReceivedEvents(self) -> List[BswDataReceivedEvent]:
369
639
  return list(filter(lambda a: isinstance(a, BswDataReceivedEvent), self.elements.values()))
370
640
 
371
641
  def createBswInternalTriggerOccurredEvent(self, short_name: str) -> BswInternalTriggerOccurredEvent:
372
- if (short_name not in self.elements):
642
+ if not self.IsElementExists(short_name):
373
643
  event = BswInternalTriggerOccurredEvent(self, short_name)
374
- self.elements[short_name] = event
644
+ self.addElement(event)
375
645
  self.events.append(event)
376
- return self.elements[short_name]
377
-
646
+ return self.getElement(short_name)
647
+
378
648
  def getBswInternalTriggerOccurredEvents(self) -> List[BswInternalTriggerOccurredEvent]:
379
649
  return list(filter(lambda a: isinstance(a, BswInternalTriggerOccurredEvent), self.elements.values()))
650
+
651
+ def createBswExternalTriggerOccurredEvent(self, short_name: str) -> BswExternalTriggerOccurredEvent:
652
+ if not self.IsElementExists(short_name):
653
+ event = BswExternalTriggerOccurredEvent(self, short_name)
654
+ self.addElement(event)
655
+ self.events.append(event)
656
+ return self.getElement(short_name)
657
+
658
+ def getBswOperationInvokedEvents(self) -> List[BswOperationInvokedEvent]:
659
+ return list(filter(lambda a: isinstance(a, BswOperationInvokedEvent), self.elements.values()))
660
+
661
+ def createBswOperationInvokedEvent(self, short_name: str) -> BswOperationInvokedEvent:
662
+ if not self.IsElementExists(short_name):
663
+ event = BswOperationInvokedEvent(self, short_name)
664
+ self.addElement(event)
665
+ self.events.append(event)
666
+ return self.getElement(short_name)
667
+
668
+ def getBswExternalTriggerOccurredEvents(self) -> List[BswExternalTriggerOccurredEvent]:
669
+ return list(filter(lambda a: isinstance(a, BswExternalTriggerOccurredEvent), self.elements.values()))
670
+
671
+ def createBswBackgroundEvent(self, short_name: str) -> BswBackgroundEvent:
672
+ if not self.IsElementExists(short_name):
673
+ event = BswBackgroundEvent(self, short_name)
674
+ self.addElement(event)
675
+ self.events.append(event)
676
+ return self.getElement(short_name)
677
+
678
+ def getBswBackgroundEvents(self) -> List[BswBackgroundEvent]:
679
+ return list(filter(lambda a: isinstance(a, BswBackgroundEvent), self.elements.values()))
380
680
 
381
681
  def getBswEvents(self) -> List[BswEvent]:
382
682
  return list(filter(lambda a: isinstance(a, BswEvent), self.elements.values()))
383
683
 
384
684
  def addIncludedModeDeclarationGroupSet(self, group_set: IncludedModeDeclarationGroupSet):
385
- self.included_mode_declaration_group_sets.append(group_set)
685
+ self.includedModeDeclarationGroupSets.append(group_set)
386
686
 
387
687
  def getIncludedModeDeclarationGroupSets(self) -> List[IncludedModeDeclarationGroupSet]:
388
- return self.included_mode_declaration_group_sets
688
+ return self.includedModeDeclarationGroupSets
389
689
 
390
690
  def addIncludedDataTypeSet(self, type_set: IncludedDataTypeSet):
391
- self.included_data_type_sets.append(type_set)
691
+ self.includedDataTypeSets.append(type_set)
392
692
 
393
693
  def getIncludedDataTypeSets(self) -> List[IncludedDataTypeSet]:
394
- return self.included_data_type_sets
694
+ return self.includedDataTypeSets
395
695
 
396
696