View Javadoc

1   /*
2    * To change this template, choose Tools | Templates
3    * and open the template in the editor.
4    */
5   
6   package org.lcsim.recon.tracking.seedtracker.strategybuilder;
7   
8   import org.lcsim.event.EventHeader;
9   import org.lcsim.event.MCParticle;
10  
11  /**
12   * A particle filter is applied to MCParticles in the training step. LayerSets 
13   * are not generated by MCParticles which do not pass the filters. Note that 
14   * a minimum number of layers hit is necessary in addition to passing the filter. 
15   * 
16   * The default behavior for StrategyBuilder is to use a StrategyBasedFilter, which
17   * gets cutoffs for DCA, z0 and pt based on prototype strategy. 
18   * 
19   * 
20   * @author cozzy
21   */
22  public interface IParticleFilter {
23      
24      /**
25       * Returns true if the MCParticle passes the filter, false otherwise. Called
26       * for every MCParticle by StrategyBuilder. 
27       * 
28       * @param p The test MCParticle
29       * @return
30       */
31      public boolean passes(MCParticle p); 
32      
33      /**
34       * This method is called for each event by StrategyBuilder.  
35       * @param event
36       */
37      public void setEvent(EventHeader event);  
38  }