#include <CSCUpgradeMotherboard.h>
Public Member Functions | |
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) | |
void | debugLUTs () |
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 | setupGeometry () |
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 |
Static Public Member Functions | |
static bool | sortLCTsByGEMDphi (const CSCCorrelatedLCTDigi &, const CSCCorrelatedLCTDigi &) |
static bool | sortLCTsByQuality (const CSCCorrelatedLCTDigi &, const CSCCorrelatedLCTDigi &) |
Protected Member Functions | |
void | correlateLCTs (const CSCALCTDigi &bestALCT, const CSCALCTDigi &secondALCT, const CSCCLCTDigi &bestCLCT, const CSCCLCTDigi &secondCLCT, CSCCorrelatedLCTDigi &lct1, CSCCorrelatedLCTDigi &lct2) const |
void | setPrefIndex () |
Protected Member Functions inherited from CSCMotherboard | |
void | checkConfigParameters () |
CSCCorrelatedLCTDigi | constructLCTs (const CSCALCTDigi &aLCT, const CSCCLCTDigi &cLCT, int type, int trknmb) const |
void | correlateLCTs (const CSCALCTDigi &bestALCT, const CSCALCTDigi &secondALCT, const CSCCLCTDigi &bestCLCT, const CSCCLCTDigi &secondCLCT, int type) |
void | dumpConfigParams () const |
void | encodeHighMultiplicityBits (unsigned alctBits) |
unsigned int | encodePattern (const int clctPattern) const |
LCT_Quality | findQuality (const CSCALCTDigi &aLCT, const CSCCLCTDigi &cLCT) const |
LCT_QualityRun3 | findQualityRun3 (const CSCALCTDigi &aLCT, const CSCCLCTDigi &cLCT) const |
CSCALCTDigi | getBXShiftedALCT (const CSCALCTDigi &) const |
CSCCLCTDigi | getBXShiftedCLCT (const CSCCLCTDigi &) const |
Protected Member Functions inherited from CSCBaseboard | |
void | checkConfigParameters (unsigned int &var, const unsigned int var_max, const unsigned int var_def, const std::string &var_str) |
Base class for upgrade TMBs (MEX/1) chambers, that either run the upgrade CSC-only TMB algorithm or the CSC-GEM algorithm
Definition at line 35 of file CSCUpgradeMotherboard.h.
CSCUpgradeMotherboard::CSCUpgradeMotherboard | ( | unsigned | endcap, |
unsigned | station, | ||
unsigned | sector, | ||
unsigned | subsector, | ||
unsigned | chamber, | ||
const edm::ParameterSet & | conf | ||
) |
Definition at line 5 of file CSCUpgradeMotherboard.cc.
References CSCMotherboard::alctProc, relativeConstraints::chamber, CSCMotherboard::clct_to_alct, CSCMotherboard::clctProc, debug_luts, debug_matching, CSCMotherboard::drop_used_clcts, CSCBaseboard::enableAlctPhase2_, makeMuonMisalignmentScenario::endcap, Even, generator_, edm::ParameterSet::getParameter(), match_earliest_alct_only, match_earliest_clct_only, max_lcts, Odd, CSCBaseboard::runME11Up_, CSCBaseboard::runME21Up_, CSCBaseboard::runME31Up_, CSCBaseboard::runME41Up_, CSCBaseboard::runPhase2_, setPrefIndex(), relativeConstraints::station, CSCBaseboard::theChamber, theParity, CSCBaseboard::theRing, CSCBaseboard::theStation, tmb_cross_bx_algo, and CSCBaseboard::tmbParams_.
CSCUpgradeMotherboard::CSCUpgradeMotherboard | ( | ) |
Definition at line 53 of file CSCUpgradeMotherboard.cc.
References CSCBaseboard::runME11Up_, CSCBaseboard::runME21Up_, CSCBaseboard::runME31Up_, CSCBaseboard::runME41Up_, CSCBaseboard::runPhase2_, setPrefIndex(), CSCBaseboard::theRing, and CSCBaseboard::theStation.
|
override |
Definition at line 277 of file CSCUpgradeMotherboard.cc.
void CSCUpgradeMotherboard::clear | ( | void | ) |
Definition at line 332 of file CSCUpgradeMotherboard.cc.
References allLCTs, LCTContainer::clear(), and CSCMotherboard::clear().
Referenced by CSCMotherboardME11::clear(), CSCGEMMotherboard::clear(), and run().
Definition at line 122 of file CSCUpgradeMotherboard.h.
References AlCaHLTBitMon_ParallelJobs::p, and submitPVResolutionJobs::q.
Referenced by intersection().
|
protected |
Definition at line 222 of file CSCUpgradeMotherboard.cc.
References CSCMotherboard::alct_trig_enable, CSCCorrelatedLCTDigi::ALCTCLCT, CSCMotherboard::clct_trig_enable, CSCMotherboard::constructLCTs(), CSCALCTDigi::isValid(), CSCCLCTDigi::isValid(), CSCMotherboard::match_trig_enable, and or.
Referenced by run().
void CSCUpgradeMotherboard::debugLUTs | ( | ) |
Definition at line 302 of file CSCUpgradeMotherboard.cc.
References debug_luts, generator_, CSCBaseboard::theEndcap, CSCBaseboard::theSector, CSCBaseboard::theStation, CSCBaseboard::theSubsector, and CSCBaseboard::theTrigChamber.
Referenced by CSCGEMMotherboardME11::run(), and CSCGEMMotherboardME21::run().
enum CSCPart CSCUpgradeMotherboard::getCSCPart | ( | int | keystrip | ) | const |
get CSCPart from HS, station, ring number
Definition at line 279 of file CSCUpgradeMotherboard.cc.
References CSCBaseboard::gangedME1a_, CSCConstants::MAX_HALF_STRIP_ME1B, ME11, ME1A, ME1Ag, ME1B, ME21, ME31, ME41, or, CSCBaseboard::theRing, and CSCBaseboard::theStation.
Referenced by CSCGEMMotherboard::bestMatchingPad(), CSCGEMMotherboard::constructLCTsGEM(), and CSCGEMMotherboard::matchingPads().
void CSCUpgradeMotherboard::intersection | ( | const S & | d1, |
const S & | d2, | ||
S & | result | ||
) | const |
Definition at line 127 of file CSCUpgradeMotherboard.h.
References compare(), d1, AlCaHLTBitMon_ParallelJobs::p, submitPVResolutionJobs::q, and mps_fire::result.
Referenced by CSCGEMMotherboard::matchingPads().
|
overridevirtual |
Returns vector of correlated LCTs in the read-out time window, if any.
Reimplemented from CSCMotherboard.
Definition at line 262 of file CSCUpgradeMotherboard.cc.
References allLCTs, LCTContainer::getMatched(), CSCMotherboard::qualityControl_, mps_fire::result, sortLCTs(), sortLCTsByQuality(), and tmb_cross_bx_algo.
Referenced by CSCTriggerPrimitivesBuilder::build(), CSCMotherboardME11::readoutLCTs1a(), CSCMotherboardME11::readoutLCTs1b(), and run().
|
overridevirtual |
Run function for normal usage. Runs cathode and anode LCT processors, takes results and correlates into CorrelatedLCT.
Reimplemented from CSCMotherboard.
Definition at line 71 of file CSCUpgradeMotherboard.cc.
References CSCConstants::ALCT_CLCT_OFFSET, CSCMotherboard::alctProc, CSCMotherboard::alctV, allLCTs, l1GtPatternGenerator_cfi::bx, HltBtagPostValidation_cff::c, CSCMotherboard::clctProc, CSCMotherboard::clctV, LCTContainer::clear(), clear(), correlateLCTs(), CSCBaseboard::cscGeometry_, CSCBaseboard::cscId_, debug_matching, CSCMotherboard::drop_used_clcts, CSCMotherboard::encodeHighMultiplicityBits(), dqmdumpme::first, mps_fire::i, CSCBaseboard::infoV, LogDebug, LogTrace, 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, dqmiodumpmetadata::n, AlCaHLTBitMon_ParallelJobs::p, pref, readoutLCTs(), and tmb_cross_bx_algo.
Referenced by CSCTriggerPrimitivesBuilder::build().
|
protected |
Definition at line 324 of file CSCUpgradeMotherboard.cc.
References visualization-live-secondInstance_cfg::m, CSCMotherboard::match_trig_window_size, and pref.
Referenced by CSCUpgradeMotherboard().
void CSCUpgradeMotherboard::setupGeometry | ( | ) |
Definition at line 322 of file CSCUpgradeMotherboard.cc.
References CSCBaseboard::cscGeometry_, and generator_.
Referenced by CSCGEMMotherboard::setupGeometry().
void CSCUpgradeMotherboard::sortLCTs | ( | std::vector< CSCCorrelatedLCTDigi > & | lcts, |
bool(*)(const CSCCorrelatedLCTDigi &, const CSCCorrelatedLCTDigi &) | sorter | ||
) | const |
Definition at line 315 of file CSCUpgradeMotherboard.cc.
References max_lcts, and MCScenario_CRAFT1_22X::sorter().
Referenced by CSCGEMMotherboardME21::readoutLCTs(), readoutLCTs(), and CSCGEMMotherboardME11::sortLCTs().
|
static |
Definition at line 311 of file CSCUpgradeMotherboard.cc.
Referenced by CSCGEMMotherboardME21::readoutLCTs(), and CSCGEMMotherboardME11::readoutLCTsME11().
|
static |
Methods to sort the LCTs
Definition at line 307 of file CSCUpgradeMotherboard.cc.
References CSCCorrelatedLCTDigi::getQuality().
Referenced by CSCGEMMotherboardME21::readoutLCTs(), readoutLCTs(), and CSCGEMMotherboardME11::readoutLCTsME11().
|
protected |
for the case when more than 2 LCTs/BX are allowed; maximum match window = 15
Definition at line 98 of file CSCUpgradeMotherboard.h.
Referenced by clear(), CSCMotherboardME11::getLCTs1a(), CSCMotherboardME11::getLCTs1b(), CSCGEMMotherboardME21::readoutLCTs(), readoutLCTs(), CSCGEMMotherboardME11::readoutLCTsME11(), CSCGEMMotherboardME21::run(), CSCGEMMotherboardME11::run(), CSCMotherboardME11::run(), run(), and CSCGEMMotherboardME11::sortLCTs().
|
protected |
Definition at line 118 of file CSCUpgradeMotherboard.h.
Referenced by CSCUpgradeMotherboard(), and debugLUTs().
|
protected |
Definition at line 115 of file CSCUpgradeMotherboard.h.
Referenced by CSCUpgradeMotherboard(), CSCGEMMotherboardME21::run(), CSCGEMMotherboardME11::run(), and run().
|
protected |
Definition at line 100 of file CSCUpgradeMotherboard.h.
Referenced by CSCUpgradeMotherboard(), debugLUTs(), setupGeometry(), and CSCGEMMotherboard::setupGeometry().
|
protected |
Definition at line 105 of file CSCUpgradeMotherboard.h.
Referenced by CSCUpgradeMotherboard(), and CSCMotherboardME11::run().
|
protected |
Definition at line 106 of file CSCUpgradeMotherboard.h.
Referenced by CSCUpgradeMotherboard(), CSCGEMMotherboardME11::run(), CSCGEMMotherboardME21::run(), CSCMotherboardME11::run(), and run().
|
protected |
maximum lcts per BX in MEX1: 2, 3, 4 or 999
Definition at line 112 of file CSCUpgradeMotherboard.h.
Referenced by CSCUpgradeMotherboard(), CSCGEMMotherboardME11::sortLCTs(), and sortLCTs().
|
protected |
"preferential" index array in matching window for cross-BX sorting
Definition at line 103 of file CSCUpgradeMotherboard.h.
Referenced by CSCGEMMotherboardME21::run(), CSCMotherboardME11::run(), run(), and setPrefIndex().
|
protected |
Definition at line 92 of file CSCUpgradeMotherboard.h.
Referenced by CSCGEMMotherboard::constructLCTsGEM(), CSCGEMMotherboard::CSCGEMMotherboard(), CSCUpgradeMotherboard(), CSCGEMMotherboard::getPad(), CSCGEMMotherboard::getRolls(), CSCGEMMotherboard::isPadInOverlap(), and CSCGEMMotherboard::matchingPads().
|
protected |
Definition at line 109 of file CSCUpgradeMotherboard.h.
Referenced by CSCUpgradeMotherboard(), CSCGEMMotherboardME21::readoutLCTs(), readoutLCTs(), CSCGEMMotherboardME11::readoutLCTsME11(), CSCGEMMotherboardME21::run(), CSCGEMMotherboardME11::run(), CSCMotherboardME11::run(), and run().