Class DaqScalersSequence

java.lang.Object
org.jlab.detector.scalers.DaqScalersSequence
All Implemented Interfaces:
Comparator<DaqScalers>

public class DaqScalersSequence extends Object implements Comparator<DaqScalers>
For easy access to most recent scaler readout for any given event. See the main() method for example use case, where only the 2 lines marked with "!!!" are specific to accessing scalers.
Author:
baltzell
  • Field Details Link icon

  • Constructor Details Link icon

    • DaqScalersSequence Link icon

      public DaqScalersSequence()
  • Method Details Link icon

    • compare Link icon

      public int compare(DaqScalers o1, DaqScalers o2)
      Specified by:
      compare in interface Comparator<DaqScalers>
    • findIndex Link icon

      protected int findIndex(long timestamp)
    • add Link icon

      protected boolean add(DaqScalers ds)
    • get Link icon

      public DaqScalers get(long timestamp)
      Parameters:
      timestamp - TI timestamp (i.e. RUN::config.timestamp)
      Returns:
      the most recent DaqScalers for the given timestamp
    • get Link icon

      public DaqScalers get(org.jlab.jnp.hipo4.data.Event event)
      Parameters:
      event -
      Returns:
      the most recent DaqScalers for the given event
    • getInterval Link icon

      public DaqScalersSequence.Interval getInterval()
      Returns:
      largest available interval of scaler readings
    • getInterval Link icon

      public DaqScalersSequence.Interval getInterval(long timestamp)
      Parameters:
      timestamp - TI timestamp (i.e. RUN::config.timestamp)
      Returns:
      smallest interval of scaler readings around that timestamp
    • getInterval Link icon

      public DaqScalersSequence.Interval getInterval(org.jlab.jnp.hipo4.data.Event event)
      Parameters:
      event -
      Returns:
      smallest interval of scaler readings around that event
    • getInterval Link icon

      public DaqScalersSequence.Interval getInterval(long t1, long t2)
      Parameters:
      t1 - first TI timestamp (i.e. RUN::config.timestamp)
      t2 - second TI timestamp
      Returns:
      smallest interval of scaler readings around those timestamps
    • getInterval Link icon

      public DaqScalersSequence.Interval getInterval(org.jlab.jnp.hipo4.data.Event event1, org.jlab.jnp.hipo4.data.Event event2)
      Parameters:
      event1 - first event
      event2 - second event
      Returns:
      smallest interval of scaler readings around those events
    • readSequence Link icon

      public static DaqScalersSequence readSequence(List<String> filenames)
      This reads tag=1 events for RUN::scaler banks, and initializes and returns a DaqScalersSequence that can be used to access the most recent scaler readout for any given event.
      Parameters:
      filenames - list of names of HIPO files to read
      Returns:
      sequence
    • rebuildSequence Link icon

      public static DaqScalersSequence rebuildSequence(int tags, ConstantsManager conman, List<String> filenames)
      Parameters:
      tags -
      conman -
      filenames -
      Returns:
    • main Link icon

      public static void main(String[] args)