GeomConverter/src/org/lcsim/geometry/compact
diff -u -r1.4 -r1.5
--- Readout.java 20 Jul 2005 19:11:58 -0000 1.4
+++ Readout.java 25 Jul 2005 19:59:28 -0000 1.5
@@ -1,12 +1,13 @@
package org.lcsim.geometry.compact;
+
import org.lcsim.geometry.subdetector.TrackerIDDecoder;
import org.lcsim.geometry.util.IDDescriptor;
import org.lcsim.geometry.util.IDDescriptor.IDException;
+import org.lcsim.geometry.segmentation.SegmentationBase;
+import org.lcsim.geometry.util.IDDecoderBase;
import org.jdom.Element;
import org.jdom.JDOMException;
-import org.lcsim.geometry.segmentation.SegmentationBase;
-import org.lcsim.geometry.util.IDDecoderBase;
/**
*
@@ -22,14 +23,19 @@
public Readout(Element node) throws JDOMException
{
name = node.getAttributeValue("name");
-
+
setupIDDescriptor(node);
- setupIDDecoder(node);
+
+ /** No segmentation tag means that this Readout is for a tracker. */
+ if ( node.getChild("segmentation") == null )
+ {
+ setupTrackerIDDecoder(node);
+ }
}
+ /** Create a new IDDescriptor by parsing the CDATA from the <id> tag. */
private void setupIDDescriptor(Element node) throws JDOMException
{
- /* setup IDDescriptor */
try
{
desc = new IDDescriptor(node.getChild("id").getTextTrim());
@@ -40,13 +46,9 @@
}
}
- private void setupIDDecoder(Element node)
+ private void setupTrackerIDDecoder(Element node)
{
- /* default to tracker if no segmentation tag */
- if ( node.getChildren("segmentation") == null )
- {
- setIDDecoder( new TrackerIDDecoder() );
- }
+ setIDDecoder( new TrackerIDDecoder() );
}
public Segmentation getSegmentation()