The RunHistory Interface

  • The RunHistory interface (in DatabaseUtils/RunHistory) is intended to be the single interface that will provide all information for a given run. This will include all operational information (detector and DAQ configurations such as pixel masks, thresholds, hv settings, POT information, which detector planes had scintillator, etc.), as well as offline/calibration information (list of good channels, channel-by-channel timing offsets, ADC-to-PE constants, etc.).
  • Currently the interface is pretty simple:
    RunHistory rh(runnum);
    where "runnum" is an integer. This will most likely be changed soon so that the detector id is included.
  • Currently the RunHistory object has the following methods:
    • RunHistory::NSubruns()
    • RunHistory::NTriggers()
    • RunHistory::TStart()
    • RunHistory::TStop()
    • RunHistory::Duration() // in units of seconds
    • RunHistory::NActiveChannels()
    • RunHistory::NDCMs()
    • RunHistory::GetDCM(int) // returns a const DCM object
  • The DCM object looks like:
        class DCM {
          DCM() {};
          ~DCM() {};
          std::string hwid;
          std::string appname;
          int64_t febMask;
          std::map<int,FEB> feb;
  • The FEB object looks like:
        class FEB {
          FEB() {};
          ~FEB() {};
          std::string hwid;
          int loc;
          int nActivePix;
          int pixelMask;
          int pixelThresh[32];