Print

Print


Commit in lcsim/sandbox/Partridge on MAIN
DefaultStrategy.java+44-241.1 -> 1.2


lcsim/sandbox/Partridge
DefaultStrategy.java 1.1 -> 1.2
diff -u -r1.1 -r1.2
--- DefaultStrategy.java	6 Aug 2007 23:59:57 -0000	1.1
+++ DefaultStrategy.java	21 Nov 2007 16:24:50 -0000	1.2
@@ -10,38 +10,58 @@
 import java.util.List;
 import java.util.ArrayList;
 
+import org.lcsim.contrib.seedtracker.SeedLayer.SeedType;
+import org.lcsim.geometry.subdetector.BarrelEndcapFlag;
+
 /**
- *
+ * Define the default strategy to be used by the SeedTracker tracking algorithm.  The default strategy may be
+ * over-ridden by calling the method SeedTracker.putStrategyList.
  * @author Richard Partridge
  * @version 1.0
  */
-public class DefaultStrategy
-{
-    private List<SeedStrategy> StrategyList;
+public class DefaultStrategy {
+    private List<SeedStrategy> _strategylist;
     
     /** Creates a new instance of DefaultStrategy */
-    public DefaultStrategy()
-    {
-        StrategyList = new ArrayList();
+    public DefaultStrategy() {
+        _strategylist = new ArrayList();
+        // Barrel only strategies
+        List<SeedLayer> tb012layers = new ArrayList();
+        tb012layers.add(new SeedLayer("TrackerBarrel", 0, BarrelEndcapFlag.BARREL, SeedType.Seed));
+        tb012layers.add(new SeedLayer("TrackerBarrel", 1, BarrelEndcapFlag.BARREL, SeedType.Seed));
+        tb012layers.add(new SeedLayer("TrackerBarrel", 2, BarrelEndcapFlag.BARREL, SeedType.Seed));
+        _strategylist.add(new SeedStrategy("TB012",tb012layers));
         
-        List<SeedLayer> TD012Layers = new ArrayList();
-        TD012Layers.add(new SeedLayer("TrackerEndcap", 0, SeedLayer.SeedType.SeedInner));
-        TD012Layers.add(new SeedLayer("TrackerEndcap", 1, SeedLayer.SeedType.SeedMiddle));
-        TD012Layers.add(new SeedLayer("TrackerEndcap", 2, SeedLayer.SeedType.SeedOuter));
-//        StrategyList.add(new SeedStrategy("TD012",TD012Layers));
-        
-        List<SeedLayer> VB012Layers = new ArrayList();
-        VB012Layers.add(new SeedLayer("VertexBarrel", 2, SeedLayer.SeedType.SeedInner));
-        VB012Layers.add(new SeedLayer("VertexBarrel", 3, SeedLayer.SeedType.SeedMiddle));
-        VB012Layers.add(new SeedLayer("VertexBarrel", 4, SeedLayer.SeedType.SeedOuter));
-        VB012Layers.add(new SeedLayer("TrackerBarrel", 0, SeedLayer.SeedType.Confirm3D));
-//        VB012Layers.add(new SeedLayer("VertexBarrel", 0, SeedLayer.SeedType.Confirm3D));
-//        VB012Layers.add(new SeedLayer("VertexBarrel", 1, SeedLayer.SeedType.Confirm3D));
-        StrategyList.add(new SeedStrategy("VB012",VB012Layers));
+        List<BarrelEndcapFlag> belist = new ArrayList();
+        belist.add(BarrelEndcapFlag.ENDCAP_NORTH);
+        belist.add(BarrelEndcapFlag.ENDCAP_SOUTH);
         
+        for (BarrelEndcapFlag beflag : belist) {
+            List<SeedLayer> td012layers = new ArrayList();
+            td012layers.add(new SeedLayer("TrackerEndcap", 0, beflag, SeedType.Seed));
+            td012layers.add(new SeedLayer("TrackerEndcap", 2, beflag, SeedType.Seed));
+            td012layers.add(new SeedLayer("TrackerEndcap", 4, beflag, SeedType.Seed));
+            _strategylist.add(new SeedStrategy("TD012"+beflag.toString(),td012layers));
+            
+            List<SeedLayer> tca = new ArrayList();
+            tca.add(new SeedLayer("TrackerBarrel", 0, BarrelEndcapFlag.BARREL, SeedType.Seed));
+            tca.add(new SeedLayer("TrackerBarrel", 1, BarrelEndcapFlag.BARREL, SeedType.Seed));
+            tca.add(new SeedLayer("TrackerEndcap", 4, beflag, SeedType.Seed));
+            _strategylist.add(new SeedStrategy("TCA"+beflag.toString(),tca));
+            
+            List<SeedLayer> tcb = new ArrayList();
+            tcb.add(new SeedLayer("TrackerBarrel", 0, BarrelEndcapFlag.BARREL, SeedType.Seed));
+            tcb.add(new SeedLayer("TrackerEndcap", 2, beflag, SeedType.Seed));
+            tcb.add(new SeedLayer("TrackerEndcap", 4, beflag, SeedType.Seed));
+            _strategylist.add(new SeedStrategy("TCB"+beflag.toString(),tcb));
+        }        
     }
-    public List<SeedStrategy> getStrategyList()
-    {
-        return StrategyList;
+    
+    /**
+     * Returns the default list of track-finding strategies
+     * @return List of strategies to be used by SeedTracker
+     */
+    public List<SeedStrategy> getStrategyList() {
+        return _strategylist;
     }
 }
CVSspam 0.2.8