Param(..., initwrite=True) works only with poll=True

check this when creating a Parameter

Change-Id: I5d45f25fd67682de45b51c842323e9582f69e6e3
Reviewed-on: https://forge.frm2.tum.de/review/c/sine2020/secop/playground/+/23547
Tested-by: Jenkins Automated Tests <pedersen+jenkins@frm2.tum.de>
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de>
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch>
This commit is contained in:
zolliker 2020-07-29 14:11:28 +02:00
parent 2eb0aeba0d
commit 7af4d572ab

View File

@ -139,8 +139,11 @@ class Parameter(Accessible):
datatype.setProperty('unit', unit) datatype.setProperty('unit', unit)
super(Parameter, self).__init__(**kwds) super(Parameter, self).__init__(**kwds)
if self.readonly and self.initwrite: if self.initwrite:
raise ProgrammingError('can not have both readonly and initwrite!') if self.readonly:
raise ProgrammingError('can not have both readonly and initwrite!')
if not self.poll:
raise ProgrammingError('only polled parameters can have initwrite!')
if self.constant is not None: if self.constant is not None:
self.properties['readonly'] = True self.properties['readonly'] = True