#include <CSCMotherboardME11.h>
Public Member Functions | |
void | clear () |
CSCMotherboardME11 () | |
CSCMotherboardME11 (unsigned endcap, unsigned station, unsigned sector, unsigned subsector, unsigned chamber, const edm::ParameterSet &conf) | |
std::vector< CSCCorrelatedLCTDigi > | getLCTs1a () const |
std::vector< CSCCorrelatedLCTDigi > | getLCTs1b () const |
std::vector< CSCCorrelatedLCTDigi > | readoutLCTs () const override |
std::vector< CSCCorrelatedLCTDigi > | readoutLCTs (int me1ab) const |
std::vector< CSCCorrelatedLCTDigi > | readoutLCTs1a () const |
std::vector< CSCCorrelatedLCTDigi > | readoutLCTs1b () const |
void | run (const CSCWireDigiCollection *wiredc, const CSCComparatorDigiCollection *compdc) override |
void | setConfigParameters (const CSCDBL1TPParameters *conf) |
~CSCMotherboardME11 () override | |
Public Member Functions inherited from CSCUpgradeMotherboard | |
void | clear () |
template<class S > | |
bool | compare (const S &p, const S &q) const |
CSCUpgradeMotherboard () | |
CSCUpgradeMotherboard (unsigned endcap, unsigned station, unsigned sector, unsigned subsector, unsigned chamber, const edm::ParameterSet &conf) | |
enum CSCPart | getCSCPart (int keystrip) const |
template<class S > | |
void | intersection (const S &d1, const S &d2, S &result) const |
std::vector< CSCCorrelatedLCTDigi > | readoutLCTs () const override |
void | run (const CSCWireDigiCollection *wiredc, const CSCComparatorDigiCollection *compdc) override |
void | sortLCTs (std::vector< CSCCorrelatedLCTDigi > &lcts, bool(*sorter)(const CSCCorrelatedLCTDigi &, const CSCCorrelatedLCTDigi &)) const |
~CSCUpgradeMotherboard () override | |
Public Member Functions inherited from CSCMotherboard | |
void | clear () |
CSCMotherboard () | |
CSCMotherboard (unsigned endcap, unsigned station, unsigned sector, unsigned subsector, unsigned chamber, const edm::ParameterSet &conf) | |
std::vector< CSCCorrelatedLCTDigi > | getLCTs () const |
void | setConfigParameters (const CSCDBL1TPParameters *conf) |
~CSCMotherboard () override=default | |
Public Member Functions inherited from CSCBaseboard | |
CSCBaseboard () | |
CSCBaseboard (unsigned endcap, unsigned station, unsigned sector, unsigned subsector, unsigned chamber, const edm::ParameterSet &conf) | |
std::string | getCSCName () const |
void | setCSCGeometry (const CSCGeometry *g) |
virtual | ~CSCBaseboard ()=default |
Private Types | |
enum | { ME1B = 1, ME1A = 4 } |
Private Member Functions | |
void | correlateLCTsME11 (const CSCALCTDigi &bestALCT, const CSCALCTDigi &secondALCT, const CSCCLCTDigi &bestCLCT, const CSCCLCTDigi &secondCLCT, CSCCorrelatedLCTDigi &lct1, CSCCorrelatedLCTDigi &lct2) const |
bool | doesALCTCrossCLCT (const CSCALCTDigi &a, const CSCCLCTDigi &c) const |
Private Attributes | |
std::unique_ptr< CSCMotherboardLUTME11 > | cscTmbLUT_ |
bool | ignoreAlctCrossClct |
Extended CSCMotherboard for ME11 TMB upgrade to handle ME1b and (primarily unganged) ME1a separately
Based on CSCMotherboard code
Definition at line 18 of file CSCMotherboardME11.h.
|
private |
CSCMotherboardME11::CSCMotherboardME11 | ( | unsigned | endcap, |
unsigned | station, | ||
unsigned | sector, | ||
unsigned | subsector, | ||
unsigned | chamber, | ||
const edm::ParameterSet & | conf | ||
) |
Normal constructor.
Definition at line 17 of file CSCMotherboardME11.cc.
References cscTmbLUT_, edm::ParameterSet::getParameter(), ignoreAlctCrossClct, CSCBaseboard::runME11Up_, CSCBaseboard::runPhase2_, and CSCBaseboard::tmbParams_.
CSCMotherboardME11::CSCMotherboardME11 | ( | ) |
Constructor for use during testing.
Definition at line 36 of file CSCMotherboardME11.cc.
References CSCBaseboard::runME11Up_, and CSCBaseboard::runPhase2_.
|
override |
void CSCMotherboardME11::clear | ( | void | ) |
Clears correlated LCT and passes clear signal on to cathode and anode LCT processors.
Definition at line 46 of file CSCMotherboardME11.cc.
References CSCUpgradeMotherboard::clear().
Referenced by run().
|
private |
Definition at line 333 of file CSCMotherboardME11.cc.
References CSCMotherboard::alct_trig_enable, CSCCorrelatedLCTDigi::ALCTCLCT, CSCMotherboard::clct_trig_enable, CSCALCTDigi::clear(), CSCCLCTDigi::clear(), CSCMotherboard::constructLCTs(), CSCBaseboard::cscId_, doesALCTCrossCLCT(), ignoreAlctCrossClct, CSCALCTDigi::isValid(), CSCCLCTDigi::isValid(), LogTrace, CSCMotherboard::match_trig_enable, and or.
Referenced by run().
|
private |
Definition at line 329 of file CSCMotherboardME11.cc.
References a, c, cscTmbLUT_, CSCBaseboard::gangedME1a_, and CSCBaseboard::theEndcap.
Referenced by correlateLCTsME11().
std::vector< CSCCorrelatedLCTDigi > CSCMotherboardME11::getLCTs1a | ( | ) | const |
Returns vectors of found correlated LCTs in ME1a and ME1b, if any.
Definition at line 309 of file CSCMotherboardME11.cc.
References CSCUpgradeMotherboard::allLCTs, l1GtPatternGenerator_cfi::bx, LCTContainer::data, CSCBaseboard::disableME1a_, CSCCorrelatedLCTDigi::getStrip(), mps_fire::i, CSCCorrelatedLCTDigi::isValid(), CSCMotherboard::match_trig_window_size, CSCConstants::MAX_HALF_STRIP_ME1B, CSCConstants::MAX_LCT_TBINS, CSCConstants::MAX_LCTS_PER_CSC, and CSCMotherboard::mpc_block_me1a.
Referenced by readoutLCTs().
std::vector< CSCCorrelatedLCTDigi > CSCMotherboardME11::getLCTs1b | ( | ) | const |
Definition at line 292 of file CSCMotherboardME11.cc.
References CSCUpgradeMotherboard::allLCTs, l1GtPatternGenerator_cfi::bx, LCTContainer::data, CSCCorrelatedLCTDigi::getStrip(), mps_fire::i, CSCCorrelatedLCTDigi::isValid(), CSCMotherboard::match_trig_window_size, CSCConstants::MAX_HALF_STRIP_ME1B, CSCConstants::MAX_LCT_TBINS, and CSCConstants::MAX_LCTS_PER_CSC.
Referenced by readoutLCTs().
|
override |
Definition at line 259 of file CSCUpgradeMotherboard.cc.
std::vector< CSCCorrelatedLCTDigi > CSCMotherboardME11::readoutLCTs | ( | int | me1ab | ) | const |
Definition at line 236 of file CSCMotherboardME11.cc.
References l1GtPatternGenerator_cfi::bx, CSCMotherboard::early_tbins, getLCTs1a(), getLCTs1b(), ME1A, ME1B, CSCMotherboard::qualityControl_, CSCMotherboard::readout_earliest_2, and CSCMotherboard::tmb_l1a_window_size.
std::vector< CSCCorrelatedLCTDigi > CSCMotherboardME11::readoutLCTs1a | ( | ) | const |
Definition at line 229 of file CSCMotherboardME11.cc.
References ME1A, and CSCUpgradeMotherboard::readoutLCTs().
Referenced by CSCTriggerPrimitivesBuilder::build().
std::vector< CSCCorrelatedLCTDigi > CSCMotherboardME11::readoutLCTs1b | ( | ) | const |
Definition at line 231 of file CSCMotherboardME11.cc.
References ME1B, and CSCUpgradeMotherboard::readoutLCTs().
Referenced by CSCTriggerPrimitivesBuilder::build().
|
overridevirtual |
Run function for normal usage. Runs cathode and anode LCT processors, takes results and correlates into CorrelatedLCT.
Reimplemented from CSCMotherboard.
Definition at line 55 of file CSCMotherboardME11.cc.
References CSCConstants::ALCT_CLCT_OFFSET, CSCMotherboard::alctProc, CSCMotherboard::alctV, CSCUpgradeMotherboard::allLCTs, b, l1GtPatternGenerator_cfi::bx, CSCMotherboard::clct_to_alct, CSCMotherboard::clctProc, CSCMotherboard::clctV, LCTContainer::clear(), clear(), correlateLCTsME11(), CSCBaseboard::cscGeometry_, CSCMotherboard::drop_used_alcts, CSCMotherboard::drop_used_clcts, CSCMotherboard::encodeHighMultiplicityBits(), mps_fire::i, CSCBaseboard::infoV, sistrip::SpyUtilities::isValid(), LogDebug, LogTrace, CSCUpgradeMotherboard::match_earliest_alct_only, CSCUpgradeMotherboard::match_earliest_clct_only, CSCMotherboard::match_trig_window_size, CSCConstants::MAX_ALCT_TBINS, CSCConstants::MAX_CLCT_TBINS, CSCConstants::MAX_LCT_TBINS, CSCConstants::MAX_LCTS_PER_CSC, or, CSCUpgradeMotherboard::pref, and CSCUpgradeMotherboard::tmb_cross_bx_algo.
Referenced by CSCTriggerPrimitivesBuilder::build().
void CSCMotherboardME11::setConfigParameters | ( | const CSCDBL1TPParameters * | conf | ) |
Set configuration parameters obtained via EventSetup mechanism.
Definition at line 49 of file CSCMotherboardME11.cc.
References CSCMotherboard::alctProc, and CSCMotherboard::clctProc.
|
private |
Definition at line 56 of file CSCMotherboardME11.h.
Referenced by CSCMotherboardME11(), and doesALCTCrossCLCT().
|
private |
Definition at line 70 of file CSCMotherboardME11.h.
Referenced by correlateLCTsME11(), and CSCMotherboardME11().