diff --git a/gstlal-inspiral/python/lloidhandler.py b/gstlal-inspiral/python/lloidhandler.py index 7b32b76adac8c70f5b001ab1f00d4576a1093f47..c16b4847e37a6d75011ef3192d9cb6bd0bb08103 100644 --- a/gstlal-inspiral/python/lloidhandler.py +++ b/gstlal-inspiral/python/lloidhandler.py @@ -756,6 +756,7 @@ class Handler(simplehandler.Handler): if verbose: print >>sys.stderr, "connecting horizon distance handlers to gates ..." + self.absent_instruments = set() for instrument in rankingstat.instruments: name = "%s_ht_gate" % instrument elem = pipeline.get_by_name(name) @@ -770,6 +771,7 @@ class Handler(simplehandler.Handler): # statement in the EOS handler that we # don't do that, and I can remember why # that is. + self.absent_instruments.add(instrument) continue raise ValueError("cannot find \"%s\" element for %s" % (name, instrument)) if verbose: @@ -1028,6 +1030,8 @@ class Handler(simplehandler.Handler): self.rankingstat.denominator.triggerrates[instrument].add_ratebin(map(float, buf_seg), len([event for event in events if event.snr >= snr_min])) # run stream thinca. + for instrument in self.absent_instruments: + self.stream_thinca.push(instrument, (), buf_timestamp) if self.stream_thinca.push(instrument, events, buf_timestamp): flushed_sngls = self.stream_thinca.pull(self.rankingstat, fapfar = self.fapfar, zerolag_rankingstatpdf = self.zerolag_rankingstatpdf, coinc_sieve = lambda events: sum(event.snr**2. for event in events) < self.rankingstat.network_snrsq_threshold) self.coincs_document.commit()