Defining new members in DeviceProxy has side effects
Defining new members in DeviceProxy (ex: by inheriting from DeviceProxy) causes DeviceProxy to define State and Status as properties instead of methods:
from PyTango import DeviceProxy
class D(DeviceProxy):
def __ini__(self, *a, **ka):
super(D, self).__init__(*a, **ka):
self.bla = 1234
>>> d_ok = DeviceProxy('sys/tg_test/1')
>>> print d_ok.State()
ON
>>> d_err = D('sys/tg_test/1')
>>> print d_err.State()
TypeError: 'DevState' object is not callable
This problem occurs only in PyTango 9.x. Thanks to Laurent Farvacque (ESRF) for reporting the problem