Loading
Direct attribute handlers on native Attribute objects, resolved via get_att_device
self.my_attr returns the real tango.Attribute / tango.WAttribute instead of the proxy added in !1014 (merged), with read(), write() and is_allowed() moved onto those classes, so isinstance and type both behave as before. The handlers of statically declared attributes are found on the device class and those of dynamically added ones on the device instance, and an attribute finds its own device through the newly bound Attribute::get_att_device(). Classic API attributes, and dynamic attributes added as low-level Attr/AttrData objects, raise NotImplementedError.
Edited by Yury Matveev