Author: [log in to unmask]
Date: Wed Dec 17 03:37:53 2014
New Revision: 3463
Log:
Move unnecessary mixin API to Hit interface.
Removed:
projects/lcsim/trunk/event-model/src/main/java/org/lcsim/event/HasMetaData.java
projects/lcsim/trunk/event-model/src/main/java/org/lcsim/event/HasPosition.java
Modified:
projects/lcsim/trunk/event-model/src/main/java/org/lcsim/event/Hit.java
Modified: projects/lcsim/trunk/event-model/src/main/java/org/lcsim/event/Hit.java
=============================================================================
--- projects/lcsim/trunk/event-model/src/main/java/org/lcsim/event/Hit.java (original)
+++ projects/lcsim/trunk/event-model/src/main/java/org/lcsim/event/Hit.java Wed Dec 17 03:37:53 2014
@@ -3,19 +3,82 @@
import org.lcsim.detector.DetectorIdentifierHelper;
import org.lcsim.detector.HasDetectorElement;
import org.lcsim.detector.identifier.Identifiable;
+import org.lcsim.event.EventHeader.LCMetaData;
import org.lcsim.geometry.subdetector.BarrelEndcapFlag;
+import org.lcsim.geometry.IDDecoder;
+import org.lcsim.geometry.Subdetector;
+import hep.physics.vec.Hep3Vector;
-public interface Hit extends HasMetaData, HasDetectorElement, HasPosition, Identifiable {
+/**
+ * This is a common API for hit objects in events such
+ * as CalorimeterHit, etc.
+ * @author Jeremy McCormick <[log in to unmask]>
+ */
+public interface Hit extends HasDetectorElement, Identifiable {
+
+ /**
+ * Get the position vector of the hit.
+ * @return The position of the hit as a vector.
+ */
+ Hep3Vector getPositionVec();
+
+ /**
+ * Get the position of the hit as a double array of length 3.
+ * @return The position of the hit.
+ */
+ double[] getPosition();
+ /**
+ * Convenience method to get the Subdetector's IdentifierHelper.
+ * @return The subdetector identifier helper.
+ */
DetectorIdentifierHelper getDetectorIdentifierHelper();
+
+ /**
+ * Get the collection meta data reference for this object.
+ * @return The collection meta data.
+ */
+ LCMetaData getMetaData();
+
+ /**
+ * Set the collection meta data of this object.
+ */
+ void setMetaData(LCMetaData meta);
+
+ /**
+ * Get the subdetector of this hit.
+ * @return The subdetector of the hit.
+ */
+ Subdetector getSubdetector();
+
+ /**
+ * Get the IDDecoder for the hit.
+ * @return The IDDecoder for the hit.
+ */
+ IDDecoder getIDDecoder();
+
+ /**
+ * Get the subdetector's system ID.
+ * @return The subdetector's system ID.
+ */
+ int getSystemId();
- // FIXME: I don't think none of this below belongs here!
-
- int getSystemId();
+ /**
+ * Get the barrel flag (collider-detector specific).
+ * @return The barrel flag.
+ */
+ BarrelEndcapFlag getBarrelEndcapFlag();
- BarrelEndcapFlag getBarrelEndcapFlag();
+ /**
+ * Get the layer number of the hit.
+ * @return The layer number.
+ */
+ int getLayerNumber();
- int getLayerNumber();
-
- int getIdentifierFieldValue(String field);
+ /**
+ * Get a field value using the helper.
+ * @param field The name of the field.
+ * @return A field value.
+ */
+ int getIdentifierFieldValue(String field);
}
########################################################################
Use REPLY-ALL to reply to list
To unsubscribe from the LCDET-SVN list, click the following link:
https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=LCDET-SVN&A=1
|