Author: [log in to unmask]
Date: Tue Mar 24 09:39:54 2015
New Revision: 2521
Log:
Add method for checking if an event has the EPICS tag.
Modified:
java/trunk/record-util/src/main/java/org/hps/record/evio/EvioEventConstants.java
java/trunk/record-util/src/main/java/org/hps/record/evio/EvioEventUtilities.java
Modified: java/trunk/record-util/src/main/java/org/hps/record/evio/EvioEventConstants.java
=============================================================================
--- java/trunk/record-util/src/main/java/org/hps/record/evio/EvioEventConstants.java (original)
+++ java/trunk/record-util/src/main/java/org/hps/record/evio/EvioEventConstants.java Tue Mar 24 09:39:54 2015
@@ -2,19 +2,31 @@
public class EvioEventConstants {
+ // This is the old tag for physics events.
public static final int PHYSICS_EVENT_TAG = 1;
+
+ // CODA control event tags.
public static final int SYNC_EVENT_TAG = 16;
public static final int PRESTART_EVENT_TAG = 17;
public static final int GO_EVENT_TAG = 18;
public static final int PAUSE_EVENT_TAG = 19;
public static final int END_EVENT_TAG = 20;
+ // Special tag for events with EPICS scalars.
+ public static final int EPICS_EVENT_TAG = 31;
+
+ // Event tags greater than or equal to this will be physics events.
+ public static final int PHYSICS_START_TAG = 32;
+
public static final int EVENTID_BANK_TAG = 0xC000;
-
+
+ // Bank tag for header bank with run and event numbers in physics events.
public static final int HEAD_BANK_TAG = 0xe10F;
- public static final int EPICS_EVENT_TAG = 31;
public static final int EPICS_BANK_TAG = 57620;
public static final int EPICS_BANK_TAG_2s = -1;
public static final int EPICS_BANK_TAG_20s = -1;
+ //public static final int EPICS_BANK_TAG_2s = -1;
+ //public static final int EPICS_BANK_TAG_20s = -1;
+
}
Modified: java/trunk/record-util/src/main/java/org/hps/record/evio/EvioEventUtilities.java
=============================================================================
--- java/trunk/record-util/src/main/java/org/hps/record/evio/EvioEventUtilities.java (original)
+++ java/trunk/record-util/src/main/java/org/hps/record/evio/EvioEventUtilities.java Tue Mar 24 09:39:54 2015
@@ -1,10 +1,6 @@
package org.hps.record.evio;
-import static org.hps.record.evio.EvioEventConstants.END_EVENT_TAG;
-import static org.hps.record.evio.EvioEventConstants.GO_EVENT_TAG;
-import static org.hps.record.evio.EvioEventConstants.PAUSE_EVENT_TAG;
-import static org.hps.record.evio.EvioEventConstants.PRESTART_EVENT_TAG;
-import static org.hps.record.evio.EvioEventConstants.SYNC_EVENT_TAG;
+import static org.hps.record.evio.EvioEventConstants.*;
import org.jlab.coda.jevio.BaseStructure;
import org.jlab.coda.jevio.EvioEvent;
@@ -20,6 +16,11 @@
private EvioEventUtilities() {
}
+ /**
+ * Get the event tag from the header bank.
+ * @param event The input EvioEvent.
+ * @return The event tag from the header bank.
+ */
public static int getEventTag(EvioEvent event) {
return event.getHeader().getTag();
}
@@ -72,7 +73,7 @@
* @return True if this event is a physics event.
*/
public static boolean isPhysicsEvent(EvioEvent event) {
- return (event.getHeader().getTag() >= SYNC_EVENT_TAG+16 ||
+ return (event.getHeader().getTag() >= PHYSICS_START_TAG ||
event.getHeader().getTag() < SYNC_EVENT_TAG);
// return event.getHeader().getTag() == PHYSICS_EVENT_TAG;
}
@@ -88,6 +89,16 @@
}
/**
+ * Check if this event is an EPICS event containing scalar data.
+ *
+ * @param event The EvioEvent.
+ * @return True if this event is an EPICS event.
+ */
+ public static boolean isEpicsEvent(EvioEvent event) {
+ return event.getHeader().getTag() == EPICS_EVENT_TAG;
+ }
+
+ /**
* True if <code>event</code> is an EVIO control event.
* @return True if event is a control event.
*/
@@ -96,7 +107,8 @@
isGoEvent(event) ||
isPauseEvent(event) ||
isEndEvent(event) ||
- isSyncEvent(event);
+ isSyncEvent(event) ||
+ isEpicsEvent(event);
}
/**
|