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; }