Author: omoreno Date: Mon Oct 27 11:28:48 2014 New Revision: 1311 Log: Abstract class providing some of the basic functionality used to access SVT DAQ map variables. Added: java/branches/hps_java_trunk_HPSJAVA-255/conditions/src/main/java/org/hps/conditions/svt/AbstractSvtDaqMapping.java (with props) Added: java/branches/hps_java_trunk_HPSJAVA-255/conditions/src/main/java/org/hps/conditions/svt/AbstractSvtDaqMapping.java ============================================================================= --- java/branches/hps_java_trunk_HPSJAVA-255/conditions/src/main/java/org/hps/conditions/svt/AbstractSvtDaqMapping.java (added) +++ java/branches/hps_java_trunk_HPSJAVA-255/conditions/src/main/java/org/hps/conditions/svt/AbstractSvtDaqMapping.java Mon Oct 27 11:28:48 2014 @@ -0,0 +1,66 @@ +package org.hps.conditions.svt; + +import org.lcsim.detector.tracker.silicon.HpsSiSensor; + +import org.hps.conditions.AbstractConditionsObject; +import org.hps.conditions.ConditionsObjectCollection; +import org.hps.util.Pair; + + +/** + * This abstract class provides some of the basic functionality used to + * access SVT DAQ map variables. + * + * @author Omar Moreno <[log in to unmask]> + */ +public abstract class AbstractSvtDaqMapping extends AbstractConditionsObject { + + public static abstract class AbstractSvtDaqMappingCollection<T extends AbstractSvtDaqMapping> + extends ConditionsObjectCollection<T> { + + /** + * Flag values for top or bottom half. + */ + public static final String TOP_HALF = "T"; + public static final String BOTTOM_HALF = "B"; + + + /** + * Flag values for axial or stereo sensors + */ + public static final String AXIAL = "A"; + public static final String STEREO = "S"; + + /** + * Get a DAQ pair for the given {@link HpsSiSensor} + * + * @param sensor A sensor of type {@link HpsSiSensor} + * @return The DAQ pair associated with the sensor + */ + public abstract Pair<Integer, Integer> getDaqPair(HpsSiSensor sensor); + + + /** + * Get the orientation of a sensor. + * + * @param daqPair for a given sensor + * @return If a daqPair is found, return an "A" if the sensor + * orientation is Axial, an "S" if the orientation is Stereo or + * null if the daqPair doesn't exist. + */ + public abstract String getOrientation(Pair<Integer, Integer> daqPair); + + } + + public String getSvtHalf() { + return getFieldValue("svt_half"); + } + + public int getLayerNumber() { + return getFieldValue("layer"); + } + + public String getOrientation() { + return getFieldValue("orientation"); + } +}