36 lines
804 B
Python
36 lines
804 B
Python
"""
|
|
Creating pseudo-devices
|
|
"""
|
|
import time
|
|
|
|
sin_val=None
|
|
|
|
class Sensor(ch.psi.pshell.dev.Readable):
|
|
def read(self):
|
|
global sin_val
|
|
return sin_val + time.clock()
|
|
def getName(self):
|
|
return "Sensor"
|
|
|
|
class Positioner(ch.psi.pshell.dev.Writable):
|
|
def write(self,pos):
|
|
print pos
|
|
def getName(self):
|
|
return "Positioner"
|
|
|
|
class Listener (ch.psi.pshell.dev.DeviceListener):
|
|
def onStateChanged(self, device, state, former):
|
|
pass
|
|
def onValueChanged(self, device, value, former):
|
|
global sin_val
|
|
sin_val=value
|
|
|
|
sensor=Sensor()
|
|
positioner=Positioner()
|
|
listener = Listener()
|
|
|
|
sin.addListener(listener)
|
|
try:
|
|
a= lscan((inp,positioner),(sin,sensor),(0,0),(40,10),20,0.1)
|
|
finally:
|
|
sin.removeListener(listener) |