Author: [log in to unmask]
Date: Mon Mar 2 09:37:57 2015
New Revision: 2221
Log:
Added methods to get singles and pair triggers specifically, rather than returning them all as a single collection. This removes the need to repeatedly check for the object type and cast when dealing with only one type of trigger.
Modified:
java/trunk/ecal-readout-sim/src/main/java/org/hps/readout/ecal/triggerbank/SSPData.java
Modified: java/trunk/ecal-readout-sim/src/main/java/org/hps/readout/ecal/triggerbank/SSPData.java
=============================================================================
--- java/trunk/ecal-readout-sim/src/main/java/org/hps/readout/ecal/triggerbank/SSPData.java (original)
+++ java/trunk/ecal-readout-sim/src/main/java/org/hps/readout/ecal/triggerbank/SSPData.java Mon Mar 2 09:37:57 2015
@@ -37,6 +37,8 @@
// Collections for storing the decoded SSP bank data.
private final List<SSPCluster> clusterList = new ArrayList<SSPCluster>();
private final List<SSPTrigger> triggerList = new ArrayList<SSPTrigger>();
+ private final List<SSPPairTrigger> pairList = new ArrayList<SSPPairTrigger>();
+ private final List<SSPSinglesTrigger> singlesList = new ArrayList<SSPSinglesTrigger>();
// Other SSP bank information.
private int eventNumber = 0;
@@ -96,6 +98,8 @@
// Create an SSPTrigger and add it to the list.
SSPTrigger trigger = SSPTriggerFactory.makeTrigger(type, time * 4, data);
+ if(trigger instanceof SSPSinglesTrigger) { singlesList.add((SSPSinglesTrigger) trigger); }
+ else if(trigger instanceof SSPPairTrigger) { pairList.add((SSPPairTrigger) trigger); }
triggerList.add(trigger);
}
@@ -164,11 +168,30 @@
}
/**
+ * Gets the list of pair triggers reported by the SSP.
+ * @return Returns the triggers as a <code>List</code> collection
+ * of <code>SSPPairTrigger</code> objects.
+ */
+ public List<SSPPairTrigger> getPairTriggers() {
+ return pairList;
+ }
+
+ /**
+ * Gets the list of singles triggers reported by the SSP.
+ * @return Returns the triggers as a <code>List</code> collection
+ * of <code>SSPSinglesTrigger</code> objects.
+ */
+ public List<SSPSinglesTrigger> getSinglesTriggers() {
+ return singlesList;
+ }
+
+ /**
* Gets the list of triggers reported by the SSP.
* @return Returns the triggers as a <code>List</code> collection
* of <code>SSPTrigger</code> objects. These can vary in which
* subclass they are, as appropriate to their type code.
*/
+ @Deprecated
public List<SSPTrigger> getTriggers() {
return triggerList;
}
|