Lines Matching refs:self

122   def __init__(self, message, value=None):
123 self.message = message
124 self.value = value
127 def __init__(self, queue, proc):
128 self._queue = queue
129 self._proc = proc
130 Thread.__init__(self)
132 def run(self):
134 for line in iter(self._proc.stdout.readline, b''):
135 self._queue.put(Message(Message.READLINE, line.decode('utf-8').rstrip()))
136 self._queue.put(Message(Message.EXIT))
207 def __init__(self, src, config, max_stddev, best_result=None):
208 self.src = src
209 self.config = config
210 self.max_stddev = max_stddev
211 self.best_result = best_result
212 self._queue = Queue()
213 self._proc = None
214 self._monitor = None
215 self._hw_poll_timer = None
217 def __enter__(self):
218 return self
220 def __exit__(self, exception_type, exception_value, traceback):
221 if self._proc:
222 self.terminate()
223 if self._hw_poll_timer:
224 self._hw_poll_timer.cancel()
226 def execute(self, hardware):
228 self._schedule_hardware_poll()
230 commandline = self.ARGV + ['--config', self.config,
231 '--src', self.src,
234 pngfile = _path.join(FLAGS.write_path, self.config,
235 _path.basename(self.src) + '.png')
238 self._proc = subprocess.Popen(commandline, stdout=subprocess.PIPE,
240 self._monitor = SubprocessMonitor(self._queue, self._proc)
241 self._monitor.start()
244 message = self._queue.get()
249 self._process_result(result)
255 self._schedule_hardware_poll()
258 self._monitor.join()
259 self._proc.wait()
260 if self._proc.returncode != 0:
262 self._proc.returncode)
263 self._proc = None
266 def _schedule_hardware_poll(self):
267 if self._hw_poll_timer:
268 self._hw_poll_timer.cancel()
269 self._hw_poll_timer = \
270 Timer(1, lambda: self._queue.put(Message(Message.POLL_HARDWARE)))
271 self._hw_poll_timer.start()
273 def _process_result(self, result):
274 if not self.best_result or result.stddev <= self.best_result.stddev:
275 self.best_result = result
279 (result.config, result.bench, self.best_result.stddev,
281 if self.max_stddev and self.best_result.stddev > self.max_stddev:
284 def terminate(self):
285 if self._proc:
286 self._proc.terminate()
287 self._monitor.join()
288 self._proc.wait()
289 self._proc = None