From 8f5eab1eafac72d78742e83bcced107a077599e9 Mon Sep 17 00:00:00 2001
From: channa <channa>
Date: Fri, 22 May 2009 17:19:07 +0000
Subject: [PATCH] cleaned this up a bit more

---
 src/utilities/lloid_gui | 109 +++++++++++++++++-----------------------
 1 file changed, 45 insertions(+), 64 deletions(-)

diff --git a/src/utilities/lloid_gui b/src/utilities/lloid_gui
index c33855206e..979ae4a7e3 100755
--- a/src/utilities/lloid_gui
+++ b/src/utilities/lloid_gui
@@ -139,21 +139,43 @@ class LLOID(object):
 		# whitened hoft	
 		hoft_tees = self.whitened_hoft_tees(simulation)	
 
+		dump = self.nxy_dump(874107086000000000, 874107286000000000, "hoft.txt")
+                hoft_tees["L1"][2048].link(dump)
+
 		# SVD filter output (this has 4 src pads!!! "src", "sumofsquares", "chifacs", "matrix")
 		orthosnrtee, matrixtee, chifacstee, sumofsquarestee = self.svd_filter_tees(hoft_tees)
+
+                dump = self.nxy_dump(874107086000000000, 874107286000000000, "sumsq.txt")
+                sumofsquarestee["L1"][0].link(dump)
 	
-		control_tee = self.control_tee(sumofsquarestee)
+		control_tee = self.control_tees(sumofsquarestee)
 
-		dump = self.nxy_dump(874106958000000000, 874107158000000000)
-		control_tee.link(dump)
+		#fake = self.fakesink()
+		sink = self.filesink("control.txt")
+		#dump = self.nxy_dump(874107086000000000, 874107286000000000, "control.txt")
+		#control_tee.link(dump)
+		control_tee.link(sink)
+		
 
+		#for k, v in matrixtee.items():
+		#	for l in [matrixtee[k], orthosnrtee[k], chifacstee[k]]:#, sumofsquarestee[k]]:
+		#		for elem in l:
+		#			fake = self.fakesink()
+		#			elem.link(fake)
+		#return 
 		gate_tee = self.gate_tees(orthosnrtee, control_tee)
 		reconstructed_snr_tee = self.reconstructed_snr_tees(gate_tee, matrixtee)
 		chisq_tee = self.chisquare_tees(orthosnrtee, matrixtee, reconstructed_snr_tee, chifacstee)
 
+		dump = self.nxy_dump(874107086000000000, 874107286000000000, "snr0.txt")
+                reconstructed_snr_tee["L1"][0].link(dump)
+
 		added_snr_tee = self.added_snr_tees(reconstructed_snr_tee)
 		added_chisq_tee = self.added_chisq_tees(chisq_tee)
 
+		dump = self.nxy_dump(874107086000000000, 874107286000000000, "addedsnr.txt")
+                added_snr_tee["L1"].link(dump)
+
 	
 		trigger_gen_tee = self.trigger_gen_tees(added_snr_tee, added_chisq_tee)
 
@@ -162,48 +184,6 @@ class LLOID(object):
 		return 
 
  
-
-	#def set_frame_cache(self, filename):
-	#	self.framesrc.set_property("location", filename)
-
-	#def set_channel(self, instrument, channel):
-	#	self.framesrc.set_property("instrument", instrument)
-	#	self.framesrc.set_property("channel-name", channel)
-
-	#def set_segment(self, startns, stopns):
-	#	for det in self.detectors.keys()
-	#		
-	#		self.framesrc.set_property("start-time-gps-ns", startns)
-	#		self.framesrc.set_property("stop-time-gps-ns", stopns)
-
-	#def set_injection_list(self, filename):
-	#	if self.simulation is None:
-	#		raise TypeError, "no injection node in pipeline"
-	#	self.simulation.set_property("xml-location", filename)
-
-	#def set_reference_psd(self, filename):
-	#	self.whiten.set_property("compensation-psd", filename)
-	#	for templatebank in self.templatebank:
-	#		templatebank.set_property("reference-psd", filename)
-
-	#def set_templatebank(self, filename):
-		#self.triggergen.set_property("bank-filename", filename)
-	#	for templatebank in self.templatebank:
-	#		templatebank.set_property("template-bank", filename)
-
-	#def set_sumsquares_threshold(self, threshold):
-	#	for gate in self.gate:
-	#		gate.set_property("threshold", threshold)
-
-
-	#def set_snr_threshold(self, threshold):
-	#	self.triggergen.set_property("snr-thresh", threshold)
-
-	#def set_output(self, filename):
-	#	self.xmlwriter.set_property("location", filename)
-
-	# Utility functions for elements and compound elements
-
 	def fakesink(self):
 		q = self.queue()
 		fake = gst.element_factory_make("fakesink")
@@ -211,12 +191,21 @@ class LLOID(object):
 		q.link(fake)
 		return q
 
-	def nxy_dump(self,start,end):
+	def filesink(self,fname):
+		filesink = gst.element_factory_make("filesink")
+		self.pipeline.add(filesink)
+		filesink.set_property("sync", False)
+		filesink.set_property("buffer-mode",2)
+		filesink.set_property("preroll-queue-len",1)
+		filesink.set_property("location",fname)
+		return filesink
+
+	def nxy_dump(self,start, end, fname="nxydump.txt"):
 		dump = gst.element_factory_make("lal_nxydump"); self.pipeline.add(dump)
 		dump.set_property("start-time", start)
 		dump.set_property("stop-time", end)
-		fake = self.fakesink()
-		dump.link(fake)
+		fsink = self.filesink(fname)
+		dump.link(fsink)
 		return dump
 		
 
@@ -404,7 +393,7 @@ class LLOID(object):
 		return self.chisq_tees
 
 
-	def control_tee(self, src, control_rate=32):
+	def control_tees(self, src, control_rate=2048):
 		adder = gst.element_factory_make("lal_adder")
                 self.pipeline.add(adder)
                 adder.set_property("sync", True)
@@ -412,10 +401,13 @@ class LLOID(object):
 			for j in range(len(src[det])):
 				qin, qout = self.resample_to_rate(control_rate)
 				src[det][j].link(qin)
-				qout.link_pads("src", adder, "sink"+str(j+ len(src[det]) * i))
-		tee = self.tee() 
-		adder.link(tee)
-		return tee
+				qout.link(adder)
+
+		self.control_tee = self.tee() 
+		queue = self.queue()
+		adder.link(queue)
+		queue.link(self.control_tee)
+		return self.control_tee
 
 	def added_snr_tees(self, reconstructed_snr_tee):
 		self.added_snr_tees = {}
@@ -511,19 +503,8 @@ class GTK_Main:
 		banks.add_bank(128, 13.0, 29.0)
 		detectors= DetectorData(874106958000000000,874107558000000000)
 		detectors.add_detector("L1", "/home/channa/scratch/frames/S5/strain-L2/LLO/L-L1_RDS_C03_L2-8741/L.cache", "LSC-STRAIN", "/home/channa/cvs/lsware/gstlal/examples/reference_psd.txt", "/home/channa/cvs/lsware/gstlal/examples/H1-TMPLTBANK_09_1.207-874000000-2048.xml")
-		#detectors.set_segment(874106958000000000, 874107558000000000)
 		self.pipeline = gst.Pipeline("lloid")
 		lloid = LLOID(self.pipeline, detectors, banks, do_injections = False)
-		#lloid.set_frame_cache("/home/channa/scratch/frames/S5/strain-L2/LLO/L-L1_RDS_C03_L2-8741/L.cache")
-		#lloid.set_channel("L1", "LSC-STRAIN")
-		#lloid.set_segment(874100000000000000, 874120000000000000)
-		#lloid.set_segment(874106958000000000, 874107558000000000)
-		#lloid.set_injection_list("/home/channa/cvs/lsware/gstlal/examples/bns_injections.xml")
-		#lloid.set_reference_psd("/home/channa/cvs/lsware/gstlal/examples/reference_psd.txt")
-		#lloid.set_templatebank("/home/channa/cvs/lsware/gstlal/examples/H1-TMPLTBANK_09_1.207-874000000-2048.xml")
-		#lloid.set_sumsquares_threshold(2.2)
-		#lloid.set_snr_threshold(0.0)
-		#lloid.set_output("output.xml")
 
 		bus = self.pipeline.get_bus()
 		bus.add_signal_watch()
-- 
GitLab