Updated gui.panel.note and simplified hooke.plugin.note.
[hooke.git] / hooke / plugin / flatfilt.py
index 1637ce3f6ed12f139e41d2316921f56b05b3dca1..716a4be7f61df45684d554e2915a1519d6664e7f 100644 (file)
@@ -38,13 +38,14 @@ from multiprocessing import Queue
 from numpy import diff
 from scipy.signal.signaltools import medfilt
 
-from ..command import Command, Argument, Success, Failure
+from ..command import Command, Argument, Success, Failure, UncaughtException
 from ..config import Setting
 from ..experiment import VelocityClamp
 from ..plugin import Plugin, argument_to_setting
 from ..plugin.curve import CurveArgument
 from ..plugin.playlist import FilterCommand
 from ..plugin.vclamp import scale
+from ..util.fit import PoorFit
 from ..util.peak import find_peaks, find_peaks_arguments, Peak, _kwargs
 
 
@@ -204,6 +205,9 @@ class FlatFilterCommand (FilterCommand):
                         if c.name=='flat filter peaks'][0]
         filt_command.run(hooke, inq, outq, **params)
         peaks = outq.get()
+        if isinstance(peaks, UncaughtException) \
+                and isinstance(peaks.exception, PoorFit):
+            return False
         if not (isinstance(peaks, list) and (len(peaks) == 0
                                              or isinstance(peaks[0], Peak))):
             raise Failure('Expected a list of Peaks, not %s' % peaks)