Commit in lcsim/sandbox on MAIN
SensorTest.java+83added 1.1
sensor access test code for Norman

lcsim/sandbox
SensorTest.java added at 1.1
diff -N SensorTest.java
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ SensorTest.java	13 Feb 2012 19:39:54 -0000	1.1
@@ -0,0 +1,83 @@
+package org.lcsim;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import junit.framework.TestCase;
+
+import org.lcsim.detector.IDetectorElement;
+import org.lcsim.detector.tracker.silicon.SiSensor;
+import org.lcsim.geometry.Detector;
+import org.lcsim.geometry.subdetector.PolyhedraBarrelCalorimeter2;
+import org.lcsim.geometry.subdetector.PolyhedraEndcapCalorimeter2;
+import org.lcsim.geometry.subdetector.SiTrackerBarrel;
+import org.lcsim.geometry.subdetector.SiTrackerEndcap2;
+import org.lcsim.geometry.util.DetectorLocator;
+
+/**
+ * Find all the sensors for some Subdetectors and print the first N global to local transforms from each list.
+ * @author Jeremy McCormick
+ */
+public class SensorTest extends TestCase 
+{
+	String trackerBarrelName = "SiTrackerBarrel";
+	String trackerEndcapName = "SiTrackerEndcap";
+	String hadBarrelName = "HcalBarrel";
+	String hadEndcapName = "HcalEndcap";
+	
+	final int NPRINT = 10;
+	
+	public void testSensorAccess()
+	{
+		// Get the detector.
+		Detector detector = DetectorLocator.findDetector("sidloi3");
+		
+		// SVT Barrel.
+		List<SiSensor> trackerBarrelSensors = ((SiTrackerBarrel)detector.getSubdetector(trackerBarrelName)).getDetectorElement().findDescendants(SiSensor.class);
+		System.out.println("Got " + trackerBarrelSensors.size() + " sensors in " + trackerBarrelName);
+		System.out.println("Global to local transforms...");
+		for (int i=0; i<NPRINT; i++) 
+		{
+			System.out.println(trackerBarrelSensors.get(0).getName() + " - " + trackerBarrelSensors.get(0).getGeometry().getGlobalToLocal());
+		}
+		
+		// SVT Endcap.
+		List<SiSensor> trackerEndcapSensors = ((SiTrackerEndcap2)detector.getSubdetector(trackerEndcapName)).getDetectorElement().findDescendants(SiSensor.class); 
+		System.out.println("Got " + trackerEndcapSensors.size() + " sensors in " + trackerEndcapName);
+		System.out.println("Global to local transforms...");
+		for (int i=0; i<NPRINT; i++) 
+		{
+			System.out.println(trackerEndcapSensors.get(0).getName() + " - " + trackerEndcapSensors.get(0).getGeometry().getGlobalToLocal());
+		}
+		
+		// HAD Barrel.
+		List<IDetectorElement> hadBarrelSensors = new ArrayList<IDetectorElement>();
+		for (IDetectorElement stave : ((PolyhedraBarrelCalorimeter2)detector.getSubdetector(hadBarrelName)).getDetectorElement().getChildren())
+		{
+			for (IDetectorElement sensor : stave.getChildren())
+			{
+				hadBarrelSensors.add(sensor);
+			}
+		}
+		System.out.println("Got " + hadBarrelSensors.size() + " sensors in " + hadBarrelName);
+		for (int i=0; i<NPRINT; i++) 
+		{
+			System.out.println(hadBarrelSensors.get(0).getName() + " - " + hadBarrelSensors.get(0).getGeometry().getGlobalToLocal());
+		}
+		
+		// HAD Endcap.
+		List<IDetectorElement> hadEndcapSensors = new ArrayList<IDetectorElement>();
+		for (IDetectorElement endcap : ((PolyhedraEndcapCalorimeter2)detector.getSubdetector(hadEndcapName)).getDetectorElement().getChildren())
+		{
+			for (IDetectorElement layer : endcap.getChildren())
+			{
+				hadEndcapSensors.add(layer);
+			}
+		}
+		System.out.println("Got " + hadEndcapSensors.size() + " sensors in " + hadEndcapName);
+		for (int i=0; i<NPRINT; i++) 
+		{
+			System.out.println(hadEndcapSensors.get(0).getName() + " - " + hadEndcapSensors.get(0).getGeometry().getGlobalToLocal());
+		}
+	}
+}
\ No newline at end of file
CVSspam 0.2.12


Use REPLY-ALL to reply to list

To unsubscribe from the LCD-CVS list, click the following link:
https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=LCD-CVS&A=1