Print

Print


Author: [log in to unmask]
Date: Fri May 29 14:21:13 2015
New Revision: 3064

Log:
Cleanup of EPICS and scaler record utilities.

Added:
    java/trunk/evio/src/test/java/org/hps/evio/ScalersTest.java
      - copied, changed from r3058, java/trunk/evio/src/test/java/org/hps/evio/ScalarsTest.java
    java/trunk/monitoring-drivers/src/main/java/org/hps/monitoring/drivers/scalers/
      - copied from r3049, java/trunk/monitoring-drivers/src/main/java/org/hps/monitoring/drivers/scalars/
    java/trunk/record-util/src/main/java/org/hps/record/scalers/
      - copied from r3049, java/trunk/record-util/src/main/java/org/hps/record/scalars/
    java/trunk/record-util/src/main/java/org/hps/record/scalers/ScalerData.java
      - copied, changed from r3049, java/trunk/record-util/src/main/java/org/hps/record/scalars/ScalarData.java
    java/trunk/record-util/src/main/java/org/hps/record/scalers/ScalerUtilities.java
      - copied, changed from r3049, java/trunk/record-util/src/main/java/org/hps/record/scalars/ScalarUtilities.java
    java/trunk/record-util/src/main/java/org/hps/record/scalers/ScalersEvioProcessor.java
      - copied, changed from r3049, java/trunk/record-util/src/main/java/org/hps/record/scalars/ScalarsEvioProcessor.java
    java/trunk/record-util/src/main/java/org/hps/record/scalers/ScalersGenericObject.java
      - copied, changed from r3049, java/trunk/record-util/src/main/java/org/hps/record/scalars/ScalarsGenericObject.java
Removed:
    java/trunk/evio/src/test/java/org/hps/evio/ScalarsTest.java
    java/trunk/monitoring-drivers/src/main/java/org/hps/monitoring/drivers/scalars/
    java/trunk/record-util/src/main/java/org/hps/record/scalars/
    java/trunk/record-util/src/main/java/org/hps/record/scalers/ScalarData.java
    java/trunk/record-util/src/main/java/org/hps/record/scalers/ScalarUtilities.java
    java/trunk/record-util/src/main/java/org/hps/record/scalers/ScalarsEvioProcessor.java
    java/trunk/record-util/src/main/java/org/hps/record/scalers/ScalarsGenericObject.java
Modified:
    java/trunk/evio/src/test/java/org/hps/evio/EpicsDataTest.java
    java/trunk/monitoring-drivers/src/main/java/org/hps/monitoring/drivers/example/ExamplePlotDriver.java
    java/trunk/monitoring-drivers/src/main/java/org/hps/monitoring/drivers/scalers/DeadtimePlots.java
    java/trunk/record-util/src/main/java/org/hps/record/epics/EpicsData.java
    java/trunk/record-util/src/main/java/org/hps/record/epics/EpicsEvioProcessor.java
    java/trunk/record-util/src/main/java/org/hps/record/epics/EpicsGenericObject.java
    java/trunk/record-util/src/main/java/org/hps/record/evio/EvioEventConstants.java
    java/trunk/record-util/src/main/java/org/hps/record/scalers/package-info.java
    java/trunk/steering-files/src/main/resources/org/hps/steering/monitoring/DeadtimeMonitor.lcsim

Modified: java/trunk/evio/src/test/java/org/hps/evio/EpicsDataTest.java
 =============================================================================
--- java/trunk/evio/src/test/java/org/hps/evio/EpicsDataTest.java	(original)
+++ java/trunk/evio/src/test/java/org/hps/evio/EpicsDataTest.java	Fri May 29 14:21:13 2015
@@ -13,7 +13,6 @@
 import org.hps.record.enums.DataSourceType;
 import org.hps.record.enums.ProcessingStage;
 import org.hps.record.epics.EpicsData;
-import org.hps.record.epics.EpicsEvioProcessor;
 import org.hps.record.evio.EvioDetectorConditionsProcessor;
 import org.lcsim.event.EventHeader;
 import org.lcsim.util.Driver;
@@ -29,7 +28,7 @@
  */
 public class EpicsDataTest extends TestCase {
 
-    static final String TEST_FILE_URL = "http://www.lcsim.org/test/hps-java/ScalarsTest/hpsecal_004469_1000_events.evio.0";
+    static final String TEST_FILE_URL = "http://www.lcsim.org/test/hps-java/ScalersTest/hpsecal_004469_1000_events.evio.0";
 
     public void test() throws IOException {
 
@@ -44,7 +43,6 @@
 
         // Setup and run the loop to write out LCIO events with the EPICS scalar data.
         final CompositeLoopConfiguration configuration = new CompositeLoopConfiguration();
-        configuration.add(new EpicsEvioProcessor());
         configuration.setDataSourceType(DataSourceType.EVIO_FILE);
         configuration.add(new EvioDetectorConditionsProcessor("HPS-ECalCommissioning-v2"));
         configuration.setLCSimEventBuilder(builder);

Copied: java/trunk/evio/src/test/java/org/hps/evio/ScalersTest.java (from r3058, java/trunk/evio/src/test/java/org/hps/evio/ScalarsTest.java)
 =============================================================================
--- java/trunk/evio/src/test/java/org/hps/evio/ScalarsTest.java	(original)
+++ java/trunk/evio/src/test/java/org/hps/evio/ScalersTest.java	Fri May 29 14:21:13 2015
@@ -12,10 +12,9 @@
 import org.hps.record.enums.DataSourceType;
 import org.hps.record.enums.ProcessingStage;
 import org.hps.record.evio.EvioDetectorConditionsProcessor;
-import org.hps.record.scalars.ScalarData;
-import org.hps.record.scalars.ScalarUtilities;
-import org.hps.record.scalars.ScalarUtilities.LiveTimeIndex;
-import org.hps.record.scalars.ScalarsEvioProcessor;
+import org.hps.record.scalers.ScalerData;
+import org.hps.record.scalers.ScalerUtilities;
+import org.hps.record.scalers.ScalerUtilities.LiveTimeIndex;
 import org.lcsim.event.EventHeader;
 import org.lcsim.util.Driver;
 import org.lcsim.util.cache.FileCache;
@@ -24,15 +23,15 @@
 import org.lcsim.util.test.TestUtil.TestOutputFile;
 
 /**
- * Test of reading scalar data from EVIO files.
+ * Test of reading scaler data from EVIO files.
  * <p>
  * <a href="https://jira.slac.stanford.edu/browse/HPSJAVA-470">HPSJAVA-470</a>
  * 
  * @author Jeremy McCormick <[log in to unmask]>
  */
-public class ScalarsTest extends TestCase {
+public class ScalersTest extends TestCase {
     
-   static final String TEST_FILE_URL = "http://www.lcsim.org/test/hps-java/ScalarsTest/hpsecal_004469_1000_events.evio.0";
+   static final String TEST_FILE_URL = "http://www.lcsim.org/test/hps-java/ScalersTest/hpsecal_004469_1000_events.evio.0";
     
     public void test() throws Exception {
         
@@ -47,7 +46,6 @@
         
         // Configure and run the job to write out the LCIO from EVIO.
         CompositeLoopConfiguration configuration = new CompositeLoopConfiguration();
-        configuration.add(new ScalarsEvioProcessor());
         configuration.setDataSourceType(DataSourceType.EVIO_FILE);
         configuration.add(new EvioDetectorConditionsProcessor("HPS-ECalCommissioning-v2"));
         configuration.setLCSimEventBuilder(builder);
@@ -55,7 +53,7 @@
         configuration.setProcessingStage(ProcessingStage.LCIO);
         configuration.setStopOnEndRun(false);
         configuration.setStopOnErrors(true);        
-        TestOutputFile outputFile = new TestOutputFile("ScalarsTest.slcio");        
+        TestOutputFile outputFile = new TestOutputFile("ScalersTest.slcio");        
         configuration.add(new LCIODriver(outputFile.getPath()));
         CompositeLoop loop = new CompositeLoop();
         loop.setConfiguration(configuration);
@@ -66,14 +64,14 @@
         readLoop.setLCIORecordSource(outputFile);
         readLoop.add(new Driver() {
             public void process(EventHeader event) {
-                ScalarData data = ScalarData.read(event);
+                ScalerData data = ScalerData.read(event);
                 if (data != null) {
-                    System.out.println("Driver got ScalarData in LCIO event ...");
+                    System.out.println("Driver got ScalerData in LCIO event ...");
                     System.out.println(data.toString());
                     
-                    double fcupTdc = ScalarUtilities.getLiveTime(data, LiveTimeIndex.FCUP_TDC);
-                    double fcupTrg = ScalarUtilities.getLiveTime(data, LiveTimeIndex.FCUP_TRG);
-                    double clock = ScalarUtilities.getLiveTime(data, LiveTimeIndex.CLOCK);
+                    double fcupTdc = ScalerUtilities.getLiveTime(data, LiveTimeIndex.FCUP_TDC);
+                    double fcupTrg = ScalerUtilities.getLiveTime(data, LiveTimeIndex.FCUP_TRG);
+                    double clock = ScalerUtilities.getLiveTime(data, LiveTimeIndex.CLOCK);
 
                     System.out.println("calculated live times ...");
                     System.out.println(LiveTimeIndex.FCUP_TDC.toString() + " = " + fcupTdc);

Modified: java/trunk/monitoring-drivers/src/main/java/org/hps/monitoring/drivers/example/ExamplePlotDriver.java
 =============================================================================
--- java/trunk/monitoring-drivers/src/main/java/org/hps/monitoring/drivers/example/ExamplePlotDriver.java	(original)
+++ java/trunk/monitoring-drivers/src/main/java/org/hps/monitoring/drivers/example/ExamplePlotDriver.java	Fri May 29 14:21:13 2015
@@ -79,7 +79,7 @@
 EcalReadoutHits - class org.lcsim.event.base.BaseRawCalorimeterHit                                      
 EpicsData - interface org.lcsim.event.GenericObject                                               
 EcalCalHits - interface org.lcsim.event.CalorimeterHit                                                  
-ScalarData - interface org.lcsim.event.GenericObject                                                    
+ScalerData - interface org.lcsim.event.GenericObject                                                    
 TriggerBank - class org.hps.recon.ecal.triggerbank.AbstractIntData                                      
 EcalClusters - interface org.lcsim.event.Cluster
 */  

Modified: java/trunk/monitoring-drivers/src/main/java/org/hps/monitoring/drivers/scalers/DeadtimePlots.java
 =============================================================================
--- java/trunk/monitoring-drivers/src/main/java/org/hps/monitoring/drivers/scalers/DeadtimePlots.java	(original)
+++ java/trunk/monitoring-drivers/src/main/java/org/hps/monitoring/drivers/scalers/DeadtimePlots.java	Fri May 29 14:21:13 2015
@@ -1,12 +1,13 @@
-package org.hps.monitoring.drivers.scalars;
+package org.hps.monitoring.drivers.scalers;
 
 import java.util.Date;
+
 import org.hps.monitoring.plotting.MonitoringPlotFactory;
 import org.hps.monitoring.plotting.StripChartUpdater;
 import org.hps.monitoring.plotting.ValueProvider;
-import org.hps.record.scalars.ScalarData;
-import org.hps.record.scalars.ScalarUtilities;
-import org.hps.record.scalars.ScalarUtilities.LiveTimeIndex;
+import org.hps.record.scalers.ScalerData;
+import org.hps.record.scalers.ScalerUtilities;
+import org.hps.record.scalers.ScalerUtilities.LiveTimeIndex;
 import org.jfree.chart.JFreeChart;
 import org.jfree.chart.axis.Axis;
 import org.jfree.chart.axis.DateAxis;
@@ -19,15 +20,16 @@
 
 /**
  *
+ * Make a strip chart for DAQ deadtime from the info in the scaler block. 
+ *
  * @author mgraham
- * make a strip chart for DAQ deadtime from the info in the scalar block
  */
 public class DeadtimePlots extends Driver {
 
 //    static final int REFRESH_RATE = 10 * 1000; // units = ms
 //    static final double DOMAIN_SIZE = 4 * 60 * 60 * 1000; // x-axis range (ms)
       double DOMAIN_SIZE =  10 * 60 * 1000; // 10 minutes
-    String scalarsName = "Scalars";
+    //String scalarsName = "Scalars";
 
     int events;
 
@@ -63,10 +65,10 @@
 
     @Override
     public void process(EventHeader event) {
-        ScalarData data = ScalarData.read(event);
+        ScalerData data = ScalerData.read(event);
         if (data != null) {
-            fcupTdc = ScalarUtilities.getLiveTime(data, LiveTimeIndex.FCUP_TDC); // etc. }
-            fcupTrg = ScalarUtilities.getLiveTime(data, LiveTimeIndex.FCUP_TRG); // etc. }
+            fcupTdc = ScalerUtilities.getLiveTime(data, LiveTimeIndex.FCUP_TDC); // etc. }
+            fcupTrg = ScalerUtilities.getLiveTime(data, LiveTimeIndex.FCUP_TRG); // etc. }
 
             // fill strip charts:
             long now = System.currentTimeMillis();

Modified: java/trunk/record-util/src/main/java/org/hps/record/epics/EpicsData.java
 =============================================================================
--- java/trunk/record-util/src/main/java/org/hps/record/epics/EpicsData.java	(original)
+++ java/trunk/record-util/src/main/java/org/hps/record/epics/EpicsData.java	Fri May 29 14:21:13 2015
@@ -12,7 +12,7 @@
 import org.lcsim.event.GenericObject;
 
 /**
- * This is an API for reading and writing EPICS scalar data to LCIO events, as well as parsing the scalar data from a CDATA section within an EVIO
+ * This is an API for reading and writing EPICS data to LCIO events, as well as parsing the data from a CDATA section within an EVIO
  * string data bank. The {@link #read(EventHeader)} method should be used to create one of these objects from an LCIO event.
  *
  * @author <a href="mailto:[log in to unmask]">Jeremy McCormick</a>
@@ -22,7 +22,7 @@
     /**
      * Default collection name in the LCSim events.
      */
-    public static final String DEFAULT_COLLECTION_NAME = "EpicsScalarData";
+    private static final String DEFAULT_COLLECTION_NAME = "EpicsData";
 
     /**
      * This map contains the list of EPICS key descriptions from the<br/>
@@ -33,17 +33,17 @@
     /**
      * Dummy float parameters to make LCIO persistency work.
      */
-    static final Map<String, float[]> DUMMY_FLOAT_MAP = new HashMap<String, float[]>();
+    private static final Map<String, float[]> DUMMY_FLOAT_MAP = new HashMap<String, float[]>();
 
     /**
      * Dummy int parameters to make LCIO persistency work.
      */
-    static final Map<String, int[]> DUMMY_INT_MAP = new HashMap<String, int[]>();
+    private static final Map<String, int[]> DUMMY_INT_MAP = new HashMap<String, int[]>();
 
     /**
      * Collection parameter that has the EPICS variable names.
      */
-    public static final String EPICS_SCALAR_NAMES = "EPICS_SCALAR_NAMES";
+    private static final String EPICS_VARIABLE_NAMES = "EPICS_VARIABLE_NAMES";
 
     /**
      * List of descriptions.
@@ -80,12 +80,12 @@
     }
 
     /**
-     * Get the static list of available EPICs scalar names.
+     * Get the static list of all available EPICs variable names.
      * <p>
      * This could be different than the variable names which were actually written into the collection header. For this, instead use the method
      * {@link #getUsedNames()}.
      *
-     * @return the set of default EPICS scalar names
+     * @return the set of default EPICS variable names
      */
     public static Set<String> getDefaultNames() {
         return DESCRIPTIONS.keySet();
@@ -94,7 +94,7 @@
     /**
      * Get the description of a named EPICS variable.
      *
-     * @param name the name of the scalar
+     * @param name the name of the variable
      */
     public static String getDescription(final String name) {
         return DESCRIPTIONS.get(name);
@@ -125,11 +125,11 @@
      * @param collectionName the collection name
      * @return the EPICS data from the LCIO event
      */
-    static EpicsData read(final EventHeader event, final String collectionName) {
+    private static EpicsData read(final EventHeader event, final String collectionName) {
         final List<GenericObject> collection = event.get(GenericObject.class, collectionName);
         @SuppressWarnings("rawtypes")
         final Map stringMap = event.getMetaData(collection).getStringParameters();
-        final String[] keys = (String[]) stringMap.get(EPICS_SCALAR_NAMES);
+        final String[] keys = (String[]) stringMap.get(EPICS_VARIABLE_NAMES);
         final EpicsData data = new EpicsData();
         data.fromGenericObject(collection.get(0), keys);
         return data;
@@ -143,10 +143,10 @@
     /**
      * Given a list of names, read the double values from the {@link org.lcsim.event.GenericObject} into the data map of this object.
      *
-     * @param object the <code>GenericObject</code> with the scalar values
+     * @param object the <code>GenericObject</code> with the data values
      * @param names The list of names.
      */
-    void fromGenericObject(final GenericObject object, final String[] names) {
+    private void fromGenericObject(final GenericObject object, final String[] names) {
         for (int index = 0; index < names.length; index++) {
             this.dataMap.put(names[index], object.getDoubleVal(index));
         }
@@ -172,11 +172,11 @@
     }
 
     /**
-     * Get the list of used EPICS scalars in this object.
+     * Get the list of EPICS variables used by this object.
      * <p>
      * This could potentially be different than the list of default names from {@link #getDefaultNames()} but it will usually be the same.
      *
-     * @return the list of used EPICS scalar names
+     * @return the list of used EPICS variable names
      */
     public Set<String> getUsedNames() {
         return this.dataMap.keySet();
@@ -192,7 +192,7 @@
     }
 
     /**
-     * Get a double value from the key which should be a valid EPICS variable name.
+     * Set a double value by name.
      *
      * @return the value from the key
      */
@@ -205,7 +205,7 @@
      *
      * @return the <code>GenericObject</code> representing this data
      */
-    EpicsGenericObject toGenericObject() {
+    private EpicsGenericObject toGenericObject() {
         final EpicsGenericObject newObject = new EpicsGenericObject();
         newObject.setKeys(new String[this.dataMap.size()]);
         newObject.setValues(new double[this.dataMap.size()]);
@@ -247,12 +247,12 @@
      * @param event the LCIO event
      * @param collectionName the name of the collection in the output event
      */
-    void write(final EventHeader event, final String collectionName) {
+    private void write(final EventHeader event, final String collectionName) {
         final List<GenericObject> collection = new ArrayList<GenericObject>();
         final EpicsGenericObject object = this.toGenericObject();
         collection.add(object);
         final Map<String, String[]> stringMap = new HashMap<String, String[]>();
-        stringMap.put(EPICS_SCALAR_NAMES, object.getKeys());
+        stringMap.put(EPICS_VARIABLE_NAMES, object.getKeys());
         event.put(collectionName, collection, GenericObject.class, 0, DUMMY_INT_MAP, DUMMY_FLOAT_MAP, stringMap);
     }
 }

Modified: java/trunk/record-util/src/main/java/org/hps/record/epics/EpicsEvioProcessor.java
 =============================================================================
--- java/trunk/record-util/src/main/java/org/hps/record/epics/EpicsEvioProcessor.java	(original)
+++ java/trunk/record-util/src/main/java/org/hps/record/epics/EpicsEvioProcessor.java	Fri May 29 14:21:13 2015
@@ -1,17 +1,23 @@
 package org.hps.record.epics;
+
+import java.util.logging.Level;
+import java.util.logging.Logger;
 
 import org.hps.record.evio.EvioEventConstants;
 import org.hps.record.evio.EvioEventProcessor;
 import org.jlab.coda.jevio.BaseStructure;
 import org.jlab.coda.jevio.EvioEvent;
+import org.lcsim.util.log.DefaultLogFormatter;
+import org.lcsim.util.log.LogUtil;
 
 /**
- * This is an EVIO event processor that will read EPICS events (event tag 31) and turn them into {@link EpicsData}
- * objects.
+ * This is an EVIO event processor that will read EPICS events (event tag 31) and turn them into {@link EpicsData} objects.
  *
  * @author <a href="mailto:[log in to unmask]">Jeremy McCormick</a>
  */
 public final class EpicsEvioProcessor extends EvioEventProcessor {
+
+    private static final Logger LOGGER = LogUtil.create(EpicsEvioProcessor.class, new DefaultLogFormatter(), Level.ALL);
 
     /**
      * The current EPICS data object.
@@ -40,12 +46,15 @@
             return;
         }
 
+        LOGGER.info("processing EPICS event " + evio.getEventNumber());
+
         // Find the bank with the EPICS information.
         BaseStructure epicsBank = null;
         final BaseStructure topBank = evio.getChildrenList().get(0);
         for (final BaseStructure childBank : topBank.getChildrenList()) {
             if (childBank.getHeader().getTag() == EvioEventConstants.EPICS_BANK_TAG) {
                 epicsBank = childBank;
+                LOGGER.info("found EPICS data bank " + childBank.getHeader().getTag());
                 break;
             }
         }

Modified: java/trunk/record-util/src/main/java/org/hps/record/epics/EpicsGenericObject.java
 =============================================================================
--- java/trunk/record-util/src/main/java/org/hps/record/epics/EpicsGenericObject.java	(original)
+++ java/trunk/record-util/src/main/java/org/hps/record/epics/EpicsGenericObject.java	Fri May 29 14:21:13 2015
@@ -3,9 +3,8 @@
 import org.lcsim.event.GenericObject;
 
 /**
- * This is an implementation of GenericObject for reading and writing EPICS data. There is no functionality here
- * intended for ends users. Instead, the EPICS data should be accessed using
- * {@link EpicsData#read(org.lcsim.event.EventHeader)} to create the data object from input event data.
+ * This is an implementation of GenericObject for reading and writing EPICS data. There is no functionality here intended for ends users. Instead, the
+ * EPICS data should be accessed using {@link EpicsData#read(org.lcsim.event.EventHeader)} to create the data object from input event data.
  *
  * @author <a href="mailto:[log in to unmask]">Jeremy McCormick</a>
  */

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	Fri May 29 14:21:13 2015
@@ -71,14 +71,14 @@
     public static final int PRESTART_EVENT_TAG = 17;
 
     /**
-     * Tag of the scalars integer bank, which is a child of the crate bank.
+     * Tag of the scalers integer bank, which is a child of the crate bank.
      */
-    public static final int SCALARS_BANK_TAG = 57621;
+    public static final int SCALERS_BANK_TAG = 57621;
 
     /**
-     * Tag of the scalars crate bank, which is a child of the top bank.
+     * Tag of the scalers crate bank, which is a child of the top bank.
      */
-    public static final int SCALARS_CRATE_TAG = 39;
+    public static final int SCALERS_CRATE_TAG = 39;
 
     /**
      * CODA SYNC event tag.

Copied: java/trunk/record-util/src/main/java/org/hps/record/scalers/ScalerData.java (from r3049, java/trunk/record-util/src/main/java/org/hps/record/scalars/ScalarData.java)
 =============================================================================
--- java/trunk/record-util/src/main/java/org/hps/record/scalars/ScalarData.java	(original)
+++ java/trunk/record-util/src/main/java/org/hps/record/scalers/ScalerData.java	Fri May 29 14:21:13 2015
@@ -1,4 +1,4 @@
-package org.hps.record.scalars;
+package org.hps.record.scalers;
 
 import java.util.ArrayList;
 import java.util.List;
@@ -7,61 +7,62 @@
 import org.lcsim.event.GenericObject;
 
 /**
- * This class encapsulates EVIO scalar data which is simply an array of integer values. The exact meaning of each of
- * these integer words is defined externally to this class.
+ * This class encapsulates EVIO scaler data which is simply an array of integer values. The exact meaning of each of these integer words is defined
+ * externally to this class.
  *
  * @author <a href="mailto:[log in to unmask]">Jeremy McCormick</a>
  */
-public final class ScalarData {
+public final class ScalerData {
 
     /**
-     * Default name of scalar data collection in LCSim events.
+     * Default name of scaler data collection in LCSim events.
      */
-    static String DEFAULT_SCALAR_DATA_COLLECTION_NAME = "ScalarData";
+    private static final String DEFAULT_COLLECTION_NAME = "ScalerData";
 
     /**
-     * Create a new <code>ScalarData</code> object from an LCIO event, using the default collection name.
+     * Create a new <code>ScalerData</code> object from an LCIO event, using the default collection name.
      *
      * @param event the LCIO event data
-     * @return the <code>ScalarData</code> object or <code>null</code> if there's no scalar data in the event
+     * @return the <code>ScalerData</code> object or <code>null</code> if there's no scaler data in the event
      */
-    public static ScalarData read(final EventHeader event) {
-        return read(event, DEFAULT_SCALAR_DATA_COLLECTION_NAME);
+    public static ScalerData read(final EventHeader event) {
+        return read(event, DEFAULT_COLLECTION_NAME);
     }
 
     /**
      * Create a new object from the data in an LCIO event, using the default collection name.
      *
      * @param event the LCIO event data
-     * @return the <code>ScalarData</code> object or <code>null</code> if does not exist in event
+     * @return the <code>ScalerData</code> object or <code>null</code> if does not exist in event
      */
-    public static ScalarData read(final EventHeader event, final String collectionName) {
-        ScalarData data = null;
+    public static ScalerData read(final EventHeader event, final String collectionName) {
+        ScalerData data = null;
         if (event.hasCollection(GenericObject.class, collectionName)) {
+            System.out.println("ScalerData - found collection");
             final List<GenericObject> objects = event.get(GenericObject.class, collectionName);
-            data = new ScalarData();
+            data = new ScalerData();
             data.fromGenericObject(objects.get(0));
         }
         return data;
     }
 
     /**
-     * The scalar data values.
+     * The scaler data values.
      */
     private int[] data;
 
     /**
      * This is the no argument constructor which is for package internal use only.
      */
-    ScalarData() {
+    ScalerData() {
     }
 
     /**
-     * Create from provided scalar data values.
+     * Create from provided scaler data values.
      *
-     * @param data the scalar data
+     * @param data the scaler data
      */
-    public ScalarData(final int[] data) {
+    public ScalerData(final int[] data) {
         this.data = new int[data.length];
         System.arraycopy(data, 0, this.data, 0, data.length);
     }
@@ -69,9 +70,9 @@
     /**
      * Load data into this object from an {@link org.lcsim.event.GenericObject} read from an LCIO event.
      *
-     * @param object the <code>GenericObject</code> with the scalar data
+     * @param object the <code>GenericObject</code> with the scaler data
      */
-    void fromGenericObject(final GenericObject object) {
+    private void fromGenericObject(final GenericObject object) {
         this.data = new int[object.getNInt()];
         for (int index = 0; index < object.getNInt(); index++) {
             this.data[index] = object.getIntVal(index);
@@ -79,19 +80,19 @@
     }
 
     /**
-     * Get the scalar data value at the index.
+     * Get the scaler data value at the index.
      *
-     * @param index the scalar data index
-     * @return the scalar data value
+     * @param index the scaler data index
+     * @return the scaler data value
      */
     public Integer getValue(final int index) {
         return this.data[index];
     }
 
     /**
-     * Get the number of scalars.
+     * Get the number of scalers.
      *
-     * @return the number of scalars
+     * @return the number of scalers
      */
     public int size() {
         return this.data.length;
@@ -100,16 +101,15 @@
     /**
      * Convert this object to an LCSim {@link org.lcsim.event.GenericObject} for persistency to LCIO.
      *
-     * @return the LCIO <code>GenericObject</code> containing scalar data
+     * @return the LCIO <code>GenericObject</code> containing scaler data
      */
-    GenericObject toGenericObject() {
-        final ScalarsGenericObject object = new ScalarsGenericObject(this.data);
+    private GenericObject toGenericObject() {
+        final ScalersGenericObject object = new ScalersGenericObject(this.data);
         return object;
     }
 
     /**
-     * Convert this object to a readable string, which is a list of integer values enclosed in braces and separated by
-     * commas.
+     * Convert this object to a readable string, which is a list of integer values enclosed in braces and separated by commas.
      *
      * @return this object converted to a string
      */
@@ -131,7 +131,7 @@
      * @param event the output LCIO event
      */
     public void write(final EventHeader event) {
-        write(event, DEFAULT_SCALAR_DATA_COLLECTION_NAME);
+        this.write(event, DEFAULT_COLLECTION_NAME);
     }
 
     /**
@@ -140,9 +140,9 @@
      * @param event the output LCIO event
      * @param collectionName the name of the output collection
      */
-    public void write(final EventHeader event, final String collectionName) {
+    private void write(final EventHeader event, final String collectionName) {
         final List<GenericObject> collection = new ArrayList<GenericObject>();
-        collection.add(toGenericObject());
+        collection.add(this.toGenericObject());
         event.put(collectionName, collection, GenericObject.class, 0);
     }
 }

Copied: java/trunk/record-util/src/main/java/org/hps/record/scalers/ScalerUtilities.java (from r3049, java/trunk/record-util/src/main/java/org/hps/record/scalars/ScalarUtilities.java)
 =============================================================================
--- java/trunk/record-util/src/main/java/org/hps/record/scalars/ScalarUtilities.java	(original)
+++ java/trunk/record-util/src/main/java/org/hps/record/scalers/ScalerUtilities.java	Fri May 29 14:21:13 2015
@@ -1,13 +1,13 @@
-package org.hps.record.scalars;
+package org.hps.record.scalers;
 
 /**
- * Utilities methods for scalar data.
+ * Utilities methods for scaler data.
  * <p>
- * Currently this is used only for computing live time measurements from standard scalar data.
+ * Currently this is used only for computing live time measurements from standard scaler data.
  *
  * @author <a href="mailto:[log in to unmask]">Jeremy McCormick</a>
  */
-public final class ScalarUtilities {
+public final class ScalerUtilities {
 
     /**
      * Indices for getting live time measurements.
@@ -24,12 +24,12 @@
      * @param index The enum of the index type.
      * @see LiveTimeIndex
      */
-    public static double getLiveTime(final ScalarData data, final LiveTimeIndex index) {
+    public static double getLiveTime(final ScalerData data, final LiveTimeIndex index) {
         return getLiveTimes(data)[index.ordinal()];
     }
 
     /**
-     * Get the live time measurements from standard scalar data.
+     * Get the live time measurements from standard scaler data.
      * <p>
      * This is returned as a double array of size 3 containing:</br>
      *
@@ -39,13 +39,13 @@
      * [2] = CLOCK measurement
      * </pre>
      *
-     * This method assumes the standard scalar data structure as outlined in <a
+     * This method assumes the standard scaler data structure as outlined in <a
      * href="https://jira.slac.stanford.edu/browse/HPSJAVA-470">HPSJAVA-470</a>.
      *
-     * @param data The scalar data.
+     * @param data The scaler data.
      * @return The live time measurements.
      */
-    public static double[] getLiveTimes(final ScalarData data) {
+    public static double[] getLiveTimes(final ScalerData data) {
 
         // [03] - gated faraday cup with "TDC" threshold
         final int word03 = data.getValue(3);
@@ -86,7 +86,7 @@
     /**
      * Disallow class instantiation.
      */
-    private ScalarUtilities() {
+    private ScalerUtilities() {
         throw new UnsupportedOperationException("Do not instantiate this class.");
     }
 }

Copied: java/trunk/record-util/src/main/java/org/hps/record/scalers/ScalersEvioProcessor.java (from r3049, java/trunk/record-util/src/main/java/org/hps/record/scalars/ScalarsEvioProcessor.java)
 =============================================================================
--- java/trunk/record-util/src/main/java/org/hps/record/scalars/ScalarsEvioProcessor.java	(original)
+++ java/trunk/record-util/src/main/java/org/hps/record/scalers/ScalersEvioProcessor.java	Fri May 29 14:21:13 2015
@@ -1,32 +1,41 @@
-package org.hps.record.scalars;
+package org.hps.record.scalers;
+
+import java.util.logging.Level;
+import java.util.logging.Logger;
 
 import org.hps.record.evio.EvioEventConstants;
 import org.hps.record.evio.EvioEventProcessor;
 import org.jlab.coda.jevio.BaseStructure;
 import org.jlab.coda.jevio.EvioEvent;
+import org.lcsim.util.log.DefaultLogFormatter;
+import org.lcsim.util.log.LogUtil;
 
 /**
- * This is an EVIO event processor for creating a {@link ScalarData} object from scalar bank data.
+ * This is an EVIO event processor for creating a {@link ScalerData} object from scaler bank data.
  *
  * @author <a href="mailto:[log in to unmask]">Jeremy McCormick</a>
  */
-public final class ScalarsEvioProcessor extends EvioEventProcessor {
+public final class ScalersEvioProcessor extends EvioEventProcessor {
 
-    // Currently cached ScalarData object which was created by the process method.
-    private ScalarData data;
+    private static final Logger LOGGER = LogUtil.create(ScalersEvioProcessor.class, new DefaultLogFormatter(), Level.INFO);
 
     /**
-     * Get the current scalar data or null if there was none in the last event processed.
+     * Currently cached ScalerData object which was created by the process method.
+     */
+    private ScalerData data;
+
+    /**
+     * Get the current scaler data or null if there was none in the last event processed.
      *
-     * @return the current scalar data or <code>null</code> if none exists
+     * @return the current scaler data or <code>null</code> if none exists
      */
-    public ScalarData getScalarData() {
+    public ScalerData getScalerData() {
         return this.data;
     }
 
     /**
-     * This method will create a <code>ScalarData</code> object and cache it. The current object is first reset to
-     * <code>null</code> every time this method is called.
+     * This method will create a <code>ScalerData</code> object and cache it. The current object is first reset to <code>null</code> every time this
+     * method is called.
      *
      * @param evio the EVIO event data
      */
@@ -35,13 +44,16 @@
         this.data = null;
         for (final BaseStructure bank : evio.getChildrenList()) {
             // Does the crate tag match?
-            if (bank.getHeader().getTag() == EvioEventConstants.SCALARS_CRATE_TAG) {
+            if (bank.getHeader().getTag() == EvioEventConstants.SCALERS_CRATE_TAG) {
                 if (bank.getChildrenList() != null) {
                     for (final BaseStructure subBank : bank.getChildrenList()) {
                         // Does the bank tag match?
-                        if (subBank.getHeader().getTag() == EvioEventConstants.SCALARS_BANK_TAG) {
-                            // Scalar data exists in event so create object and stop processing.
-                            this.data = new ScalarData(subBank.getIntData());
+                        if (subBank.getHeader().getTag() == EvioEventConstants.SCALERS_BANK_TAG) {
+
+                            LOGGER.fine("found scaler data in bank " + subBank.getHeader().getTag() + " and EVIO event " + evio.getEventNumber());
+
+                            // Scaler data exists in event so create object and stop processing.
+                            this.data = new ScalerData(subBank.getIntData());
                             break;
                         }
                     }

Copied: java/trunk/record-util/src/main/java/org/hps/record/scalers/ScalersGenericObject.java (from r3049, java/trunk/record-util/src/main/java/org/hps/record/scalars/ScalarsGenericObject.java)
 =============================================================================
--- java/trunk/record-util/src/main/java/org/hps/record/scalars/ScalarsGenericObject.java	(original)
+++ java/trunk/record-util/src/main/java/org/hps/record/scalers/ScalersGenericObject.java	Fri May 29 14:21:13 2015
@@ -1,26 +1,26 @@
-package org.hps.record.scalars;
+package org.hps.record.scalers;
 
 import org.lcsim.event.GenericObject;
 
 /**
- * This is the LCIO {@link org.lcsim.event.GenericObject} binding for EVIO scalar data. This should not be used
- * directly. Rather the {@link ScalarData} class should be used for loading data from LCIO events.
+ * This is the LCIO {@link org.lcsim.event.GenericObject} binding for EVIO scaler data. This should not be used
+ * directly. Rather the {@link ScalerData} class should be used for loading data from LCIO events.
  *
  * @author <a href="mailto:[log in to unmask]">Jeremy McCormick</a>
  */
-final class ScalarsGenericObject implements GenericObject {
+final class ScalersGenericObject implements GenericObject {
 
     /**
-     * The scalar data values.
+     * The scaler data values.
      */
     private final int[] values;
 
     /**
-     * Create a new object with the given scalar values.
+     * Create a new object with the given scaler values.
      *
-     * @param values the array of scalar values
+     * @param values the array of scaler values
      */
-    ScalarsGenericObject(final int[] values) {
+    ScalersGenericObject(final int[] values) {
         this.values = values;
     }
 
@@ -35,7 +35,7 @@
     }
 
     /**
-     * Get the scalar value at the index.
+     * Get the scaler value at the index.
      *
      * @param index the index in the data array
      */

Modified: java/trunk/record-util/src/main/java/org/hps/record/scalers/package-info.java
 =============================================================================
--- java/trunk/record-util/src/main/java/org/hps/record/scalers/package-info.java	(original)
+++ java/trunk/record-util/src/main/java/org/hps/record/scalers/package-info.java	Fri May 29 14:21:13 2015
@@ -1,6 +1,6 @@
 /**
- * Classes for converting scalar data from EVIO to LCSim.
+ * Classes for converting scaler data from EVIO to LCSim.
  *
  * @author <a href="mailto:[log in to unmask]">Jeremy McCormick</a>
  */
-package org.hps.record.scalars;
+package org.hps.record.scalers;

Modified: java/trunk/steering-files/src/main/resources/org/hps/steering/monitoring/DeadtimeMonitor.lcsim
 =============================================================================
--- java/trunk/steering-files/src/main/resources/org/hps/steering/monitoring/DeadtimeMonitor.lcsim	(original)
+++ java/trunk/steering-files/src/main/resources/org/hps/steering/monitoring/DeadtimeMonitor.lcsim	Fri May 29 14:21:13 2015
@@ -5,7 +5,7 @@
         <driver name="CleanupDriver" />
     </execute>
     <drivers>     
-        <driver name="DeadtimeMonitor" type="org.hps.monitoring.drivers.scalars.DeadtimePlots">
+        <driver name="DeadtimeMonitor" type="org.hps.monitoring.drivers.scalers.DeadtimePlots">
         </driver>
         <driver name="CleanupDriver" type="org.lcsim.recon.tracking.digitization.sisim.config.ReadoutCleanupDriver" />
     </drivers>