GeomConverter/src/org/lcsim/detector/tracker/silicon
diff -u -r1.12 -r1.13
--- SiSensor.java 7 Aug 2007 18:11:40 -0000 1.12
+++ SiSensor.java 28 Aug 2007 22:08:22 -0000 1.13
@@ -9,10 +9,10 @@
* Open. You can then make changes to the template in the Source Editor.
*/
+import hep.physics.matrix.BasicMatrix;
import hep.physics.vec.BasicHep3Vector;
import hep.physics.vec.Hep3Vector;
import hep.physics.vec.VecOp;
-import hep.physics.matrix.BasicMatrix;
import java.util.EnumMap;
import java.util.List;
@@ -20,12 +20,13 @@
import org.lcsim.detector.DetectorElement;
import org.lcsim.detector.IDetectorElement;
-import org.lcsim.detector.Rotation3D;
import org.lcsim.detector.converter.compact.DeDetector;
import org.lcsim.detector.converter.compact.DeSubdetector;
import org.lcsim.detector.identifier.IExpandedIdentifier;
import org.lcsim.detector.identifier.IIdentifier;
import org.lcsim.detector.identifier.IIdentifierHelper;
+import org.lcsim.detector.identifier.IIdentifierDictionary.FieldNotFoundException;
+import org.lcsim.detector.identifier.IIdentifierDictionary.InvalidIndexException;
import org.lcsim.detector.solids.Box;
/**
@@ -320,11 +321,18 @@
*/
public IIdentifier makeStripId( int stripNumber, int sideNumber )
{
- IIdentifierHelper helper = getIdentifierHelper();
- IExpandedIdentifier id = helper.unpack( getIdentifier(), 0, helper.getIdentifierDictionary().getFieldIndex("side") - 1);
- id.addValue(sideNumber);
- id.addValue(stripNumber);
- return helper.pack( id );
+ try {
+ IIdentifierHelper helper = getIdentifierHelper();
+ IExpandedIdentifier id = null;
+ helper.unpack( getIdentifier(), 0, helper.getIdentifierDictionary().getFieldIndex("side") - 1);
+ id.addValue(sideNumber);
+ id.addValue(stripNumber);
+ return helper.pack( id );
+ }
+ catch (Exception x)
+ {
+ throw new RuntimeException(x);
+ }
}
}