diff --git a/geomagio/Controller.py b/geomagio/Controller.py index 346070be5cfc6a567f58a5df8923d9817700bfba..d6b0d79ad489494b08b5379e2b42face4c7c7025 100644 --- a/geomagio/Controller.py +++ b/geomagio/Controller.py @@ -245,7 +245,9 @@ class Controller(object): if not algorithm.can_produce_data( starttime=output_gap[0], endtime=output_gap[1], - stream=input_timeseries): + stream=input_timeseries, + channels = algorithm.get_required_channels() or \ + input_channels): continue # check for fillable gap at start if output_gap[0] == options.starttime: diff --git a/geomagio/algorithm/Algorithm.py b/geomagio/algorithm/Algorithm.py index a3f264cb5d4ac4bc653dfefc530d722009d9f8e0..a712b14a128852e2f9714da2087db5e9724f5e05 100644 --- a/geomagio/algorithm/Algorithm.py +++ b/geomagio/algorithm/Algorithm.py @@ -87,7 +87,7 @@ class Algorithm(object): """ return (start, end) - def can_produce_data(self, starttime, endtime, stream): + def can_produce_data(self, starttime, endtime, stream, channels = None): """Can Product data Parameters @@ -100,7 +100,7 @@ class Algorithm(object): The input stream we want to make certain has data for the algorithm """ input_gaps = TimeseriesUtility.get_merged_gaps( - TimeseriesUtility.get_stream_gaps(stream)) + TimeseriesUtility.get_stream_gaps(stream,channels)) for input_gap in input_gaps: # Check for gaps that include the entire range if (starttime >= input_gap[0] and