Source code for mxcubecore.HardwareObjects.SOLEIL.PX1.PX1Pss
# -*- coding: utf-8 -*-
from mxcubecore.BaseHardwareObjects import HardwareObject
[docs]class PX1Pss(HardwareObject):
states = {0: "not ready", 1: "ready"}
[docs] def init(self):
self.state_chan = self.get_channel_object("state")
self.state_chan.connect_signal("update", self.value_changed)
def value_changed(self, value):
state = self.get_state(value)
self.log.debug("state changed. value is %s" % state)
self.emit("stateChanged", (state,))
[docs] def get_state(self, value=None):
if value is None:
value = self.state_chan.get_value()
if value in self.states:
self.state = self.states[value]
else:
self.state = "unknown"
return self.state
def test_hwo(hwo):
print(hwo.get_state())