armodel 1.7.4__py3-none-any.whl → 1.7.6__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 (33) hide show
  1. armodel/cli/file_list_cli.py +70 -0
  2. armodel/models/M2/AUTOSARTemplates/CommonStructure/ImplementationDataTypes.py +2 -2
  3. armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/MemorySectionUsage.py +4 -0
  4. armodel/models/M2/AUTOSARTemplates/DiagnosticExtract/DiagnosticContribution.py +47 -0
  5. armodel/models/M2/AUTOSARTemplates/DiagnosticExtract/__init__.py +0 -0
  6. armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/ARPackage.py +73 -3
  7. armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/PrimitiveTypes.py +22 -0
  8. armodel/models/M2/AUTOSARTemplates/SystemTemplate/DiagnosticConnection.py +58 -0
  9. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Can/CanTopology.py +165 -4
  10. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet/EthernetCommunication.py +16 -1
  11. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet/EthernetTopology.py +514 -17
  12. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet/NetworkEndpoint.py +104 -1
  13. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet/ServiceInstances.py +783 -13
  14. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Lin/LinCommunication.py +114 -6
  15. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Lin/LinTopology.py +92 -0
  16. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Multiplatform.py +76 -10
  17. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/FibexCore/CoreCommunication.py +151 -6
  18. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/FibexCore/CoreTopology.py +143 -36
  19. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/FibexCore/EcuInstance.py +13 -0
  20. armodel/models/M2/AUTOSARTemplates/SystemTemplate/NetworkManagement.py +135 -13
  21. armodel/models/M2/AUTOSARTemplates/SystemTemplate/TransportProtocols.py +79 -2
  22. armodel/models/M2/AUTOSARTemplates/SystemTemplate/__init__.py +4 -2
  23. armodel/models/M2/MSR/DataDictionary/RecordLayout.py +1 -1
  24. armodel/models/__init__.py +3 -0
  25. armodel/parser/abstract_arxml_parser.py +7 -5
  26. armodel/parser/arxml_parser.py +927 -438
  27. armodel/writer/arxml_writer.py +799 -178
  28. {armodel-1.7.4.dist-info → armodel-1.7.6.dist-info}/METADATA +52 -1
  29. {armodel-1.7.4.dist-info → armodel-1.7.6.dist-info}/RECORD +33 -28
  30. {armodel-1.7.4.dist-info → armodel-1.7.6.dist-info}/entry_points.txt +1 -0
  31. {armodel-1.7.4.dist-info → armodel-1.7.6.dist-info}/LICENSE +0 -0
  32. {armodel-1.7.4.dist-info → armodel-1.7.6.dist-info}/WHEEL +0 -0
  33. {armodel-1.7.4.dist-info → armodel-1.7.6.dist-info}/top_level.txt +0 -0
@@ -1,52 +1,431 @@
1
+ from abc import ABCMeta
1
2
  from typing import List
2
3
 
3
- from ......M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.Identifiable import Identifiable
4
- from ......M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import Boolean, Integer, PositiveInteger, PositiveUnlimitedInteger, RefType, TimeValue
4
+ from ......M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.Identifiable import Identifiable, Referrable
5
+ from ......M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import Boolean, Integer, MacAddressString, PositiveInteger, RefType, TimeValue
5
6
  from ......M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.ArObject import ARObject
6
- from ......M2.AUTOSARTemplates.SystemTemplate.Fibex.FibexCore.CoreTopology import CommunicationCluster, CommunicationConnector, CommunicationController, PhysicalChannel
7
+ from ......M2.AUTOSARTemplates.SystemTemplate.Fibex.FibexCore.CoreTopology import CommunicationCluster, CommunicationConnector, CommunicationController
7
8
 
9
+ class MacMulticastGroup(Identifiable):
10
+ def __init__(self, parent, short_name):
11
+ super().__init__(parent, short_name)
12
+
13
+ self.macMulticastAddress = None # type: MacAddressString
14
+
15
+ def getMacMulticastAddress(self):
16
+ return self.macMulticastAddress
17
+
18
+ def setMacMulticastAddress(self, value):
19
+ if value is not None:
20
+ self.macMulticastAddress = value
21
+ return self
8
22
  class EthernetCluster(CommunicationCluster):
9
23
  def __init__(self, parent: ARObject, short_name: str):
10
24
  super().__init__(parent, short_name)
11
25
 
12
- self.couplingPorts = [] # type: List[CouplingPortConnection]
13
- self.couplingPortStartupActiveTime = None # type: TimeValue
14
- self.couplingPortSwitchoffDelay = None # type: TimeValue
15
- self.macMulticastGroups = [] # type: MacMulticastGroup
26
+ self.couplingPorts = [] # type: List[CouplingPortConnection]
27
+ self.couplingPortStartupActiveTime = None # type: TimeValue
28
+ self.couplingPortSwitchoffDelay = None # type: TimeValue
29
+ self.macMulticastGroups = [] # type: List[MacMulticastGroup]
16
30
 
17
31
  def getCouplingPorts(self):
18
32
  return self.couplingPorts
19
33
 
20
- def setCouplingPorts(self, value):
21
- self.couplingPorts = value
34
+ def addCouplingPort(self, value):
35
+ if value is not None:
36
+ self.couplingPorts.append(value)
22
37
  return self
23
38
 
24
39
  def getCouplingPortStartupActiveTime(self):
25
40
  return self.couplingPortStartupActiveTime
26
41
 
27
42
  def setCouplingPortStartupActiveTime(self, value):
28
- self.couplingPortStartupActiveTime = value
43
+ if value is not None:
44
+ self.couplingPortStartupActiveTime = value
29
45
  return self
30
46
 
31
47
  def getCouplingPortSwitchoffDelay(self):
32
48
  return self.couplingPortSwitchoffDelay
33
49
 
34
50
  def setCouplingPortSwitchoffDelay(self, value):
35
- self.couplingPortSwitchoffDelay = value
51
+ if value is not None:
52
+ self.couplingPortSwitchoffDelay = value
36
53
  return self
37
54
 
38
55
  def getMacMulticastGroups(self):
39
56
  return self.macMulticastGroups
40
57
 
41
- def setMacMulticastGroups(self, value):
42
- self.macMulticastGroups = value
58
+ def createMacMulticastGroup(self, short_name: str) -> MacMulticastGroup:
59
+ if (short_name not in self.elements):
60
+ group = MacMulticastGroup(self, short_name)
61
+ self.addElement(group)
62
+ self.macMulticastGroups.append(group)
63
+ return self.getElement(short_name)
64
+
65
+ class CouplingPortStructuralElement(Identifiable, metaclass = ABCMeta):
66
+ def __init__(self, parent: ARObject, short_name: str):
67
+ if type(self) == CouplingPortStructuralElement:
68
+ raise NotImplementedError("CouplingPortStructuralElement is an abstract class.")
69
+
70
+ super().__init__(parent, short_name)
71
+
72
+ class CouplingPortFifo(CouplingPortStructuralElement):
73
+ def __init__(self, parent: ARObject, short_name: str):
74
+ super().__init__(parent, short_name)
75
+
76
+ self.assignedTrafficClasses = [] # type: List[PositiveInteger]
77
+ self.minimumFifoLength = None # type: PositiveInteger
78
+ self.shaper = None # type: CouplingPortAbstractShaper
79
+ self.trafficClassPreemptionSupport = None # type: EthernetCouplingPortPreemptionEnum
80
+
81
+ def getAssignedTrafficClasses(self):
82
+ return self.assignedTrafficClasses
83
+
84
+ def addAssignedTrafficClass(self, value):
85
+ if value is not None:
86
+ self.assignedTrafficClasses.append(value)
87
+ return self
88
+
89
+ def getMinimumFifoLength(self):
90
+ return self.minimumFifoLength
91
+
92
+ def setMinimumFifoLength(self, value):
93
+ if value is not None:
94
+ self.minimumFifoLength = value
95
+ return self
96
+
97
+ def getShaper(self):
98
+ return self.shaper
99
+
100
+ def setShaper(self, value):
101
+ if value is not None:
102
+ self.shaper = value
103
+ return self
104
+
105
+ def getTrafficClassPreemptionSupport(self):
106
+ return self.trafficClassPreemptionSupport
107
+
108
+ def setTrafficClassPreemptionSupport(self, value):
109
+ if value is not None:
110
+ self.trafficClassPreemptionSupport = value
111
+ return self
112
+
113
+ class CouplingPortScheduler(CouplingPortStructuralElement):
114
+ def __init__(self, parent, short_name):
115
+ super().__init__(parent, short_name)
116
+
117
+ self.portScheduler = None # type: EthernetCouplingPortSchedulerEnum
118
+ self.predecessorRefs = [] # type: List[RefType]
119
+
120
+ def getPortScheduler(self):
121
+ return self.portScheduler
122
+
123
+ def setPortScheduler(self, value):
124
+ if value is not None:
125
+ self.portScheduler = value
43
126
  return self
127
+
128
+ def getPredecessorRefs(self):
129
+ return self.predecessorRefs
130
+
131
+ def addPredecessorRef(self, value):
132
+ if value is not None:
133
+ self.predecessorRefs.append(value)
134
+ return self
135
+
136
+ class EthernetPriorityRegeneration(Referrable):
137
+ def __init__(self, parent, short_name):
138
+ super().__init__(parent, short_name)
139
+
140
+ self.ingressPriority = None # type: PositiveInteger
141
+ self.regeneratedPriority = None # type: PositiveInteger
142
+
143
+ def getIngressPriority(self):
144
+ return self.ingressPriority
145
+
146
+ def setIngressPriority(self, value):
147
+ if value is not None:
148
+ self.ingressPriority = value
149
+ return self
150
+
151
+ def getRegeneratedPriority(self):
152
+ return self.regeneratedPriority
153
+
154
+ def setRegeneratedPriority(self, value):
155
+ if value is not None:
156
+ self.regeneratedPriority = value
157
+ return self
158
+
159
+
160
+ class CouplingPortDetails(ARObject):
161
+ def __init__(self):
162
+ super().__init__()
163
+
164
+ self.couplingPortStructuralElements = [] # type: List[CouplingPortStructuralElement]
165
+ self.defaultTrafficClass = None # type: PositiveInteger
166
+ self.ethernetPriorityRegenerations = [] # type: List[EthernetPriorityRegeneration]
167
+ self.ethernetTrafficClassAssignments = [] # type: List[CouplingPortTrafficClassAssignment]
168
+ self.framePreemptionSupport = None # type: Boolean
169
+ self.globalTimeProps = None # type: GlobalTimeCouplingPortProps
170
+ self.lastEgressSchedulerRef = None # type: RefType
171
+ self.ratePolicies = [] # type: List[CouplingPortRatePolicy]
172
+ self.vlanTranslationTables = [] # type: List[EthernetVlanTranslationTable]
173
+
174
+ def getCouplingPortStructuralElements(self):
175
+ return self.couplingPortStructuralElements
176
+
177
+ def createCouplingPortFifo(self, short_name: str) -> CouplingPortFifo:
178
+ fifo = CouplingPortFifo(self, short_name)
179
+ self.couplingPortStructuralElements.append(fifo)
180
+ return fifo
181
+
182
+ def createCouplingPortScheduler(self, short_name: str) -> CouplingPortScheduler:
183
+ scheduler = CouplingPortScheduler(self, short_name)
184
+ self.couplingPortStructuralElements.append(scheduler)
185
+ return scheduler
44
186
 
187
+ def createEthernetPriorityRegeneration(self, short_name: str) -> EthernetPriorityRegeneration:
188
+ regeneration = EthernetPriorityRegeneration(self, short_name)
189
+ self.ethernetPriorityRegenerations.append(regeneration)
190
+ return regeneration
191
+
192
+ def getDefaultTrafficClass(self):
193
+ return self.defaultTrafficClass
194
+
195
+ def setDefaultTrafficClass(self, value):
196
+ if value is not None:
197
+ self.defaultTrafficClass = value
198
+ return self
199
+
200
+ def getEthernetPriorityRegenerations(self):
201
+ return self.ethernetPriorityRegenerations
202
+
203
+ def setEthernetPriorityRegenerations(self, value):
204
+ if value is not None:
205
+ self.ethernetPriorityRegenerations = value
206
+ return self
207
+
208
+ def getEthernetTrafficClassAssignments(self):
209
+ return self.ethernetTrafficClassAssignments
210
+
211
+ def setEthernetTrafficClassAssignments(self, value):
212
+ if value is not None:
213
+ self.ethernetTrafficClassAssignments = value
214
+ return self
215
+
216
+ def getFramePreemptionSupport(self):
217
+ return self.framePreemptionSupport
218
+
219
+ def setFramePreemptionSupport(self, value):
220
+ if value is not None:
221
+ self.framePreemptionSupport = value
222
+ return self
223
+
224
+ def getGlobalTimeProps(self):
225
+ return self.globalTimeProps
226
+
227
+ def setGlobalTimeProps(self, value):
228
+ if value is not None:
229
+ self.globalTimeProps = value
230
+ return self
231
+
232
+ def getLastEgressSchedulerRef(self):
233
+ return self.lastEgressSchedulerRef
234
+
235
+ def setLastEgressSchedulerRef(self, value):
236
+ if value is not None:
237
+ self.lastEgressSchedulerRef = value
238
+ return self
239
+
240
+ def getRatePolicies(self):
241
+ return self.ratePolicies
242
+
243
+ def setRatePolicies(self, value):
244
+ if value is not None:
245
+ self.ratePolicies = value
246
+ return self
247
+
248
+ def getVlanTranslationTables(self):
249
+ return self.vlanTranslationTables
250
+
251
+ def setVlanTranslationTables(self, value):
252
+ if value is not None:
253
+ self.vlanTranslationTables = value
254
+ return self
255
+
256
+ class VlanMembership(ARObject):
257
+ def __init__(self):
258
+ super().__init__()
259
+
260
+ self.defaultPriority = None # type: PositiveInteger
261
+ self.dhcpAddressAssignment = None # type: DhcpServerConfiguration
262
+ self.sendActivity = None # type: EthernetSwitchVlanEgressTaggingEnum
263
+ self.vlanRef = None # type: RefType
264
+
265
+ def getDefaultPriority(self):
266
+ return self.defaultPriority
267
+
268
+ def setDefaultPriority(self, value):
269
+ if value is not None:
270
+ self.defaultPriority = value
271
+ return self
272
+
273
+ def getDhcpAddressAssignment(self):
274
+ return self.dhcpAddressAssignment
275
+
276
+ def setDhcpAddressAssignment(self, value):
277
+ if value is not None:
278
+ self.dhcpAddressAssignment = value
279
+ return self
280
+
281
+ def getSendActivity(self):
282
+ return self.sendActivity
283
+
284
+ def setSendActivity(self, value):
285
+ if value is not None:
286
+ self.sendActivity = value
287
+ return self
288
+
289
+ def getVlanRef(self):
290
+ return self.vlanRef
291
+
292
+ def setVlanRef(self, value):
293
+ if value is not None:
294
+ self.vlanRef = value
295
+ return self
296
+
297
+
45
298
  class CouplingPort(Identifiable):
46
299
  def __init__(self, parent, short_name):
47
300
  super().__init__(parent, short_name)
48
301
 
49
- self.connectionNegotiationBehavior = None # type: EthernetConnectionNegotiationEnum
302
+ self.connectionNegotiationBehavior = None # type: EthernetConnectionNegotiationEnum
303
+ self.couplingPortDetails = None # type: CouplingPortDetails
304
+ self.couplingPortRole = None # type: CouplingPortRoleEnum
305
+ self.defaultVlanRef = None # type: RefType
306
+ self.macAddressVlanAssignments = [] # type: List[MacAddressVlanMembership]
307
+ self.macLayerType = None # type: EthernetMacLayerTypeEnum
308
+ self.macMulticastAddressRefs = [] # type: List[RefType]
309
+ self.macSecProps = [] # type: List[MacSecProps]
310
+ self.physicalLayerType = None # type: EthernetPhysicalLayerTypeEnum
311
+ self.plcaProps = None # type: PlcaProps
312
+ self.pncMappingRefs = [] # type: List[RefType]
313
+ self.receiveActivity = None # type: EthernetSwitchVlanIngressTagEnum
314
+ self.vlanMemberships = [] # type: List[VlanMembership]
315
+ self.wakeupSleepOnDatalineConfigRef = None # type: RefType
316
+
317
+ def getConnectionNegotiationBehavior(self):
318
+ return self.connectionNegotiationBehavior
319
+
320
+ def setConnectionNegotiationBehavior(self, value):
321
+ if value is not None:
322
+ self.connectionNegotiationBehavior = value
323
+ return self
324
+
325
+ def getCouplingPortDetails(self):
326
+ return self.couplingPortDetails
327
+
328
+ def setCouplingPortDetails(self, value):
329
+ if value is not None:
330
+ self.couplingPortDetails = value
331
+ return self
332
+
333
+ def getCouplingPortRole(self):
334
+ return self.couplingPortRole
335
+
336
+ def setCouplingPortRole(self, value):
337
+ if value is not None:
338
+ self.couplingPortRole = value
339
+ return self
340
+
341
+ def getDefaultVlanRef(self):
342
+ return self.defaultVlanRef
343
+
344
+ def setDefaultVlanRef(self, value):
345
+ if value is not None:
346
+ self.defaultVlanRef = value
347
+ return self
348
+
349
+ def getMacAddressVlanAssignments(self):
350
+ return self.macAddressVlanAssignments
351
+
352
+ def setMacAddressVlanAssignments(self, value):
353
+ if value is not None:
354
+ self.macAddressVlanAssignments = value
355
+ return self
356
+
357
+ def getMacLayerType(self):
358
+ return self.macLayerType
359
+
360
+ def setMacLayerType(self, value):
361
+ if value is not None:
362
+ self.macLayerType = value
363
+ return self
364
+
365
+ def getMacMulticastAddressRefs(self):
366
+ return self.macMulticastAddressRefs
367
+
368
+ def setMacMulticastAddressRefs(self, value):
369
+ if value is not None:
370
+ self.macMulticastAddressRefs = value
371
+ return self
372
+
373
+ def getMacSecProps(self):
374
+ return self.macSecProps
375
+
376
+ def setMacSecProps(self, value):
377
+ if value is not None:
378
+ self.macSecProps = value
379
+ return self
380
+
381
+ def getPhysicalLayerType(self):
382
+ return self.physicalLayerType
383
+
384
+ def setPhysicalLayerType(self, value):
385
+ if value is not None:
386
+ self.physicalLayerType = value
387
+ return self
388
+
389
+ def getPlcaProps(self):
390
+ return self.plcaProps
391
+
392
+ def setPlcaProps(self, value):
393
+ if value is not None:
394
+ self.plcaProps = value
395
+ return self
396
+
397
+ def getPncMappingRefs(self):
398
+ return self.pncMappingRefs
399
+
400
+ def setPncMappingRefs(self, value):
401
+ if value is not None:
402
+ self.pncMappingRefs = value
403
+ return self
404
+
405
+ def getReceiveActivity(self):
406
+ return self.receiveActivity
407
+
408
+ def setReceiveActivity(self, value):
409
+ if value is not None:
410
+ self.receiveActivity = value
411
+ return self
412
+
413
+ def getVlanMemberships(self):
414
+ return self.vlanMemberships
415
+
416
+ def addVlanMembership(self, value):
417
+ if value is not None:
418
+ self.vlanMemberships.append(value)
419
+ return self
420
+
421
+ def getWakeupSleepOnDatalineConfigRef(self):
422
+ return self.wakeupSleepOnDatalineConfigRef
423
+
424
+ def setWakeupSleepOnDatalineConfigRef(self, value):
425
+ if value is not None:
426
+ self.wakeupSleepOnDatalineConfigRef = value
427
+ return self
428
+
50
429
 
51
430
 
52
431
  class EthernetCommunicationController(CommunicationController):
@@ -72,9 +451,12 @@ class EthernetCommunicationController(CommunicationController):
72
451
  def getCouplingPorts(self):
73
452
  return self.couplingPorts
74
453
 
75
- def addCouplingPort(self, value):
76
- self.couplingPorts.append(value)
77
- return self
454
+ def createCouplingPort(self, short_name: str) -> CouplingPort:
455
+ if (short_name not in self.elements):
456
+ group = CouplingPort(self, short_name)
457
+ self.addElement(group)
458
+ self.couplingPorts.append(group)
459
+ return self.getElement(short_name)
78
460
 
79
461
  def getMacLayerType(self):
80
462
  return self.macLayerType
@@ -163,5 +545,120 @@ class EthernetCommunicationConnector(CommunicationConnector):
163
545
  self.pathMtuTimeout = value
164
546
  return self
165
547
 
548
+ class RequestResponseDelay(ARObject):
549
+ def __init__(self):
550
+ super().__init__()
551
+
552
+ self.maxValue = None # type: TimeValue
553
+ self.minValue = None # type: TimeValue
554
+
555
+ def getMaxValue(self):
556
+ return self.maxValue
557
+
558
+ def setMaxValue(self, value):
559
+ if value is not None:
560
+ self.maxValue = value
561
+ return self
562
+
563
+ def getMinValue(self):
564
+ return self.minValue
565
+
566
+ def setMinValue(self, value):
567
+ if value is not None:
568
+ self.minValue = value
569
+ return self
570
+
571
+ class InitialSdDelayConfig(ARObject):
572
+ def __init__(self):
573
+ super().__init__()
574
+
575
+ self.initialDelayMaxValue = None # type: TimeValue
576
+ self.initialDelayMinValue = None # type: TimeValue
577
+ self.initialRepetitionsBaseDelay = None # type: TimeValue
578
+ self.initialRepetitionsMax = None # type: PositiveInteger
579
+
580
+ def getInitialDelayMaxValue(self):
581
+ return self.initialDelayMaxValue
582
+
583
+ def setInitialDelayMaxValue(self, value):
584
+ if value is not None:
585
+ self.initialDelayMaxValue = value
586
+ return self
587
+
588
+ def getInitialDelayMinValue(self):
589
+ return self.initialDelayMinValue
590
+
591
+ def setInitialDelayMinValue(self, value):
592
+ if value is not None:
593
+ self.initialDelayMinValue = value
594
+ return self
595
+
596
+ def getInitialRepetitionsBaseDelay(self):
597
+ return self.initialRepetitionsBaseDelay
598
+
599
+ def setInitialRepetitionsBaseDelay(self, value):
600
+ if value is not None:
601
+ self.initialRepetitionsBaseDelay = value
602
+ return self
603
+
604
+ def getInitialRepetitionsMax(self):
605
+ return self.initialRepetitionsMax
606
+
607
+ def setInitialRepetitionsMax(self, value):
608
+ if value is not None:
609
+ self.initialRepetitionsMax = value
610
+ return self
611
+
612
+
613
+ class SdClientConfig(ARObject):
614
+ def __init__(self):
615
+ super().__init__()
616
+
617
+ self.capabilityRecord = None # type: TagWithOptionalValue
618
+ self.clientServiceMajorVersion = None # type: PositiveInteger
619
+ self.clientServiceMinorVersion = None # type: PositiveInteger
620
+ self.initialFindBehavior = None # type: InitialSdDelayConfig
621
+ self.requestResponseDelay = None # type: RequestResponseDelay
622
+ self.ttl = None # type: PositiveInteger
623
+
624
+ def getClientServiceMajorVersion(self):
625
+ return self.clientServiceMajorVersion
626
+
627
+ def setClientServiceMajorVersion(self, value):
628
+ if value is not None:
629
+ self.clientServiceMajorVersion = value
630
+ return self
631
+
632
+ def getClientServiceMinorVersion(self):
633
+ return self.clientServiceMinorVersion
634
+
635
+ def setClientServiceMinorVersion(self, value):
636
+ if value is not None:
637
+ self.clientServiceMinorVersion = value
638
+ return self
639
+
640
+ def getInitialFindBehavior(self):
641
+ return self.initialFindBehavior
642
+
643
+ def setInitialFindBehavior(self, value):
644
+ if value is not None:
645
+ self.initialFindBehavior = value
646
+ return self
647
+
648
+ def getRequestResponseDelay(self):
649
+ return self.requestResponseDelay
650
+
651
+ def setRequestResponseDelay(self, value):
652
+ if value is not None:
653
+ self.requestResponseDelay = value
654
+ return self
655
+
656
+ def getTtl(self):
657
+ return self.ttl
658
+
659
+ def setTtl(self, value):
660
+ if value is not None:
661
+ self.ttl = value
662
+ return self
166
663
 
167
664
 
@@ -2,7 +2,7 @@ from abc import ABCMeta
2
2
  from typing import List
3
3
  from ......M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.ArObject import ARObject
4
4
  from ......M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.Identifiable import Identifiable
5
- from ......M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import Boolean, Ip4AddressString, Ip6AddressString, PositiveInteger, String
5
+ from ......M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import Boolean, Ip4AddressString, Ip6AddressString, PositiveInteger, String, TimeValue
6
6
 
7
7
  class NetworkEndpointAddress(ARObject, metaclass = ABCMeta):
8
8
  def __init__(self):
@@ -156,6 +156,109 @@ class Ipv6Configuration(NetworkEndpointAddress):
156
156
  def setIpv6AddressSource(self, value):
157
157
  self.ipv6AddressSource = value
158
158
  return self
159
+
160
+ class DoIpEntity(ARObject):
161
+ def __init__(self):
162
+ super().__init__()
163
+
164
+ self.doIpEntityRole = None # type: DoIpEntityRoleEnum
165
+
166
+ def getDoIpEntityRole(self):
167
+ return self.doIpEntityRole
168
+
169
+ def setDoIpEntityRole(self, value):
170
+ if value is not None:
171
+ self.doIpEntityRole = value
172
+ return self
173
+
174
+ class TimeSyncClientConfiguration(ARObject):
175
+ def __init__(self):
176
+ super().__init__()
177
+
178
+ self.orderedMasters = [] # type: List[OrderedMaster]
179
+ self.timeSyncTechnology = None # type: TimeSyncTechnologyEnum
180
+
181
+ def getOrderedMasters(self):
182
+ return self.orderedMasters
183
+
184
+ def addOrderedMaster(self, value):
185
+ if value is not None:
186
+ self.orderedMasters.append(value)
187
+ return self
188
+
189
+ def getTimeSyncTechnology(self):
190
+ return self.timeSyncTechnology
191
+
192
+ def setTimeSyncTechnology(self, value):
193
+ if value is not None:
194
+ self.timeSyncTechnology = value
195
+ return self
196
+
197
+
198
+ class TimeSyncServerConfiguration(ARObject):
199
+ def __init__(self):
200
+ super().__init__()
201
+
202
+ self.priority = None # type: PositiveInteger
203
+ self.syncInterval = None # type: TimeValue
204
+ self.timeSyncServerIdentifier = None # type: String
205
+ self.timeSyncTechnology = None # type: TimeSyncTechnologyEnum
206
+
207
+ def getPriority(self):
208
+ return self.priority
209
+
210
+ def setPriority(self, value):
211
+ if value is not None:
212
+ self.priority = value
213
+ return self
214
+
215
+ def getSyncInterval(self):
216
+ return self.syncInterval
217
+
218
+ def setSyncInterval(self, value):
219
+ if value is not None:
220
+ self.syncInterval = value
221
+ return self
222
+
223
+ def getTimeSyncServerIdentifier(self):
224
+ return self.timeSyncServerIdentifier
225
+
226
+ def setTimeSyncServerIdentifier(self, value):
227
+ if value is not None:
228
+ self.timeSyncServerIdentifier = value
229
+ return self
230
+
231
+ def getTimeSyncTechnology(self):
232
+ return self.timeSyncTechnology
233
+
234
+ def setTimeSyncTechnology(self, value):
235
+ if value is not None:
236
+ self.timeSyncTechnology = value
237
+ return self
238
+
239
+
240
+ class TimeSynchronization(ARObject):
241
+ def __init__(self):
242
+ super().__init__()
243
+
244
+ self.timeSyncClient = None # type: TimeSyncClientConfiguration
245
+ self.timeSyncServer = None # type: TimeSyncServerConfiguration
246
+
247
+ def getTimeSyncClient(self):
248
+ return self.timeSyncClient
249
+
250
+ def setTimeSyncClient(self, value):
251
+ if value is not None:
252
+ self.timeSyncClient = value
253
+ return self
254
+
255
+ def getTimeSyncServer(self):
256
+ return self.timeSyncServer
257
+
258
+ def setTimeSyncServer(self, value):
259
+ if value is not None:
260
+ self.timeSyncServer = value
261
+ return self
159
262
 
160
263
 
161
264
  class InfrastructureServices(ARObject):