From d78a275655cfaee3f5f6b1101caf85db5a371335 Mon Sep 17 00:00:00 2001 From: Yann Sionneau Date: Fri, 22 May 2015 16:08:07 +0200 Subject: [PATCH] pxi6733: use a method as DoneEvent callback --- artiq/devices/pxi6733/driver.py | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/artiq/devices/pxi6733/driver.py b/artiq/devices/pxi6733/driver.py index a1569659a..118169ec2 100644 --- a/artiq/devices/pxi6733/driver.py +++ b/artiq/devices/pxi6733/driver.py @@ -12,11 +12,6 @@ class DAQmxSim: pass -def done_callback_py(taskhandle, status, callback_data): - callback_data.daq.DAQmxClearTask(taskhandle) - callback_data.tasks.remove(taskhandle) - - class DAQmx: """NI PXI6733 DAQ interface.""" @@ -29,6 +24,10 @@ class DAQmx: self.tasks = [] self.daq = daq + def done_callback_py(self, taskhandle, status, callback_data): + self.daq.DAQmxClearTask(taskhandle) + self.tasks.remove(taskhandle) + def load_sample_values(self, values): """Load sample values into PXI 6733 device. @@ -60,9 +59,9 @@ class DAQmx: if ret: raise IOError("Error while writing samples to the channel buffer") - done_callback = self.daq.DAQmxDoneEventCallbackPtr(done_callback_py) + done_cb = self.daq.DAQmxDoneEventCallbackPtr(self.done_callback_py) self.tasks.append(t.taskHandle) - self.daq.DAQmxRegisterDoneEvent(t.taskHandle, 0, done_callback, self) + self.daq.DAQmxRegisterDoneEvent(t.taskHandle, 0, done_cb, None) t.StartTask() def close(self):