py-eb-model 1.0.0__py3-none-any.whl → 1.0.1__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.
eb_model/models/os_xdm.py CHANGED
@@ -1,220 +1,792 @@
1
1
  from typing import List
2
2
 
3
- from ..models.abstract import EcucObject
3
+ from ..models.abstract import EcucContainer, EcucObject, EcucRefType
4
4
 
5
- class OsApplication:
6
- def __init__(self) -> None:
7
- pass
8
5
 
9
- class OsCounter:
10
- def __init__(self) -> None:
11
- pass
6
+ class OsAlarmAction(EcucContainer):
7
+ def __init__(self, parent, name) -> None:
8
+ super().__init__(parent, name)
9
+
10
+
11
+ class OsAlarmAutostart(EcucContainer):
12
+ def __init__(self, parent, name) -> None:
13
+ super().__init__(parent, name)
14
+
15
+ self.osAlarmAlarmTime = None
16
+ self.osAlarmAutostartType = None
17
+ self.osAlarmCycleTime = None
18
+ self.osAlarmAppModeRefs = []
19
+
20
+ def getOsAlarmAlarmTime(self):
21
+ return self.osAlarmAlarmTime
22
+
23
+ def setOsAlarmAlarmTime(self, value):
24
+ self.osAlarmAlarmTime = value
25
+
26
+ def getOsAlarmAutostartType(self):
27
+ return self.osAlarmAutostartType
28
+
29
+ def setOsAlarmAutostartType(self, value):
30
+ self.osAlarmAutostartType = value
31
+
32
+ def getOsAlarmCycleTime(self):
33
+ return self.osAlarmCycleTime
34
+
35
+ def setOsAlarmCycleTime(self, value):
36
+ self.osAlarmCycleTime = value
37
+
38
+ def getOsAlarmAppModeRefs(self) -> List[EcucRefType]:
39
+ return self.osAlarmAppModeRefs
40
+
41
+ def addOsAlarmAppModeRef(self, ref: EcucRefType):
42
+ self.osAlarmAppModeRefs.append(ref)
43
+
44
+
45
+ class OsAlarmActivateTask(OsAlarmAction):
46
+ def __init__(self, parent, name) -> None:
47
+ super().__init__(parent, name)
48
+
49
+ self.osAlarmActivateTaskRef = None
50
+
51
+ def getOsAlarmActivateTaskRef(self) -> EcucRefType:
52
+ return self.osAlarmActivateTaskRef
53
+
54
+ def setOsAlarmActivateTaskRef(self, value: EcucRefType):
55
+ self.osAlarmActivateTaskRef = value
56
+
57
+
58
+ class OsAlarmCallback(OsAlarmAction):
59
+ def __init__(self, parent, name) -> None:
60
+ super().__init__(parent, name)
61
+
62
+ self.osAlarmCallbackName = None
63
+ self.osMemoryMappingCodeLocationRef = None
64
+
65
+ def getOsAlarmCallbackName(self):
66
+ return self.osAlarmCallbackName
67
+
68
+ def setOsAlarmCallbackName(self, value):
69
+ self.osAlarmCallbackName = value
70
+
71
+ def getOsMemoryMappingCodeLocationRef(self):
72
+ return self.osMemoryMappingCodeLocationRef
73
+
74
+ def setOsMemoryMappingCodeLocationRef(self, value):
75
+ self.osMemoryMappingCodeLocationRef = value
76
+
77
+
78
+ class OsAlarmIncrementCounter(OsAlarmAction):
79
+ def __init__(self, parent, name) -> None:
80
+ super().__init__(parent, name)
81
+
82
+ self.osAlarmIncrementCounterRef = None
83
+
84
+ def getOsAlarmIncrementCounterRef(self):
85
+ return self.osAlarmIncrementCounterRef
86
+
87
+ def setOsAlarmIncrementCounterRef(self, value):
88
+ self.osAlarmIncrementCounterRef = value
89
+
90
+
91
+ class OsAlarmSetEvent(OsAlarmAction):
92
+ def __init__(self, parent, name) -> None:
93
+ super().__init__(parent, name)
94
+
95
+ self.osAlarmSetEventRef = None
96
+ self.osAlarmSetEventTaskRef = None
97
+
98
+ def getOsAlarmSetEventRef(self) -> EcucRefType:
99
+ return self.osAlarmSetEventRef
100
+
101
+ def setOsAlarmSetEventRef(self, value: EcucRefType):
102
+ self.osAlarmSetEventRef = value
103
+ return self
104
+
105
+ def getOsAlarmSetEventTaskRef(self) -> EcucRefType:
106
+ return self.osAlarmSetEventTaskRef
107
+
108
+ def setOsAlarmSetEventTaskRef(self, value: EcucRefType):
109
+ self.osAlarmSetEventTaskRef = value
110
+ return self
111
+
112
+
113
+ class OsAlarm(EcucContainer):
114
+ def __init__(self, parent, name) -> None:
115
+ super().__init__(parent, name)
116
+
117
+ self.osAlarmAccessingApplicationRefs = [] # type: List[EcucRefType]
118
+ self.osAlarmCounterRef = None
119
+ self.osAlarmAction = None # type: OsAlarmAction
120
+ self.osAlarmAutostart = None
121
+
122
+ def getOsAlarmAccessingApplicationRefList(self) -> List[EcucRefType]:
123
+ return self.osAlarmAccessingApplicationRefs
124
+
125
+ def addOsAlarmAccessingApplicationRef(self, ref: EcucRefType):
126
+ self.osAlarmAccessingApplicationRefs.append(ref)
127
+ return self
128
+
129
+ def getOsAlarmCounterRef(self) -> EcucRefType:
130
+ return self.osAlarmCounterRef
131
+
132
+ def setOsAlarmCounterRef(self, value: EcucRefType):
133
+ self.osAlarmCounterRef = value
134
+ return self
135
+
136
+ def getOsAlarmAction(self) -> OsAlarmAction:
137
+ return self.osAlarmAction
138
+
139
+ def setOsAlarmAction(self, value: OsAlarmAction):
140
+ self.osAlarmAction = value
141
+ return self
142
+
143
+ def getOsAlarmAutostart(self) -> OsAlarmAutostart:
144
+ return self.osAlarmAutostart
145
+
146
+ def setOsAlarmAutostart(self, value: OsAlarmAutostart):
147
+ self.osAlarmAutostart = value
148
+ return self
149
+
150
+ def __str__(self) -> str:
151
+ result = []
152
+ result.append("Name : %s" % self.getName())
153
+ result.append("Full Name : %s" % self.getFullName())
154
+ result.append("OsAlarmCounterRef : %s" %
155
+ self.getOsAlarmCounterRef())
156
+ result.append("OsAlarmAccessingApplication :")
157
+ for ref in self.getOsAlarmAccessingApplicationRefList():
158
+ result.append(" - %s" % ref)
159
+
160
+ return "\n".join(result)
161
+
162
+
163
+ class OsApplication(EcucContainer):
164
+ def __init__(self, parent, name) -> None:
165
+ super().__init__(parent, name)
166
+
167
+
168
+ class OsDriver(EcucContainer):
169
+ def __init__(self, parent, name) -> None:
170
+ super().__init__(parent, name)
171
+
172
+ self.osGptChannelRef = None
173
+
174
+ def getOsGptChannelRef(self) -> EcucRefType:
175
+ '''
176
+ Multiplicity: 0..1
177
+ '''
178
+ return self.osGptChannelRef
179
+
180
+ def setOsGptChannelRef(self, value: EcucRefType):
181
+ '''
182
+ Multiplicity: 0..1
183
+ '''
184
+ self.osGptChannelRef = value
185
+ return self
186
+
187
+
188
+ class OsTimeConstant(EcucContainer):
189
+ def __init__(self, parent, name) -> None:
190
+ super().__init__(parent, name)
191
+
192
+ self.osTimeValue = None
193
+
194
+ def getOsTimeValue(self):
195
+ '''
196
+ Multiplicity: 1
197
+ '''
198
+ return self.osTimeValue
199
+
200
+ def setOsTimeValue(self, value):
201
+ '''
202
+ Multiplicity: 1
203
+ '''
204
+ self.osTimeValue = value
205
+ return self
206
+
207
+ class OsCounter(EcucContainer):
208
+
209
+ OS_COUNTER_TYPE_HARDWARE = "HARDWARE"
210
+ OS_COUNTER_TYPE_SOFTWARE = "SOFTWARE"
211
+
212
+ def __init__(self, parent, name) -> None:
213
+ super().__init__(parent, name)
214
+
215
+ self.osCounterMaxAllowedValue = None #
216
+ self.osCounterMinCycle = None #
217
+ self.osCounterTicksPerBase = None #
218
+ self.osCounterType = None #
219
+ self.osSecondsPerTick = None #
220
+ self.osCounterAccessingApplications = [] #
221
+ self.osDriver = None # Multiplicity: 0..1
222
+ self.osTimeConstants = [] # Multiplicity: 0..*
223
+
224
+ def getOsCounterMaxAllowedValue(self):
225
+ return self.osCounterMaxAllowedValue
226
+
227
+ def setOsCounterMaxAllowedValue(self, value):
228
+ '''
229
+ Multiplicity: 1
230
+ '''
231
+ self.osCounterMaxAllowedValue = value
232
+ return self
233
+
234
+ def getOsCounterMinCycle(self):
235
+ '''
236
+ Multiplicity: 1
237
+ '''
238
+ return self.osCounterMinCycle
239
+
240
+ def setOsCounterMinCycle(self, value):
241
+ '''
242
+ Multiplicity: 1
243
+ '''
244
+ self.osCounterMinCycle = value
245
+ return self
246
+
247
+ def getOsCounterTicksPerBase(self):
248
+ '''
249
+ Multiplicity: 1
250
+ '''
251
+ return self.osCounterTicksPerBase
252
+
253
+ def setOsCounterTicksPerBase(self, value):
254
+ '''
255
+ Multiplicity: 1
256
+ '''
257
+ self.osCounterTicksPerBase = value
258
+ return self
259
+
260
+ def getOsCounterType(self):
261
+ return self.osCounterType
12
262
 
13
- class OsResource:
263
+ def setOsCounterType(self, value):
264
+ '''
265
+ Multiplicity: 1
266
+ '''
267
+ self.osCounterType = value
268
+ return self
269
+
270
+ def getOsSecondsPerTick(self):
271
+ return self.osSecondsPerTick
272
+
273
+ def setOsSecondsPerTick(self, value):
274
+ '''
275
+ Multiplicity: 0..1
276
+ '''
277
+ self.osSecondsPerTick = value
278
+ return self
279
+
280
+ def getOsCounterAccessingApplicationList(self):
281
+ '''
282
+ Multiplicity: 0..*
283
+ '''
284
+ return self.osCounterAccessingApplications
285
+
286
+ def setOsCounterAccessingApplications(self, value):
287
+ self.osCounterAccessingApplications.append(value)
288
+ return self
289
+
290
+ def getOsDriver(self):
291
+ return self.osDriver
292
+
293
+ def setOsDriver(self, value):
294
+ self.osDriver = value
295
+ return self
296
+
297
+ def getOsTimeConstants(self):
298
+ return self.osTimeConstants
299
+
300
+ def setOsTimeConstants(self, value):
301
+ self.osTimeConstants = value
302
+ return self
303
+
304
+
305
+
306
+ class OsResource(EcucContainer):
14
307
  def __init__(self) -> None:
15
308
  pass
16
309
 
17
- class OsIsrResourceLock:
310
+
311
+ class OsIsrResourceLock(EcucContainer):
18
312
  def __init__(self) -> None:
19
- self.OsIsrResourceLockBudget = None
20
- self.OsIsrResourceLockResourceRef = None
313
+ self.osIsrResourceLockBudget = None
314
+ self.osIsrResourceLockResourceRef = None
21
315
 
22
316
 
23
- class OsIsrTimingProtection:
317
+ class OsIsrTimingProtection(EcucObject):
24
318
  def __init__(self) -> None:
25
- self.OsIsrAllInterruptLockBudget = None
26
- self.OsIsrExecutionBudget = None
27
- self.OsIsrOsInterruptLockBudget = None
28
- self.OsIsrTimeFrame = None
29
- self.OsIsrResourceLock = OsIsrResourceLock()
319
+ self.osIsrAllInterruptLockBudget = None
320
+ self.osIsrExecutionBudget = None
321
+ self.osIsrOsInterruptLockBudget = None
322
+ self.osIsrTimeFrame = None
323
+ self.osIsrResourceLock = OsIsrResourceLock()
324
+
30
325
 
31
326
  class OsIsr(EcucObject):
32
327
  '''
33
328
  The OsIsr container represents an ISO 17356 interrupt service routine.
34
329
  '''
35
-
330
+
36
331
  OS_ISR_CATEGORY_1 = "CATEGORY_1" # Interrupt is of category 1
37
332
  OS_ISR_CATEGORY_2 = "CATEGORY_2" # Interrupt is of category 2
38
333
 
39
- def __init__(self) -> None:
40
- self.OsIsrCategory = None
41
- self.OsIsrPeriod = None
42
- self.OsIsrResourceRef = None
43
- self.OsMemoryMappingCodeLocationRef = None
44
- self.OsIsrTimingProtection = OsIsrTimingProtection() # type: OsIsrTimingProtection
334
+ def __init__(self, parent, name) -> None:
335
+ super().__init__(parent, name)
336
+
337
+ self.osIsrCategory = None
338
+ self.osIsrPeriod = None
339
+ self.osIsrResourceRef = None
340
+ self.osMemoryMappingCodeLocationRef = None
341
+ self.osIsrTimingProtection = OsIsrTimingProtection()
45
342
 
46
- self.OsIsrPriority = None
47
- self.OsStacksize = None
343
+ self.osIsrPriority = None
344
+ self.osStacksize = None
48
345
 
49
346
  def getOsIsrCategory(self):
50
- return self.OsIsrCategory
347
+ return self.osIsrCategory
51
348
 
52
349
  def setOsIsrCategory(self, value):
53
- self.OsIsrCategory = value
350
+ self.osIsrCategory = value
54
351
  return self
55
352
 
56
353
  def getOsIsrPeriod(self):
57
- return self.OsIsrPeriod
354
+ return self.osIsrPeriod
58
355
 
59
356
  def setOsIsrPeriod(self, value):
60
- self.OsIsrPeriod = value
357
+ self.osIsrPeriod = value
61
358
  return self
62
359
 
63
360
  def getOsIsrResourceRef(self):
64
- return self.OsIsrResourceRef
361
+ return self.osIsrResourceRef
65
362
 
66
363
  def setOsIsrResourceRef(self, value):
67
- self.OsIsrResourceRef = value
364
+ self.osIsrResourceRef = value
68
365
  return self
69
366
 
70
367
  def getOsMemoryMappingCodeLocationRef(self):
71
- return self.OsMemoryMappingCodeLocationRef
368
+ return self.osMemoryMappingCodeLocationRef
72
369
 
73
370
  def setOsMemoryMappingCodeLocationRef(self, value):
74
- self.OsMemoryMappingCodeLocationRef = value
371
+ self.osMemoryMappingCodeLocationRef = value
75
372
  return self
76
373
 
77
374
  def getOsIsrTimingProtection(self):
78
- return self.OsIsrTimingProtection
375
+ return self.osIsrTimingProtection
79
376
 
80
377
  def setOsIsrTimingProtection(self, value):
81
- self.OsIsrTimingProtection = value
378
+ self.osIsrTimingProtection = value
82
379
  return self
83
-
380
+
84
381
  def getOsIsrPriority(self):
85
- return self.OsIsrPriority
382
+ return self.osIsrPriority
86
383
 
87
384
  def setOsIsrPriority(self, value):
88
- self.OsIsrPriority = value
385
+ self.osIsrPriority = value
89
386
  return self
90
387
 
91
388
  def getOsStacksize(self):
92
- return self.OsStacksize
389
+ return self.osStacksize
93
390
 
94
391
  def setOsStacksize(self, value):
95
- self.OsStacksize = value
392
+ self.osStacksize = value
96
393
  return self
97
394
 
98
- class OsTaskAutostart:
99
- def __init__(self) -> None:
100
- self.OsTaskAppModeRef = None
101
395
 
102
- class OsTaskResourceLock:
103
- def __init__(self) -> None:
104
- self.OsTaskResourceLockBudget = None
396
+ class OsTaskAutostart(EcucObject):
397
+ def __init__(self, parent, name) -> None:
398
+ super().__init__(parent, name)
105
399
 
106
- class OsTaskTimingProtection:
107
- def __init__(self) -> None:
108
- self.OsTaskAllInterruptLockBudget = None
109
- self.OsTaskExecutionBudget = None
110
- self.OsTaskOsInterruptLockBudget = None
111
- self.OsTaskTimeFrame = None
400
+ self.osTaskAppModeRef = None
401
+
402
+
403
+ class OsTaskResourceLock(EcucObject):
404
+ def __init__(self, parent, name) -> None:
405
+ super().__init__(parent, name)
406
+
407
+ self.osTaskResourceLockBudget = None
112
408
 
113
- class OsTimeConstant:
409
+
410
+ class OsTaskTimingProtection(EcucObject):
114
411
  def __init__(self) -> None:
115
- self.OsTimeValue
412
+ self.osTaskAllInterruptLockBudget = None
413
+ self.osTaskExecutionBudget = None
414
+ self.osTaskOsInterruptLockBudget = None
415
+ self.osTaskTimeFrame = None
416
+
417
+
418
+ class OsTimeConstant(EcucObject):
419
+ def __init__(self, parent, name) -> None:
420
+ super().__init__(parent, name)
421
+
422
+ self.osTimeValue = None
423
+
116
424
 
117
425
  class OsTask(EcucObject):
118
426
 
119
427
  FULL = "FULL" # Task is preemptable.
120
- NON = "NON" # Task is not preemptable.
428
+ NON = "NON" # Task is not preemptable.
121
429
 
122
- def __init__(self) -> None:
123
- self.OsTaskActivation = None # type: int
124
- self.OsTaskPeriod = 0.0 # type: float
125
- self.OsTaskPriority = None # type: int
126
- self.OsTaskSchedule = ""
127
- self.OsStacksize = 0 # type: int
128
- self.OsMemoryMappingCodeLocationRef = None
129
- self.OsTaskAccessingApplication = None
130
- self.OsTaskEventRef = None
131
- self.OsTaskResourceRef = None
430
+ def __init__(self, parent, name) -> None:
431
+ super().__init__(parent, name)
432
+
433
+ self.osTaskActivation = None # type: int
434
+ self.osTaskPeriod = 0.0 # type: float
435
+ self.osTaskPriority = None # type: int
436
+ self.osTaskSchedule = ""
437
+ self.osStacksize = 0 # type: int
438
+ self.osMemoryMappingCodeLocationRef = None
439
+ self.osTaskAccessingApplication = None
440
+ self.osTaskEventRef = None
441
+ self.osTaskResourceRefs = [] # type: List[EcucRefType]
132
442
 
133
443
  def getOsTaskActivation(self):
134
- return self.OsTaskActivation
444
+ return self.osTaskActivation
135
445
 
136
446
  def setOsTaskActivation(self, value):
137
- self.OsTaskActivation = value
447
+ self.osTaskActivation = value
138
448
  return self
139
449
 
140
450
  def getOsTaskPeriod(self):
141
- return self.OsTaskPeriod
451
+ return self.osTaskPeriod
142
452
 
143
453
  def setOsTaskPeriod(self, value):
144
- self.OsTaskPeriod = value
454
+ self.osTaskPeriod = value
145
455
  return self
146
456
 
147
457
  def getOsTaskPriority(self):
148
- return self.OsTaskPriority
458
+ return self.osTaskPriority
149
459
 
150
460
  def setOsTaskPriority(self, value):
151
- self.OsTaskPriority = value
461
+ self.osTaskPriority = value
152
462
  return self
153
463
 
154
464
  def getOsTaskSchedule(self):
155
- return self.OsTaskSchedule
465
+ return self.osTaskSchedule
156
466
 
157
467
  def setOsTaskSchedule(self, value):
158
- self.OsTaskSchedule = value
468
+ self.osTaskSchedule = value
159
469
  return self
160
-
161
- def getOsStacksize(self):
162
- return self.OsStacksize
163
470
 
164
- def setOsStacksize(self, value):
165
- self.OsStacksize = value
471
+ def getOsStacksize(self) -> int:
472
+ return self.osStacksize
473
+
474
+ def setOsStacksize(self, value: int):
475
+ self.osStacksize = value
166
476
  return self
167
477
 
168
478
  def getOsMemoryMappingCodeLocationRef(self):
169
- return self.OsMemoryMappingCodeLocationRef
479
+ return self.osMemoryMappingCodeLocationRef
170
480
 
171
481
  def setOsMemoryMappingCodeLocationRef(self, value):
172
- self.OsMemoryMappingCodeLocationRef = value
482
+ self.osMemoryMappingCodeLocationRef = value
173
483
  return self
174
484
 
175
485
  def getOsTaskAccessingApplication(self):
176
- return self.OsTaskAccessingApplication
486
+ return self.osTaskAccessingApplication
177
487
 
178
488
  def setOsTaskAccessingApplication(self, value):
179
- self.OsTaskAccessingApplication = value
489
+ self.osTaskAccessingApplication = value
180
490
  return self
181
491
 
182
492
  def getOsTaskEventRef(self):
183
- return self.OsTaskEventRef
493
+ return self.osTaskEventRef
184
494
 
185
495
  def setOsTaskEventRef(self, value):
186
- self.OsTaskEventRef = value
496
+ self.osTaskEventRef = value
187
497
  return self
188
498
 
189
- def getOsTaskResourceRef(self):
190
- return self.OsTaskResourceRef
499
+ def getOsTaskResourceRefList(self) -> List[EcucRefType]:
500
+ return self.osTaskResourceRefs
191
501
 
192
- def setOsTaskResourceRef(self, value):
193
- self.OsTaskResourceRef = value
502
+ def addOsTaskResourceRef(self, value: EcucRefType):
503
+ self.osTaskResourceRefs.append(value)
194
504
  return self
195
-
505
+
196
506
  def IsPreemptable(self) -> bool:
197
- if self.OsTaskSchedule == OsTask.FULL:
507
+ if self.osTaskSchedule == OsTask.FULL:
198
508
  return True
199
509
  return False
200
510
 
201
- class Os(EcucObject):
511
+
512
+ class OsScheduleTableAutostart(EcucContainer):
513
+ def __init__(self, parent, name) -> None:
514
+ super().__init__(parent, name)
515
+
516
+ self.osScheduleTableAutostartType = None # Multiplicity: 1
517
+ self.osScheduleTableStartValue = None # Multiplicity: 0..1
518
+ self.osScheduleTableAppModeRef = None # Multiplicity: 1..*
519
+
520
+ def getOsScheduleTableAutostartType(self):
521
+ return self.osScheduleTableAutostartType
522
+
523
+ def setOsScheduleTableAutostartType(self, value):
524
+ self.osScheduleTableAutostartType = value
525
+ return self
526
+
527
+ def getOsScheduleTableStartValue(self):
528
+ return self.osScheduleTableStartValue
529
+
530
+ def setOsScheduleTableStartValue(self, value):
531
+ self.osScheduleTableStartValue = value
532
+ return self
533
+
534
+ def getOsScheduleTableAppModeRef(self):
535
+ return self.osScheduleTableAppModeRef
536
+
537
+ def setOsScheduleTableAppModeRef(self, value):
538
+ self.osScheduleTableAppModeRef = value
539
+ return self
540
+
541
+
542
+ class OsScheduleTableEventSetting(EcucContainer):
543
+ def __init__(self, parent, name) -> None:
544
+ super().__init__(parent, name)
545
+
546
+ self.osScheduleTableSetEventRef = None # Multiplicity: 1
547
+ self.osScheduleTableSetEventTaskRef = None # Multiplicity: 1
548
+
549
+ def getOsScheduleTableSetEventRef(self):
550
+ return self.osScheduleTableSetEventRef
551
+
552
+ def setOsScheduleTableSetEventRef(self, value):
553
+ self.osScheduleTableSetEventRef = value
554
+ return self
555
+
556
+ def getOsScheduleTableSetEventTaskRef(self):
557
+ return self.osScheduleTableSetEventTaskRef
558
+
559
+ def setOsScheduleTableSetEventTaskRef(self, value):
560
+ self.osScheduleTableSetEventTaskRef = value
561
+ return self
562
+
563
+
564
+ class OsScheduleTblAdjustableExpPoint(EcucContainer):
565
+ def __init__(self, parent, name) -> None:
566
+ super().__init__(parent, name)
567
+
568
+ self.osScheduleTableMaxLengthen = None # Multiplicity: 1
569
+ self.osScheduleTableMaxShorten = None # Multiplicity: 1
570
+
571
+ def getOsScheduleTableMaxLengthen(self) -> int:
572
+ return self.osScheduleTableMaxLengthen
573
+
574
+ def setOsScheduleTableMaxLengthen(self, value: int):
575
+ self.osScheduleTableMaxLengthen = value
576
+ return self
577
+
578
+ def getOsScheduleTableMaxShorten(self) -> int:
579
+ return self.osScheduleTableMaxShorten
580
+
581
+ def setOsScheduleTableMaxShorten(self, value: int):
582
+ self.osScheduleTableMaxShorten = value
583
+ return self
584
+
585
+
586
+ class OsScheduleTableTaskActivation(EcucContainer):
587
+ def __init__(self, parent, name) -> None:
588
+ super().__init__(parent, name)
589
+
590
+ self.osScheduleTableActivateTaskRef = None # Multiplicity: 1
591
+
592
+ def getOsScheduleTableActivateTaskRef(self) -> EcucRefType:
593
+ return self.osScheduleTableActivateTaskRef
594
+
595
+ def setOsScheduleTableActivateTaskRef(self, value: EcucRefType):
596
+ self.osScheduleTableActivateTaskRef = value
597
+ return self
598
+
599
+
600
+ class OsScheduleTableEventSetting(EcucContainer):
601
+ def __init__(self, parent, name) -> None:
602
+ super().__init__(parent, name)
603
+
604
+ # Multiplicity: 1 Reference to OsEvent
605
+ self.osScheduleTableSetEventRef = None
606
+ # Multiplicity: 1 Reference to OsTask
607
+ self.osScheduleTableSetEventTaskRef = None
608
+
609
+ def getOsScheduleTableSetEventRef(self):
610
+ return self.osScheduleTableSetEventRef
611
+
612
+ def setOsScheduleTableSetEventRef(self, value):
613
+ self.osScheduleTableSetEventRef = value
614
+ return self
615
+
616
+ def getOsScheduleTableSetEventTaskRef(self):
617
+ return self.osScheduleTableSetEventTaskRef
618
+
619
+ def setOsScheduleTableSetEventTaskRef(self, value):
620
+ self.osScheduleTableSetEventTaskRef = value
621
+ return self
622
+
623
+
624
+ class OsScheduleTableExpiryPoint(EcucContainer):
625
+ def __init__(self, parent, name) -> None:
626
+ super().__init__(parent, name)
627
+
628
+ self.osScheduleTblExpPointOffset = None # Multiplicity: 1
629
+ self.osScheduleTableEventSettings = [] # Multiplicity: 0..*
630
+ self.osScheduleTableTaskActivations = [] # Multiplicity: 0..*
631
+ self.osScheduleTblAdjustableExpPoint = None # Multiplicity: 0..1
632
+
633
+ def getOsScheduleTblExpPointOffset(self):
634
+ return self.osScheduleTblExpPointOffset
635
+
636
+ def setOsScheduleTblExpPointOffset(self, value):
637
+ self.osScheduleTblExpPointOffset = value
638
+ return self
639
+
640
+ def getOsScheduleTableEventSettingList(self) -> List[OsScheduleTableEventSetting]:
641
+ return self.osScheduleTableEventSettings
642
+
643
+ def addOsScheduleTableEventSetting(self, value: OsScheduleTableEventSetting):
644
+ self.addElement(value)
645
+ self.osScheduleTableEventSettings.append(value)
646
+ return self
647
+
648
+ def getOsScheduleTableTaskActivationList(self) -> List[OsScheduleTableTaskActivation]:
649
+ return self.osScheduleTableTaskActivations
650
+
651
+ def addOsScheduleTableTaskActivation(self, value: OsScheduleTableTaskActivation):
652
+ self.addElement(value)
653
+ self.osScheduleTableTaskActivations.append(value)
654
+ return self
655
+
656
+ def getOsScheduleTblAdjustableExpPoint(self) -> OsScheduleTblAdjustableExpPoint:
657
+ return self.osScheduleTblAdjustableExpPoint
658
+
659
+ def setOsScheduleTblAdjustableExpPoint(self, value: OsScheduleTblAdjustableExpPoint):
660
+ self.osScheduleTblAdjustableExpPoint = value
661
+ return self
662
+
663
+
664
+ class OsScheduleTable(EcucContainer):
665
+
666
+ OS_TIME_UNIT_NANOSECONDS = "NANOSECONDS"
667
+ OS_TIME_UNIT_TICKS = "TICKS"
668
+
669
+ def __init__(self, parent, name) -> None:
670
+ super().__init__(parent, name)
671
+
672
+ self.osScheduleTableDuration = None # Multiplicity: 1
673
+ self.osScheduleTableRepeating = None # Multiplicity: 1
674
+ self.osScheduleTableCounterRef = None # Multiplicity: 1
675
+ self.osSchTblAccessingApplications = [] # Multiplicity: 0..*
676
+ self.osTimeUnit = None # Multiplicity: 0..1
677
+
678
+ self.osScheduleTableAutostart = None # Multiplicity: 0..1
679
+ self.osScheduleTableExpiryPoints = [] # Multiplicity: 1..*
680
+ self.osScheduleTableSync = None # Multiplicity: 0..1
681
+
682
+ def getOsScheduleTableDuration(self):
683
+ return self.osScheduleTableDuration
684
+
685
+ def setOsScheduleTableDuration(self, value):
686
+ self.osScheduleTableDuration = value
687
+ return self
688
+
689
+ def getOsScheduleTableRepeating(self):
690
+ return self.osScheduleTableRepeating
691
+
692
+ def setOsScheduleTableRepeating(self, value):
693
+ self.osScheduleTableRepeating = value
694
+ return self
695
+
696
+ def getOsScheduleTableCounterRef(self) -> EcucRefType:
697
+ return self.osScheduleTableCounterRef
698
+
699
+ def setOsScheduleTableCounterRef(self, value: EcucRefType):
700
+ self.osScheduleTableCounterRef = value
701
+ return self
702
+
703
+ def getOsSchTblAccessingApplicationList(self):
704
+ return self.osSchTblAccessingApplications
705
+
706
+ def addOsSchTblAccessingApplication(self, value):
707
+ self.osSchTblAccessingApplications.append(value)
708
+ return self
709
+
710
+ def getOsTimeUnit(self) -> str:
711
+ return self.osTimeUnit
712
+
713
+ def setOsTimeUnit(self, value: str):
714
+ if value is not None:
715
+ if value not in [OsScheduleTable.OS_TIME_UNIT_NANOSECONDS, OsScheduleTable.OS_TIME_UNIT_TICKS]:
716
+ raise ValueError("Invalid OsTimeUnit <%s>" % value)
717
+ self.osTimeUnit = value # set to None if the value is None
718
+ return self
719
+
720
+ def getOsScheduleTableAutostart(self):
721
+ return self.osScheduleTableAutostart
722
+
723
+ def setOsScheduleTableAutostart(self, value):
724
+ self.osScheduleTableAutostart = value
725
+ return self
726
+
727
+ def getOsScheduleTableExpiryPointList(self) -> List[OsScheduleTableExpiryPoint]:
728
+ return self.osScheduleTableExpiryPoints
729
+
730
+ def addOsScheduleTableExpiryPoint(self, value: OsScheduleTableExpiryPoint):
731
+ self.addElement(value
732
+ )
733
+ self.osScheduleTableExpiryPoints.append(value)
734
+ return self
735
+
736
+ def getOsScheduleTableSync(self):
737
+ return self.osScheduleTableSync
738
+
739
+ def setOsScheduleTableSync(self, value):
740
+ self.osScheduleTableSync = value
741
+ return self
742
+
743
+
744
+ class Os(EcucContainer):
202
745
  def __init__(self, parent) -> None:
203
746
  super().__init__(parent, "Os")
204
747
 
205
748
  self.osTasks = [] # type: List[OsTask]
206
749
  self.osIsrs = [] # type: List[OsIsr]
750
+ self.osAlarms = [] # type: List[OsAlarm]
751
+ self.osScheduleTables = [] # type: List[OsScheduleTable]
752
+ self.osCounters = [] # type: List[OsCounter]
207
753
 
208
754
  def getOsTaskList(self) -> List[OsTask]:
209
- return self.osTasks
210
-
755
+ return list(sorted(filter(lambda a: isinstance(a, OsTask), self.elements.values()), key=lambda o: o.name))
756
+
211
757
  def addOsTask(self, os_task: OsTask):
758
+ self.addElement(os_task)
212
759
  self.osTasks.append(os_task)
213
760
  return self
214
761
 
215
762
  def getOsIsrList(self) -> List[OsIsr]:
216
- return self.osIsrs
217
-
763
+ return list(sorted(filter(lambda a: isinstance(a, OsIsr), self.elements.values()), key=lambda o: o.name))
764
+
218
765
  def addOsIsr(self, os_isr: OsIsr):
766
+ self.addElement(os_isr)
219
767
  self.osIsrs.append(os_isr)
768
+ return self
769
+
770
+ def getOsAlarmList(self) -> List[OsAlarm]:
771
+ return list(sorted(filter(lambda a: isinstance(a, OsAlarm), self.elements.values()), key=lambda o: o.name))
772
+
773
+ def addOsAlarm(self, os_alarm: OsAlarm):
774
+ self.addElement(os_alarm)
775
+ self.osAlarms.append(os_alarm)
776
+ return self
777
+
778
+ def getOsScheduleTableList(self) -> List[OsScheduleTable]:
779
+ return list(sorted(filter(lambda a: isinstance(a, OsScheduleTable), self.elements.values()), key=lambda o: o.name))
780
+
781
+ def addOsScheduleTable(self, os_schedule_table: OsScheduleTable):
782
+ self.addElement(os_schedule_table)
783
+ self.osScheduleTables.append(os_schedule_table)
784
+ return self
785
+
786
+ def getOsCounterList(self) -> List[OsCounter]:
787
+ return list(sorted(filter(lambda a: isinstance(a, OsCounter), self.elements.values()), key=lambda o: o.name))
788
+
789
+ def addOsCounter(self, os_counter: OsCounter):
790
+ self.addElement(os_counter)
791
+ self.osCounters.append(os_counter)
220
792
  return self