1 package org.lcsim.recon.tracking.vsegment.hit; 2 3 import java.util.List; 4 5 import org.lcsim.event.MCParticle; 6 7 import org.lcsim.recon.tracking.vsegment.geom.Sensor; 8 9 /** 10 * Representation of signal from a single tracker channel (pixel or strip). 11 * 12 * @author D.Onoprienko 13 * @version $Id: DigiTrackerHit.java,v 1.1 2008/12/06 21:53:44 onoprien Exp $ 14 */ 15 public interface DigiTrackerHit extends Comparable<DigiTrackerHit> { 16 17 /** 18 * Returns signal in the channel. 19 * The signal value is the digitization algorithm output if running on Monte Carlo, 20 * calibrated and corrected signal if runnung on data. 21 */ 22 public double getSignal(); 23 24 /** Returns time associated with the hit. */ 25 public double getTime(); 26 27 /** Returns {@link Sensor} object this hit belongs to. */ 28 public Sensor getSensor(); 29 30 /** Returns channel ID on the sensor. */ 31 public int getChannel(); 32 33 /** Returns <tt>true</tt> if the hit is a superposition of more than one elemental hit. */ 34 public boolean isComposite(); 35 36 /** 37 * Returns a list of underlying elemental hits. 38 * If the hit is not composite, returns a list with a single element - this hit. 39 */ 40 public List<DigiTrackerHit> getElementalHits(); 41 42 /** 43 * Returns <tt>MCParticle</tt> that produced the hit. 44 * If the hit is composite, or does not have <tt>MCParticle</tt> associated with 45 * it (noise, beam test data, etc.), returns <tt>null</tt>. 46 */ 47 public MCParticle getMCParticle(); 48 49 }