Files
dev/script/cpy/Device.py
2023-05-01 11:28:04 +02:00

170 lines
3.3 KiB
Python

class GenericDevice(Nameable):
cls=[ "ch.psi.pshell.device.GenericDevice", \
"ch.psi.utils.Observable", \
"ch.psi.pshell.device.Timestamped", \
"java.lang.AutoCloseable", \
"ch.psi.utils.Configurable", \
"ch.psi.pshell.device.Record" ]
def __init__(self, name=None, cls=GenericDevice.cls):
Nameable.__init__(self, name, cls)
self.simulated=False
self.state=State.Ready
self.monitored=False
self.polling=None
self.cache=None
self.age=None
def addListener(self, listener):
pass
def getListeners(self):
pass
def removeListener(self, listener):
pass
def removeAllListeners(self):
pass
def getTimestamp(self):
return 0
def getTimestampNanos(self):
return 0
def getConfig(self):
return None
def getState(self):
return State.Ready
def waitState(self, state, timeout):
return
def waitStateNot(self, state, timeout):
pass
def initialize(self):
pass
def isInitialized(self):
return True
def waitInitialized(self, timeout):
pass
def setSimulated(self):
self.simulated = True
def isSimulated(self):
return self.simulated
def isMonitored(self):
return self.monitored
def setMonitored(self,monitored):
self.monitored=self.monitored
def setPolling(self, interval):
self.polling=interval
def getPolling(self):
return self.polling
def isPollingBackground(self):
return self.polling and self.polling>0
def setAccessType(self, mode):
pass
def getAccessType(self):
return None
def take(self):
return self.cache
def getAge(self):
return self.age
def request(self):
self.update()
def update(self):
pass
def setWaitSleep(self, value):
pass
def getWaitSleep(self):
return 5
def isPolled(self):
return self.getPolling() > 0
def takeAsNumber(self):
cache = take();
try:
return float(cache)
except:
return None
def close(self):
pass
class Device(GenericDevice):
cls="ch.psi.pshell.device.Device"
def __init__(self, name=None):
GenericDevice.__init__(self, name, [Device.cls] + GenericDevice.cls)
def isReady():
return getState()==State.Ready
def waitReady(self, timeout):
return
def waitValue(self, value, timeout):
return
def waitValueNot(self, value, timeout):
return
def waitValueChange(self,timeout):
return false
def waitCacheChange(self,timeout):
return false
def getComponents(self):
return None
def getComponent(self, name):
return None
def getChildren(self):
return None
def getChild(self, name):
return None
def getParent(self):
return None
def setTriggers(self,triggers):
pass
def getTriggers(self):
return None
def takeTimestamped(self,):
return None
def isChild(self, device):
return False
dev= Device("test")
add_device(dev, True)