Commit in lcsim on MAIN
src/org/lcsim/detector/driver/ExampleRawTrackerHitReadoutDriver.java+19-111.4 -> 1.5
src/org/lcsim/event/base/BaseRawTrackerHit.java+8-21.6 -> 1.7
test/org/lcsim/detector/driver/SimTrackerHitIdentifierTest.java+11-31.4 -> 1.5
+38-16
3 modified files
JM: Add identifier exception handling from GC changes.

lcsim/src/org/lcsim/detector/driver
ExampleRawTrackerHitReadoutDriver.java 1.4 -> 1.5
diff -u -r1.4 -r1.5
--- ExampleRawTrackerHitReadoutDriver.java	3 Jul 2007 23:56:11 -0000	1.4
+++ ExampleRawTrackerHitReadoutDriver.java	28 Aug 2007 23:48:39 -0000	1.5
@@ -26,7 +26,7 @@
  * {@link org.lcsim.event.RawTrackerHit}s from {@link SimTrackerHit} collections.
  * 
  * @author Jeremy McCormick
- * @version $Id: ExampleRawTrackerHitReadoutDriver.java,v 1.4 2007/07/03 23:56:11 jeremy Exp $
+ * @version $Id: ExampleRawTrackerHitReadoutDriver.java,v 1.5 2007/08/28 23:48:39 jeremy Exp $
  */
 public class ExampleRawTrackerHitReadoutDriver
 extends Driver
@@ -62,17 +62,25 @@
 
                                 // Create an Identifier from the SimTrackerHit's cellId.
                                 IIdentifier hitId = new Identifier(aSimHit.getCellID());          
+                                IIdentifier geomId = null;                                
+                                IDetectorElementContainer deHit = null;
+                                
+                                try {
+                                
+                                	// Extract the field values up to "side".
+                                	IExpandedIdentifier expGeomId = 
+                                		helper.unpack(hitId, 0, helper.getIdentifierDictionary().getFieldIndex("side") - 1);
+
+                                	// Repack the Identifier.
+                                	geomId = helper.pack(expGeomId);
 
-                                // Extract the field values up to "side".
-                                IExpandedIdentifier expGeomId = 
-                                    helper.unpack(hitId, 0, helper.getIdentifierDictionary().getFieldIndex("side") - 1);
-
-                                // Repack the Identifier.
-                                IIdentifier geomId = helper.pack(expGeomId);
-
-                                // Lookup the DetectorElement from the Identifier.
-                                IDetectorElementContainer deHit = 
-                                    DetectorElementStore.getInstance().find(geomId);
+                                	// Lookup the DetectorElement from the Identifier.
+                                	deHit = DetectorElementStore.getInstance().find(geomId);
+                                }
+                                catch (Exception x)
+                                {
+                                	throw new RuntimeException(x);
+                                }
 
                                 // Fatal error if DetectorElement was not found.
                                 if (deHit.size() == 0)

lcsim/src/org/lcsim/event/base
BaseRawTrackerHit.java 1.6 -> 1.7
diff -u -r1.6 -r1.7
--- BaseRawTrackerHit.java	3 Jul 2007 23:15:32 -0000	1.6
+++ BaseRawTrackerHit.java	28 Aug 2007 23:48:39 -0000	1.7
@@ -17,7 +17,7 @@
 /**
  * A basic implementation of RawTrackerHit.
  * @author Tony Johnson
- * @version $Id: BaseRawTrackerHit.java,v 1.6 2007/07/03 23:15:32 jeremy Exp $
+ * @version $Id: BaseRawTrackerHit.java,v 1.7 2007/08/28 23:48:39 jeremy Exp $
  */
 public class BaseRawTrackerHit implements RawTrackerHit
 {
@@ -84,7 +84,13 @@
     
     public IExpandedIdentifier getExpandedIdentifier()
     {
-        return getIdentifierHelper().unpack(identifier);
+    	try {
+    		return getIdentifierHelper().unpack(identifier);
+    	}
+    	catch (Exception x)
+    	{
+    		throw new RuntimeException(x);
+    	}
     }
     
     public IIdentifierHelper getIdentifierHelper()

lcsim/test/org/lcsim/detector/driver
SimTrackerHitIdentifierTest.java 1.4 -> 1.5
diff -u -r1.4 -r1.5
--- SimTrackerHitIdentifierTest.java	7 Aug 2007 17:36:38 -0000	1.4
+++ SimTrackerHitIdentifierTest.java	28 Aug 2007 23:48:39 -0000	1.5
@@ -15,6 +15,7 @@
 import org.lcsim.util.Driver;
 import org.lcsim.event.*;
 import org.lcsim.detector.identifier.*;
+import org.lcsim.detector.identifier.IIdentifierDictionary.InvalidIndexException;
 
 import org.lcsim.geometry.IDDecoder;
 
@@ -31,7 +32,7 @@
  * @see org.lcsim.detector.IDetectorElement
  * @see org.lcsim.geometry.Subdetector
  *
- * @version $Id: SimTrackerHitIdentifierTest.java,v 1.4 2007/08/07 17:36:38 jeremy Exp $
+ * @version $Id: SimTrackerHitIdentifierTest.java,v 1.5 2007/08/28 23:48:39 jeremy Exp $
  * @author  jeremym
  */
 public class SimTrackerHitIdentifierTest 
@@ -79,8 +80,15 @@
                 // Create an Identifier from the CellID.
                 Identifier id = new Identifier( hit.getCellID() ); 
 
-                // Create an ExpandedIdentifier from the CellID. 
-                IExpandedIdentifier exp = helper.unpack( id );
+                IExpandedIdentifier exp = null;
+                try {
+                	// Create an ExpandedIdentifier from the CellID.                	
+                	exp = helper.unpack( id );
+                }
+                catch (InvalidIndexException x)
+                {
+                	throw new RuntimeException(x);
+                }
 
                 // Test that IDDecoder and ExpandedIdentifier have the same number of fields.
                 assertEquals( "IDs have different number of fields.", decoder.getFieldCount(), exp.size() );
CVSspam 0.2.8