Class StruckScaler

java.lang.Object
org.jlab.detector.scalers.DaqScaler
org.jlab.detector.scalers.StruckScaler

public class StruckScaler extends DaqScaler
The Struck is a multi-channel scaler that can buffer many readings over very short dwell times, advanced by and latched to input control signals. The CLAS12 DAQ uses this device to readout helicity-latched counts for the purpose of beam-spin asymmetry measurements, and that's what this class is geared towards. At some point over the years, readout patterns changed and this class alone is no longer sufficient. See StruckScalers instead.
Author:
baltzell
  • Field Details Link icon

  • Constructor Details Link icon

    • StruckScaler Link icon

      public StruckScaler()
    • StruckScaler Link icon

      @Deprecated public StruckScaler(org.jlab.jnp.hipo4.data.Bank bank, org.jlab.utils.groups.IndexedTable fcupTable, org.jlab.utils.groups.IndexedTable slmTable, org.jlab.utils.groups.IndexedTable helTable)
      Deprecated.
      This made sense when we only had one tsettle+tstable in each readout.
      Parameters:
      bank - a RAW::scaler bank
      fcupTable - /runcontrol/fcup CCDB table
      slmTable - /runcontrol/slm CCDB table
      helTable - /runcontrol/helicity CCDB table
  • Method Details Link icon

    • setHelicity Link icon

      public void setHelicity(HelicityBit b)
    • setQuartet Link icon

      public void setQuartet(HelicityBit b)
    • getHelicity Link icon

      public HelicityBit getHelicity()
    • getQuartet Link icon

      public HelicityBit getQuartet()
    • setInterval Link icon

      public void setInterval(StruckScaler.Interval intvl)
    • getInterval Link icon

      public StruckScaler.Interval getInterval()
    • toString Link icon

      public String toString()
      Overrides:
      toString in class DaqScaler
    • getHelicityInterval Link icon

      public HelicityInterval getHelicityInterval(long clock, org.jlab.utils.groups.IndexedTable helTable)
      Determine whether the clock looks more like tsettle or tstable periods.
      Parameters:
      clock - the value of this clock readout
      helTable - /runcontrol/helicity CCDB table
      Returns:
      the type of helicity period
    • getHelicityInterval Link icon

      public HelicityInterval getHelicityInterval(org.jlab.utils.groups.IndexedTable helTable)
      Determine whether the clock looks more like tsettle or tstable periods.
      Parameters:
      helTable - /runcontrol/helicity CCDB table
      Returns:
      the type of helicity period
    • getStableInterval Link icon

      public final StruckScaler.Interval getStableInterval(org.jlab.jnp.hipo4.data.Bank bank, org.jlab.utils.groups.IndexedTable helTable)
      Look for the first ungated clock readout whose value corresponds to the helicity tsettle period, and return it's Struck period.
      Parameters:
      bank - a RAW::scaler bank
      helTable - /runcontrol/helicity CCDB table
      Returns:
      the type of Struck period