From 5659c299b53eef90fc6df940552bc232671a3e06 Mon Sep 17 00:00:00 2001
From: Cody Messick <cody.messick@ligo.org>
Date: Sat, 12 Aug 2017 15:43:50 -0400
Subject: [PATCH] gstlal_inspiral_pipe: Fix bug that prevents generation of
 injection-only dag

---
 gstlal-inspiral/bin/gstlal_inspiral_pipe | 15 ++++++++++-----
 1 file changed, 10 insertions(+), 5 deletions(-)

diff --git a/gstlal-inspiral/bin/gstlal_inspiral_pipe b/gstlal-inspiral/bin/gstlal_inspiral_pipe
index ecee65f1db..d668d5bdc1 100755
--- a/gstlal-inspiral/bin/gstlal_inspiral_pipe
+++ b/gstlal-inspiral/bin/gstlal_inspiral_pipe
@@ -1110,16 +1110,16 @@ def parse_command_line():
 	if options.num_banks:
 		options.num_banks = [int(v) for v in options.num_banks.split(",")]
 
-	if not options.samples_min:
+	if not options.samples_min and not options.svd_bank_cache:
 		options.samples_min = [1024]*len(options.bank_cache)
 
-	if not options.overlap:
+	if not options.overlap and not options.svd_bank_cache:
 		options.overlap = [0]*len(options.bank_cache)
 	
-	if any(overlap % 2 for overlap in options.overlap):
+	if not options.svd_bank_cache and any(overlap % 2 for overlap in options.overlap):
 		raise ValueError("overlap must be even")
 
-	if not (len(options.samples_min) == len(options.bank_cache) == len(options.overlap)):
+	if not options.svd_bank_cache and not (len(options.samples_min) == len(options.bank_cache) == len(options.overlap)):
 		raise ValueError("must provide same number of inputs for --samples-min, --bank-cache, --overlap")
 
 	missing_injection_options = []
@@ -1176,7 +1176,7 @@ def parse_command_line():
 
 options, filenames = parse_command_line()
 
-if options.bank_cache or options.svd_bank_cache:
+if options.bank_cache:
 	# FIXME Add feature for multiple bank caches to online pipeline so that
 	# this functionality can return to inspiral_pipe
 	bank_cache = {}
@@ -1192,6 +1192,11 @@ if options.bank_cache or options.svd_bank_cache:
 		instrument_set = bank_cache.keys()
 	boundary_seg = detectors.seg
 
+elif options.svd_bank_cache:
+	detectors = datasource.GWDataSourceInfo(options)
+	channel_dict = detectors.channel_dict
+	boundary_seg = detectors.seg
+
 else:
 	with open(options.rank_pdf_cache) as f:
 		ce = CacheEntry(f.readline())
-- 
GitLab