Print

Print


Author: [log in to unmask]
Date: Fri Sep  4 15:55:11 2015
New Revision: 3531

Log:
Add some utility methods and rename method.

Modified:
    java/trunk/record-util/src/main/java/org/hps/record/evio/EventCountProcessor.java
    java/trunk/record-util/src/main/java/org/hps/record/evio/EventTagBitMask.java
    java/trunk/record-util/src/main/java/org/hps/record/evio/EventTagConstant.java

Modified: java/trunk/record-util/src/main/java/org/hps/record/evio/EventCountProcessor.java
 =============================================================================
--- java/trunk/record-util/src/main/java/org/hps/record/evio/EventCountProcessor.java	(original)
+++ java/trunk/record-util/src/main/java/org/hps/record/evio/EventCountProcessor.java	Fri Sep  4 15:55:11 2015
@@ -94,7 +94,7 @@
 
         // Increment counts for event tags with bit masks (different types of physics events).
         for (final EventTagBitMask mask : EventTagBitMask.values()) {
-            if (mask.isEventTag(evioEvent)) {
+            if (mask.equals(evioEvent)) {
                 final int count = this.eventTypeCounts.get(mask) + 1;
                 this.eventTypeCounts.put(mask, count);
             }

Modified: java/trunk/record-util/src/main/java/org/hps/record/evio/EventTagBitMask.java
 =============================================================================
--- java/trunk/record-util/src/main/java/org/hps/record/evio/EventTagBitMask.java	(original)
+++ java/trunk/record-util/src/main/java/org/hps/record/evio/EventTagBitMask.java	Fri Sep  4 15:55:11 2015
@@ -1,4 +1,7 @@
 package org.hps.record.evio;
+
+import java.util.HashSet;
+import java.util.Set;
 
 import org.jlab.coda.jevio.EvioEvent;
 
@@ -71,8 +74,8 @@
      * @param event an <code>EvioEvent</code> with tag to check against this mask
      * @return <code>true</code> if the event's tag matches this mask
      */
-    public boolean isEventTag(final EvioEvent event) {
-        return isEventTag(event.getHeader().getTag());
+    public boolean equals(final EvioEvent event) {
+        return equals(event.getHeader().getTag());
     }
 
     /**
@@ -81,7 +84,29 @@
      * @param eventTag the event's tag from the header bank
      * @return <code>true</code> if the tag matches this mask
      */
-    public boolean isEventTag(final int eventTag) {
+    public boolean equals(final int eventTag) {
         return (eventTag & this.bitMask) == 1;
     }
+    
+    public static Set<EventTagBitMask> getEventTagBitMasks(EvioEvent evioEvent) {
+        Set<EventTagBitMask> bitMasks = new HashSet<EventTagBitMask>();
+        if (LED_COSMIC.equals(evioEvent)) {
+            bitMasks.add(LED_COSMIC);
+        } if (PAIRS0.equals(evioEvent)) {
+            bitMasks.add(PAIRS0);
+        } if (PAIRS1.equals(evioEvent)) {
+            bitMasks.add(PAIRS1);
+        } if (PHYSICS.equals(evioEvent)) {
+            bitMasks.add(PHYSICS);
+        } if (PULSER.equals(evioEvent)) {
+            bitMasks.add(PULSER);
+        } if (SINGLE0.equals(evioEvent)) {
+            bitMasks.add(SINGLE0);
+        } if (SINGLE1.equals(evioEvent)) {
+            bitMasks.add(SINGLE1);
+        } if (SYNC.equals(evioEvent)) {
+            bitMasks.add(SYNC);
+        }
+        return bitMasks;
+    }
 }

Modified: java/trunk/record-util/src/main/java/org/hps/record/evio/EventTagConstant.java
 =============================================================================
--- java/trunk/record-util/src/main/java/org/hps/record/evio/EventTagConstant.java	(original)
+++ java/trunk/record-util/src/main/java/org/hps/record/evio/EventTagConstant.java	Fri Sep  4 15:55:11 2015
@@ -66,4 +66,24 @@
     public boolean equals(final EvioEvent evioEvent) {
         return evioEvent.getHeader().getTag() == this.tag;
     }
+    
+    public static EventTagConstant getEventTag(EvioEvent evioEvent) {
+        final int eventTag = evioEvent.getHeader().getTag();
+        if (END.equals(eventTag)) {
+            return END;
+        } else if (EPICS.equals(eventTag)) {
+            return EPICS;
+        } else if (GO.equals(eventTag)) {
+            return GO;
+        } else if (PAUSE.equals(eventTag)) {
+            return PAUSE;
+        } else if (PHYSICS_OLD.equals(eventTag)) {
+            return PHYSICS_OLD;
+        } else if (PRESTART.equals(eventTag)) {
+            return PRESTART;
+        } else if (SYNC.equals(eventTag)) {
+            return SYNC;
+        }
+        return null;
+    }    
 }