Author: [log in to unmask] Date: Tue Jan 13 11:40:55 2015 New Revision: 1920 Log: Provide a few utility methods for getting geometry objects from hits. Modified: java/trunk/ecal-recon/src/main/java/org/hps/recon/ecal/CalorimeterHitUtilities.java Modified: java/trunk/ecal-recon/src/main/java/org/hps/recon/ecal/CalorimeterHitUtilities.java ============================================================================= --- java/trunk/ecal-recon/src/main/java/org/hps/recon/ecal/CalorimeterHitUtilities.java (original) +++ java/trunk/ecal-recon/src/main/java/org/hps/recon/ecal/CalorimeterHitUtilities.java Tue Jan 13 11:40:55 2015 @@ -1,8 +1,10 @@ package org.hps.recon.ecal; +import org.lcsim.detector.IGeometryInfo; +import org.lcsim.detector.converter.compact.EcalCrystal; import org.lcsim.event.CalorimeterHit; +import org.lcsim.event.EventHeader.LCMetaData; import org.lcsim.event.base.BaseCalorimeterHit; -import org.lcsim.event.EventHeader.LCMetaData; /** * This is a simple set of utility methods for creating CalorimeterHit objects. @@ -31,4 +33,12 @@ public static final CalorimeterHit create(double energy, double time, long id, int type, LCMetaData metaData) { return new BaseCalorimeterHit(energy, energy, 0, time, id, null, type, metaData); } + + public static EcalCrystal findCrystal(CalorimeterHit hit) { + return (EcalCrystal)hit.getMetaData().getIDDecoder().getSubdetector().getDetectorElement().findDetectorElement(hit.getIdentifier()); + } + + public static IGeometryInfo findGeometryInfo(CalorimeterHit hit) { + return findCrystal(hit).getGeometry(); + } }