def ISNewNumber(self, dev, name, values, names, n): if (dev != self.name): return False self.logger.info("ISNewNumber " + dev + " property " + name) nvp = self.getNumber(name) if not nvp: return False if name == 'SIMULATOR_SETTINGS': cvalues = PyIndiDriver.new_doubleArray(n) for i in range(len(values)): self.logger.info(' ' + names[i] + ' = ' + str(values[i])) PyIndiDriver.doubleArray_setitem(cvalues, i, values[i]) PyIndiDriver.IUUpdateNumber(nvp, cvalues, names, n) nvp.s = PyIndi.IPS_OK # Reset our parameters now #SetupParms(); PyIndiDriver.IDSetNumber(nvp, None) #saveConfig(); #IDLog("Frame set to %4.0f,%4.0f %4.0f x %4.0f\n",CcdFrameN[0].value,CcdFrameN[1].value,CcdFrameN[2].value,CcdFrameN[3].value); #self.seeing=nvp[0].value return True cvalues = PyIndiDriver.new_doubleArray(n) for i in range(len(values)): self.logger.info(' ' + names[i] + ' = ' + str(values[i])) PyIndiDriver.doubleArray_setitem(cvalues, i, values[i]) if super(CCDSimulator, self).ISNewNumber(dev, name, cvalues, names, n): return True return False
def ISNewBLOB (self, dev, name, sizes, blobsizes, blobs, formats, names, n): self.logger.info("ISNewBLOB " + dev + " property " + name) if (dev != self.name): return False bvp=self.getBLOB(name) if not bvp: return False if not self.isConnected(): bvp.s=PyIndi.IPS_ALERT PyIndiDriver.IDSetNumber(bvp, "Cannot change property while device is disconnected.") return False if (bvp.name == "BLOB Test"): csizes=PyIndiDriver.new_intArray(n) for i in range(len(sizes)): PyIndiDriver.intArray_setitem(csizes, i, sizes[i]) #PyIndiDriver.IDLog('BLOB '+str(i)+' Content:\n##################################\n'+blobs[i]+'\n##################################\n') cblobsizes=PyIndiDriver.new_intArray(n) for i in range(len(blobsizes)): PyIndiDriver.intArray_setitem(cblobsizes, i, blobsizes[i]) PyIndiDriver.IUUpdateBLOB(bvp, csizes, cblobsizes, blobs, formats, names, n); bp = PyIndiDriver.IUFindBLOB(bvp, names[0]) if (not bp): return False PyIndiDriver.IDLog('Received BLOB with name '+bp.name+', format '+getattr(bp,'format')+', and size '+str(bp.size)+', and bloblen '+str(bp.bloblen)+'\n') #PyIndiDriver.IDLog('BLOB Content:\n##################################\n'+str(bp.getblobdata())+'\n##################################\n') bp.size=0 bvp.s = PyIndi.IPS_OK PyIndiDriver.IDSetBLOB(bvp, None) return True
def ISNewNumber (self, dev, name, values, names, n): self.logger.info("ISNewNumber " + dev + " property " + name) if (dev != self.name): return False nvp=self.getNumber(name) if not nvp: return False if not self.isConnected(): nvp.s=PyIndi.IPS_ALERT PyIndiDriver.IDSetNumber(nvp, "Cannot change property while device is disconnected.") return False if (name == "Number Property"): cvalues=PyIndiDriver.new_doubleArray(n) for i in range(len(values)): self.logger.info(' ' + names[i] + ' = ' + str(values[i])) PyIndiDriver.doubleArray_setitem(cvalues, i, values[i]) PyIndiDriver.IUUpdateNumber(nvp, cvalues, names, n) print names nvp.s=PyIndi.IPS_OK PyIndiDriver.IDSetNumber(nvp, None) return True return False