Commit in GeomConverter/src/org/lcsim/detector/converter/compact on MAIN
SiTrackerBarrelConverter.java+71-131.4 -> 1.5
JM:  Separate DetectorElements for layer, module, and sensor.  (Still needs real DetectorElements from Tim Nelson.)

GeomConverter/src/org/lcsim/detector/converter/compact
SiTrackerBarrelConverter.java 1.4 -> 1.5
diff -u -r1.4 -r1.5
--- SiTrackerBarrelConverter.java	7 Apr 2007 21:40:12 -0000	1.4
+++ SiTrackerBarrelConverter.java	9 Apr 2007 18:58:01 -0000	1.5
@@ -267,7 +267,8 @@
             
             // Layer DE.
             String layerPath = "/tracking_region/" + layer_name;            
-            IDetectorElement layerDE = new DummyDE(layer_name, subdet, layerPath);            
+            IDetectorElement layerDE = 
+                new SiTrackerBarrelLayer(layer_name, subdet, layerPath, nlayer);            
 
             // Get the rphi_layout element.
             Element rphi_layout = layer_element.getChild("rphi_layout");
@@ -336,7 +337,7 @@
             //String module_lkp_name = layer.getAttributeValue("module");
 
             // Loop over the number of modules in phi.
-            for (int ii = 0; ii < nphi; ii++)
+            for (int phicount = 0; phicount < nphi; phicount++)
             {
                 // Delta x of module position.
                 double dx = z_dr * cos(phic + phi_tilt);
@@ -351,10 +352,10 @@
                 double y = rc * sin(phic);
 
                 // Loop over the number of modules in z.
-                for (int j = 0; j < nz; j++)
+                for (int zcount = 0; zcount < nz; zcount++)
                 {
                     // Create a unique name for the module in this logical volume, layer, phi, and z.
-                    String module_place_name = detector_name + "_layer" + nlayer + "_phi" + ii + "_z" + j;
+                    String module_place_name = detector_name + "_layer" + nlayer + "_phi" + phicount + "_z" + zcount;
 
                     double z = module_z;
 
@@ -411,7 +412,12 @@
                     String modulePath = 
                         "/tracking_region/" + layer_name + "/" + module_place_name;
                     
-                    new DummyDE(module_place_name, layerDE, modulePath);
+                    new SiTrackerBarrelModule(
+                            module_place_name, 
+                            layerDE, 
+                            modulePath,
+                            phicount,
+                            zcount);
                                                             
                     ++sensorNumber;
                                                             
@@ -471,7 +477,7 @@
                         //System.out.println("path : " + modulePath.toString() + "/" + pv.getName());
                         String sensorPath = modulePath.toString() + "/" + pv.getName();
                         String sensorName = subdet.getName() + "_sensor" + sensorID;
-                        new SensorDE(sensorName, module, sensorPath);
+                        new SiTrackerBarrelSensor(sensorName, module, sensorPath);
                         ++sensorID;
                     }
                 }
@@ -479,12 +485,16 @@
         }
     }
     
-    // FIXME: Replace with a real sensor DetectorElement.
-    public class SensorDE extends DetectorElement
+    /**
+     * Dummy DetectorElement for an SiTrackerBarrel sensor.
+     * 
+     * @todo Replace with a real sensor DetectorElement.
+     */ 
+    public class SiTrackerBarrelSensor extends DetectorElement
     {
         int sensorID;
         
-        SensorDE(String name,
+        SiTrackerBarrelSensor(String name,
                 IDetectorElement parent,
                 String path) 
         {
@@ -498,15 +508,63 @@
         }
     }
     
-    // FIXME: Replace with a real module DE.
-    public class DummyDE extends DetectorElement
+    /**
+     * 
+     * Dummy DetectorElement for an SiTrackerBarrel layer.
+     * 
+     * @todo Replace with a real layer DetectorElement.
+     */ 
+    public class SiTrackerBarrelLayer 
+    extends DetectorElement
     {
-        DummyDE(String name,
+        private int layerNumber;       
+        SiTrackerBarrelLayer(
+                String name,
                 IDetectorElement parent,
-                String path
+                String path,
+                int layerNumber)
+        {
+            super(name,parent,path);
+            this.layerNumber = layerNumber;
+        }   
+        
+        public int getLayerNumber()
+        {
+            return layerNumber;
+        }
+    }
+    
+    /**
+     * 
+     * Dummy DetectorElement for an SiTrackerBarrel module.
+     * 
+     * @todo Replace with a real layer DetectorElement.
+     */ 
+    public class SiTrackerBarrelModule extends DetectorElement
+    {
+        private int phiNumber;
+        private int zNumber;
+        
+        SiTrackerBarrelModule(String name,
+                IDetectorElement parent,
+                String path,
+                int phiNumber,
+                int zNumber) 
         {
             super(name, parent, path);
+            this.phiNumber = phiNumber;
+            this.zNumber = zNumber;
             //System.out.println(name + " : " + path);
         }
+        
+        public int getPhiNumber()
+        {
+            return phiNumber;
+        }
+        
+        public int getZNumber()
+        {
+            return zNumber;
+        }
     }
 }
\ No newline at end of file
CVSspam 0.2.8