Commit in lcsim/src/org/lcsim/event/util on MAIN
JetDriver.java+22-31.3 -> 1.4
Add optional flag for continuing on NumJetsNotFoundException

lcsim/src/org/lcsim/event/util
JetDriver.java 1.3 -> 1.4
diff -u -r1.3 -r1.4
--- JetDriver.java	18 Sep 2007 03:46:26 -0000	1.3
+++ JetDriver.java	30 May 2011 18:57:39 -0000	1.4
@@ -1,5 +1,6 @@
 package org.lcsim.event.util;
 
+import hep.physics.jet.FixNumberOfJetsFinder.NumJetsNotFoundException;
 import hep.physics.jet.JadeEJetFinder;
 import hep.physics.jet.JetFinder;
 import hep.physics.vec.BasicHep3Vector;
@@ -20,7 +21,7 @@
  * A simple driver which can be used to find jets from ReconstructedParticles.
  * The resuslting jets are stored in a new collection of ReconstructedParticles.
  * @author tonyj
- * @version $Id: JetDriver.java,v 1.3 2007/09/18 03:46:26 tonyj Exp $
+ * @version $Id: JetDriver.java,v 1.4 2011/05/30 18:57:39 cassell Exp $
  */
 public class JetDriver extends Driver
 {
@@ -29,6 +30,7 @@
    private String inputCollectionName;
    private String outputCollectionName = defaultOutputCollectionName;
    private JetFinder finder = defaultJetFinder();
+   private boolean continueOnError = false;
    
    /** Creates a new instance of JetFinder with the default properties */
    public JetDriver()
@@ -76,6 +78,16 @@
    {
       this.finder = finder == null ? defaultJetFinder() : finder;
    }
+
+   public boolean isContinueOnError()
+   {
+       return continueOnError;
+   }
+
+   public void setContinueOnError(boolean continueOnError)
+   {
+       this.continueOnError = continueOnError;
+   }
    
    protected JetFinder defaultJetFinder()
    {
@@ -107,7 +119,15 @@
       }
       
       // Pass the data to the Jet finder
-      finder.setEvent(map.keySet());
+      int nJets = 0;
+      try {
+        finder.setEvent(map.keySet());
+        nJets = finder.njets();
+      } catch (NumJetsNotFoundException x) {
+          if (continueOnError) return;
+          else throw x;
+      }
+
       
       if (hist)
       {
@@ -120,7 +140,6 @@
       // the original particles
       
       List<ReconstructedParticle> output = new ArrayList<ReconstructedParticle>();
-      int nJets = finder.njets();
       for (int i=0; i<nJets; i++)
       {
          Jet jet = new Jet(finder.jet(i));
CVSspam 0.2.8