CMS 3D CMS Logo

Public Member Functions | Private Attributes

L1CSCTriggerPrimitivesConfigProducer Class Reference

#include <L1CSCTriggerPrimitivesConfigProducer.h>

Inheritance diagram for L1CSCTriggerPrimitivesConfigProducer:
edm::ESProducer edm::ESProxyFactoryProducer edm::eventsetup::DataProxyProvider

List of all members.

Public Member Functions

 L1CSCTriggerPrimitivesConfigProducer (const edm::ParameterSet &)
std::auto_ptr
< CSCDBL1TPParameters
produce (const CSCDBL1TPParametersRcd &)
 ~L1CSCTriggerPrimitivesConfigProducer ()

Private Attributes

unsigned int m_alct_accel_mode
unsigned int m_alct_drift_delay
unsigned int m_alct_fifo_pretrig
unsigned int m_alct_fifo_tbins
unsigned int m_alct_l1a_window_width
unsigned int m_alct_nplanes_hit_accel_pattern
unsigned int m_alct_nplanes_hit_accel_pretrig
unsigned int m_alct_nplanes_hit_pattern
unsigned int m_alct_nplanes_hit_pretrig
unsigned int m_alct_trig_mode
unsigned int m_clct_drift_delay
unsigned int m_clct_fifo_pretrig
unsigned int m_clct_fifo_tbins
unsigned int m_clct_hit_persist
unsigned int m_clct_min_separation
unsigned int m_clct_nplanes_hit_pattern
unsigned int m_clct_nplanes_hit_pretrig
unsigned int m_clct_pid_thresh_pretrig
unsigned int m_tmb_alct_trig_enable
unsigned int m_tmb_clct_trig_enable
unsigned int m_tmb_match_trig_enable
unsigned int m_tmb_match_trig_window_size
unsigned int m_tmb_mpc_block_me1a
unsigned int m_tmb_tmb_l1a_window_size

Detailed Description

Description: Produce configuration parameters for the Level-1 CSC Trigger Primitives emulator.

Author:
Slava Valuev Created: Thu Apr 12 11:26:54 CEST 2007
Id:
L1CSCTriggerPrimitivesConfigProducer.h,v 1.7 2010/08/04 10:11:35 slava Exp

Definition at line 26 of file L1CSCTriggerPrimitivesConfigProducer.h.


Constructor & Destructor Documentation

L1CSCTriggerPrimitivesConfigProducer::L1CSCTriggerPrimitivesConfigProducer ( const edm::ParameterSet iConfig)

Definition at line 20 of file L1CSCTriggerPrimitivesConfigProducer.cc.

References edm::ParameterSet::getParameter(), m_alct_accel_mode, m_alct_drift_delay, m_alct_fifo_pretrig, m_alct_fifo_tbins, m_alct_l1a_window_width, m_alct_nplanes_hit_accel_pattern, m_alct_nplanes_hit_accel_pretrig, m_alct_nplanes_hit_pattern, m_alct_nplanes_hit_pretrig, m_alct_trig_mode, m_clct_drift_delay, m_clct_fifo_pretrig, m_clct_fifo_tbins, m_clct_hit_persist, m_clct_min_separation, m_clct_nplanes_hit_pattern, m_clct_nplanes_hit_pretrig, m_clct_pid_thresh_pretrig, m_tmb_alct_trig_enable, m_tmb_clct_trig_enable, m_tmb_match_trig_enable, m_tmb_match_trig_window_size, m_tmb_mpc_block_me1a, m_tmb_tmb_l1a_window_size, and edm::ESProducer::setWhatProduced().

                                                                                                         {
  // the following line is needed to tell the framework what
  // data is being produced
  setWhatProduced(this);

  // Decide on which of the two sets of parameters will be used.
  // (Temporary substitute for the IOV.)
  std::string alctParamSet, clctParamSet, tmbParamSet;
  bool isMTCC  = iConfig.getParameter<bool>("isMTCC");
  bool isTMB07 = iConfig.getParameter<bool>("isTMB07");
  if (isMTCC) {
    alctParamSet = "alctParamMTCC2";
    clctParamSet = "clctParamMTCC2";
  }
  else if (isTMB07) {
    alctParamSet = "alctParamMTCC2";
    clctParamSet = "clctParam";
  }
  else {
    alctParamSet = "alctParam";
    clctParamSet = "clctParam";
  }
  tmbParamSet = "tmbParam";

  // get ALCT parameters from the config file
  edm::ParameterSet alctParams =
    iConfig.getParameter<edm::ParameterSet>(alctParamSet);
  m_alct_fifo_tbins   =
    alctParams.getParameter<unsigned int>("alctFifoTbins");
  m_alct_fifo_pretrig =
    alctParams.getParameter<unsigned int>("alctFifoPretrig");
  m_alct_drift_delay  =
    alctParams.getParameter<unsigned int>("alctDriftDelay");
  m_alct_nplanes_hit_pretrig =
    alctParams.getParameter<unsigned int>("alctNplanesHitPretrig");
  m_alct_nplanes_hit_pattern =
    alctParams.getParameter<unsigned int>("alctNplanesHitPattern");
  m_alct_nplanes_hit_accel_pretrig =
    alctParams.getParameter<unsigned int>("alctNplanesHitAccelPretrig");
  m_alct_nplanes_hit_accel_pattern =
    alctParams.getParameter<unsigned int>("alctNplanesHitAccelPattern");
  m_alct_trig_mode  =
    alctParams.getParameter<unsigned int>("alctTrigMode");
  m_alct_accel_mode =
    alctParams.getParameter<unsigned int>("alctAccelMode");
  m_alct_l1a_window_width =
    alctParams.getParameter<unsigned int>("alctL1aWindowWidth");

  // get CLCT parameters from the config file
  edm::ParameterSet clctParams =
    iConfig.getParameter<edm::ParameterSet>(clctParamSet);
  m_clct_fifo_tbins   =
    clctParams.getParameter<unsigned int>("clctFifoTbins");
  m_clct_fifo_pretrig =
    clctParams.getParameter<unsigned int>("clctFifoPretrig");
  m_clct_hit_persist  =
    clctParams.getParameter<unsigned int>("clctHitPersist");
  m_clct_drift_delay  =
    clctParams.getParameter<unsigned int>("clctDriftDelay");
  m_clct_nplanes_hit_pretrig =
    clctParams.getParameter<unsigned int>("clctNplanesHitPretrig");
  m_clct_nplanes_hit_pattern =
    clctParams.getParameter<unsigned int>("clctNplanesHitPattern");
  m_clct_pid_thresh_pretrig  =
    clctParams.getParameter<unsigned int>("clctPidThreshPretrig");
  m_clct_min_separation =
    clctParams.getParameter<unsigned int>("clctMinSeparation");

  // get TMB parameters from the config file
  edm::ParameterSet tmbParams =
    iConfig.getParameter<edm::ParameterSet>(tmbParamSet);
  m_tmb_mpc_block_me1a =
    tmbParams.getParameter<unsigned int>("tmbMpcBlockMe1a");
  m_tmb_alct_trig_enable =
    tmbParams.getParameter<unsigned int>("tmbAlctTrigEnable");
  m_tmb_clct_trig_enable =
    tmbParams.getParameter<unsigned int>("tmbClctTrigEnable");
  m_tmb_match_trig_enable =
    tmbParams.getParameter<unsigned int>("tmbMatchTrigEnable");
  m_tmb_match_trig_window_size =
    tmbParams.getParameter<unsigned int>("tmbMatchTrigWindowSize");
  m_tmb_tmb_l1a_window_size =
    tmbParams.getParameter<unsigned int>("tmbTmbL1aWindowSize");
}
L1CSCTriggerPrimitivesConfigProducer::~L1CSCTriggerPrimitivesConfigProducer ( )

Definition at line 109 of file L1CSCTriggerPrimitivesConfigProducer.cc.

                                                                            {
}

Member Function Documentation

std::auto_ptr< CSCDBL1TPParameters > L1CSCTriggerPrimitivesConfigProducer::produce ( const CSCDBL1TPParametersRcd iRecord)

Definition at line 118 of file L1CSCTriggerPrimitivesConfigProducer.cc.

References m_alct_accel_mode, m_alct_drift_delay, m_alct_fifo_pretrig, m_alct_fifo_tbins, m_alct_l1a_window_width, m_alct_nplanes_hit_accel_pattern, m_alct_nplanes_hit_accel_pretrig, m_alct_nplanes_hit_pattern, m_alct_nplanes_hit_pretrig, m_alct_trig_mode, m_clct_drift_delay, m_clct_fifo_pretrig, m_clct_fifo_tbins, m_clct_hit_persist, m_clct_min_separation, m_clct_nplanes_hit_pattern, m_clct_nplanes_hit_pretrig, m_clct_pid_thresh_pretrig, m_tmb_alct_trig_enable, m_tmb_clct_trig_enable, m_tmb_match_trig_enable, m_tmb_match_trig_window_size, m_tmb_mpc_block_me1a, and m_tmb_tmb_l1a_window_size.

                                                                                   {
  using namespace edm::es;
  //boost::shared_ptr<L1CSCTriggerPrimitivesConfigProducer> pL1CSCTPConfigProducer;

  // Create empty collection of CSCTPParameters.
  std::auto_ptr<CSCDBL1TPParameters> pL1CSCTPParams(new CSCDBL1TPParameters);

  // Set ALCT parameters.
  pL1CSCTPParams->setAlctFifoTbins(m_alct_fifo_tbins);
  pL1CSCTPParams->setAlctFifoPretrig(m_alct_fifo_pretrig);
  pL1CSCTPParams->setAlctDriftDelay(m_alct_drift_delay);
  pL1CSCTPParams->setAlctNplanesHitPretrig(m_alct_nplanes_hit_pretrig);
  pL1CSCTPParams->setAlctNplanesHitPattern(m_alct_nplanes_hit_pattern);
  pL1CSCTPParams->setAlctNplanesHitAccelPretrig(m_alct_nplanes_hit_accel_pretrig);
  pL1CSCTPParams->setAlctNplanesHitAccelPattern(m_alct_nplanes_hit_accel_pattern);
  pL1CSCTPParams->setAlctTrigMode(m_alct_trig_mode);
  pL1CSCTPParams->setAlctAccelMode(m_alct_accel_mode);
  pL1CSCTPParams->setAlctL1aWindowWidth(m_alct_l1a_window_width);

  // Set CLCT parameters.
  pL1CSCTPParams->setClctFifoTbins(m_clct_fifo_tbins);
  pL1CSCTPParams->setClctFifoPretrig(m_clct_fifo_pretrig);
  pL1CSCTPParams->setClctHitPersist(m_clct_hit_persist);
  pL1CSCTPParams->setClctDriftDelay(m_clct_drift_delay);
  pL1CSCTPParams->setClctNplanesHitPretrig(m_clct_nplanes_hit_pretrig);
  pL1CSCTPParams->setClctNplanesHitPattern(m_clct_nplanes_hit_pattern);
  pL1CSCTPParams->setClctPidThreshPretrig(m_clct_pid_thresh_pretrig);
  pL1CSCTPParams->setClctMinSeparation(m_clct_min_separation);

  // Set TMB parameters.
  pL1CSCTPParams->setTmbMpcBlockMe1a(m_tmb_mpc_block_me1a);
  pL1CSCTPParams->setTmbAlctTrigEnable(m_tmb_alct_trig_enable);
  pL1CSCTPParams->setTmbClctTrigEnable(m_tmb_clct_trig_enable);
  pL1CSCTPParams->setTmbMatchTrigEnable(m_tmb_match_trig_enable);
  pL1CSCTPParams->setTmbMatchTrigWindowSize(m_tmb_match_trig_window_size);
  pL1CSCTPParams->setTmbTmbL1aWindowSize(m_tmb_tmb_l1a_window_size);

  //return pL1CSCTPProducer;
  return pL1CSCTPParams;
}

Member Data Documentation

ALCT configuration parameters.

Definition at line 37 of file L1CSCTriggerPrimitivesConfigProducer.h.

Referenced by L1CSCTriggerPrimitivesConfigProducer(), and produce().

CLCT configuration parameters.

Definition at line 44 of file L1CSCTriggerPrimitivesConfigProducer.h.

Referenced by L1CSCTriggerPrimitivesConfigProducer(), and produce().

TMB configuration parameters.

Definition at line 51 of file L1CSCTriggerPrimitivesConfigProducer.h.

Referenced by L1CSCTriggerPrimitivesConfigProducer(), and produce().