#include <CSCGEMMotherboard.h>
Classes | |
struct | RunContext |
Public Types | |
typedef std::vector< GEMInternalCluster > | GEMInternalClusters |
Public Member Functions | |
void | clear () |
std::shared_ptr< GEMClusterProcessor > | clusterProc () const |
CSCGEMMotherboard (unsigned endcap, unsigned station, unsigned sector, unsigned subsector, unsigned chamber, CSCBaseboard::Parameters &conf) | |
void | run (const CSCWireDigiCollection *wiredc, const CSCComparatorDigiCollection *compdc, const GEMPadDigiClusterCollection *gemPads, RunContext const &) |
uint16_t | Run2PatternConverter (const int slope) const |
~CSCGEMMotherboard () override | |
Public Member Functions inherited from CSCMotherboard | |
CSCMotherboard (unsigned endcap, unsigned station, unsigned sector, unsigned subsector, unsigned chamber, CSCBaseboard::Parameters &conf) | |
virtual std::vector< CSCCorrelatedLCTDigi > | readoutLCTs () const |
std::vector< CSCShowerDigi > | readoutShower () const |
void | run (const CSCWireDigiCollection *wiredc, const CSCComparatorDigiCollection *compdc, const RunContext &) |
void | selectLCTs () |
~CSCMotherboard () override=default | |
Public Member Functions inherited from CSCBaseboard | |
CSCBaseboard (unsigned endcap, unsigned station, unsigned sector, unsigned subsector, unsigned chamber, Parameters &conf) | |
CSCBaseboard () | |
std::string | getCSCName () const |
CSCDetId | id () const |
virtual | ~CSCBaseboard ()=default |
Private Attributes | |
unsigned | alct_gem_bx_window_size_ |
bool | assign_gem_csc_bending_ |
bool | build_lct_from_alct_gem_ |
bool | build_lct_from_clct_gem_ |
unsigned | clct_gem_bx_window_size_ |
std::shared_ptr< GEMClusterProcessor > | clusterProc_ |
std::map< int, GEMInternalClusters > | clusters_ |
std::unique_ptr< CSCGEMMatcher > | cscGEMMatcher_ |
bool | drop_low_quality_alct_ |
bool | drop_low_quality_clct_ |
bool | drop_low_quality_clct_me1a_ |
unsigned | gemId |
bool | hasGE21Geometry16Partitions_ |
Additional Inherited Members | |
Public Attributes inherited from CSCMotherboard | |
std::unique_ptr< CSCAnodeLCTProcessor > | alctProc |
std::unique_ptr< CSCCathodeLCTProcessor > | clctProc |
Protected Member Functions inherited from CSCMotherboard | |
bool | doesALCTCrossCLCT (const CSCALCTDigi &, const CSCCLCTDigi &) const |
unsigned int | encodePattern (const int clctPattern) const |
CSCALCTDigi | getBXShiftedALCT (const CSCALCTDigi &) const |
CSCCLCTDigi | getBXShiftedCLCT (const CSCCLCTDigi &) const |
unsigned int | match_trig_enable () const |
unsigned int | match_trig_window_size () const |
int | preferred_bx_match (unsigned int index) const |
std::tuple< std::vector< CSCALCTDigi >, std::vector< CSCCLCTDigi > > | runCommon (const CSCWireDigiCollection *wiredc, const CSCComparatorDigiCollection *compdc, const RunContext &context) |
bool | sort_clct_bx () const |
void | sortCLCTByQualBend (int alct_bx, std::vector< unsigned > &clctBxVector) |
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) |
const CSCChamber * | cscChamber (CSCGeometry const &) const |
Protected Attributes inherited from CSCMotherboard | |
LCTContainer | allLCTs_ |
std::unique_ptr< LCTQualityAssignment > | qualityAssignment_ |
Protected Attributes inherited from CSCBaseboard | |
CSCDetId | cscId_ |
bool | disableME1a_ |
bool | enableAlctPhase2_ |
bool | gangedME1a_ |
int | infoV |
bool | isME11_ |
bool | isME12_ |
bool | isME13_ |
bool | isME21_ |
bool | isME22_ |
bool | isME31_ |
bool | isME32_ |
bool | isME41_ |
bool | isME42_ |
bool | run3_ |
bool | runCCLUT_ |
bool | runCCLUT_OTMB_ |
bool | runCCLUT_TMB_ |
bool | runME11ILT_ |
bool | runME11Up_ |
bool | runME21ILT_ |
bool | runME21Up_ |
bool | runME31Up_ |
bool | runME41Up_ |
bool | runPhase2_ |
unsigned | theChamber |
std::string | theCSCName_ |
const unsigned | theEndcap |
int | theRegion |
unsigned | theRing |
const unsigned | theSector |
const unsigned | theStation |
const unsigned | theSubsector |
const unsigned | theTrigChamber |
Class for TMBs for the GEM-CSC integrated local trigger. Inherits from CSCMotherboard. Provides functionality to match ALCT/CLCT to GEM single clusters or coincidences of clusters
Definition at line 21 of file CSCGEMMotherboard.h.
typedef std::vector<GEMInternalCluster> CSCGEMMotherboard::GEMInternalClusters |
Definition at line 23 of file CSCGEMMotherboard.h.
CSCGEMMotherboard::CSCGEMMotherboard | ( | unsigned | endcap, |
unsigned | station, | ||
unsigned | sector, | ||
unsigned | subsector, | ||
unsigned | chamber, | ||
CSCBaseboard::Parameters & | conf | ||
) |
Definition at line 4 of file CSCGEMMotherboard.cc.
References alct_gem_bx_window_size_, assign_gem_csc_bending_, clct_gem_bx_window_size_, clusterProc_, CSCBaseboard::Parameters::conf(), cscGEMMatcher_, drop_low_quality_clct_me1a_, gemId, edm::ParameterSet::getParameter(), CSCBaseboard::isME11_, CSCBaseboard::isME21_, CSCMotherboard::qualityAssignment_, DetId::rawId(), CSCBaseboard::runME11ILT_, CSCBaseboard::runME21ILT_, CSCBaseboard::theChamber, CSCBaseboard::theRegion, CSCBaseboard::theStation, and CSCBaseboard::Parameters::tmbParams().
|
override |
Definition at line 43 of file CSCGEMMotherboard.cc.
void CSCGEMMotherboard::clear | ( | void | ) |
Definition at line 45 of file CSCGEMMotherboard.cc.
References clusterProc_.
Referenced by run().
|
inline |
Definition at line 58 of file CSCGEMMotherboard.h.
References clusterProc_.
Referenced by CSCTriggerPrimitivesBuilder::build().
|
private |
Definition at line 497 of file CSCGEMMotherboard.cc.
References funct::abs(), CSCCorrelatedLCTDigi::ALCTCLCT2GEM, CSCCorrelatedLCTDigi::ALCTCLCTGEM, assign_gem_csc_bending_, cscGEMMatcher_, CSCMotherboard::encodePattern(), mixOne_premix_on_sim_cfi::gem, CSCCLCTDigi::getBend(), CSCALCTDigi::getBX(), CSCMotherboard::getBXShiftedALCT(), CSCMotherboard::getBXShiftedCLCT(), CSCCLCTDigi::getEighthStripBit(), CSCCLCTDigi::getKeyStrip(), CSCALCTDigi::getKeyWG(), CSCCLCTDigi::getPattern(), CSCCLCTDigi::getQuartStripBit(), CSCCLCTDigi::getRun3Pattern(), CSCCLCTDigi::getSlope(), CSCMotherboard::qualityAssignment_, Run2PatternConverter(), CSCBaseboard::runCCLUT_, CSCCorrelatedLCTDigi::setALCT(), CSCCorrelatedLCTDigi::setBend(), CSCCorrelatedLCTDigi::setBX(), CSCCorrelatedLCTDigi::setBX0(), CSCCorrelatedLCTDigi::setCLCT(), CSCCorrelatedLCTDigi::setCSCID(), CSCCorrelatedLCTDigi::setEighthStripBit(), CSCCorrelatedLCTDigi::setGEM1(), CSCCorrelatedLCTDigi::setGEM2(), CSCCorrelatedLCTDigi::setMPCLink(), CSCCorrelatedLCTDigi::setPattern(), CSCCorrelatedLCTDigi::setQuality(), CSCCorrelatedLCTDigi::setQuartStripBit(), CSCCorrelatedLCTDigi::setRun3(), CSCCorrelatedLCTDigi::setRun3Pattern(), CSCCorrelatedLCTDigi::setSlope(), CSCCorrelatedLCTDigi::setStrip(), CSCCorrelatedLCTDigi::setSyncErr(), CSCCorrelatedLCTDigi::setTrknmb(), CSCCorrelatedLCTDigi::setType(), CSCCorrelatedLCTDigi::setValid(), CSCCorrelatedLCTDigi::setWireGroup(), slope, and CSCBaseboard::theTrigChamber.
Referenced by correlateLCTsGEM().
|
private |
Definition at line 541 of file CSCGEMMotherboard.cc.
References CSCCorrelatedLCTDigi::ALCTCLCT, CSCMotherboard::encodePattern(), CSCCLCTDigi::getBend(), CSCALCTDigi::getBX(), CSCMotherboard::getBXShiftedALCT(), CSCMotherboard::getBXShiftedCLCT(), CSCCLCTDigi::getEighthStripBit(), CSCCLCTDigi::getKeyStrip(), CSCALCTDigi::getKeyWG(), CSCCLCTDigi::getPattern(), CSCCLCTDigi::getQuartStripBit(), CSCCLCTDigi::getRun3Pattern(), CSCCLCTDigi::getSlope(), CSCMotherboard::qualityAssignment_, CSCBaseboard::runCCLUT_, CSCCorrelatedLCTDigi::setALCT(), CSCCorrelatedLCTDigi::setBend(), CSCCorrelatedLCTDigi::setBX(), CSCCorrelatedLCTDigi::setBX0(), CSCCorrelatedLCTDigi::setCLCT(), CSCCorrelatedLCTDigi::setCSCID(), CSCCorrelatedLCTDigi::setEighthStripBit(), CSCCorrelatedLCTDigi::setMPCLink(), CSCCorrelatedLCTDigi::setPattern(), CSCCorrelatedLCTDigi::setQuality(), CSCCorrelatedLCTDigi::setQuartStripBit(), CSCCorrelatedLCTDigi::setRun3(), CSCCorrelatedLCTDigi::setRun3Pattern(), CSCCorrelatedLCTDigi::setSlope(), CSCCorrelatedLCTDigi::setStrip(), CSCCorrelatedLCTDigi::setSyncErr(), CSCCorrelatedLCTDigi::setTrknmb(), CSCCorrelatedLCTDigi::setType(), CSCCorrelatedLCTDigi::setValid(), CSCCorrelatedLCTDigi::setWireGroup(), and CSCBaseboard::theTrigChamber.
|
private |
Definition at line 570 of file CSCGEMMotherboard.cc.
References funct::abs(), assign_gem_csc_bending_, CSCCorrelatedLCTDigi::CLCT2GEM, cscGEMMatcher_, CSCMotherboard::encodePattern(), mixOne_premix_on_sim_cfi::gem, CSCCLCTDigi::getBend(), CSCMotherboard::getBXShiftedCLCT(), CSCCLCTDigi::getEighthStripBit(), CSCCLCTDigi::getKeyStrip(), CSCCLCTDigi::getPattern(), CSCCLCTDigi::getQuartStripBit(), CSCCLCTDigi::getRun3Pattern(), CSCCLCTDigi::getSlope(), conifer::pow(), CSCMotherboard::qualityAssignment_, Run2PatternConverter(), CSCBaseboard::runCCLUT_, CSCCorrelatedLCTDigi::setBend(), CSCCorrelatedLCTDigi::setBX(), CSCCorrelatedLCTDigi::setBX0(), CSCCorrelatedLCTDigi::setCLCT(), CSCCorrelatedLCTDigi::setCSCID(), CSCCorrelatedLCTDigi::setEighthStripBit(), CSCCorrelatedLCTDigi::setGEM1(), CSCCorrelatedLCTDigi::setGEM2(), CSCCorrelatedLCTDigi::setMPCLink(), CSCCorrelatedLCTDigi::setPattern(), CSCCorrelatedLCTDigi::setQuality(), CSCCorrelatedLCTDigi::setQuartStripBit(), CSCCorrelatedLCTDigi::setRun3(), CSCCorrelatedLCTDigi::setRun3Pattern(), CSCCorrelatedLCTDigi::setSlope(), CSCCorrelatedLCTDigi::setStrip(), CSCCorrelatedLCTDigi::setSyncErr(), CSCCorrelatedLCTDigi::setTrknmb(), CSCCorrelatedLCTDigi::setType(), CSCCorrelatedLCTDigi::setValid(), CSCCorrelatedLCTDigi::setWireGroup(), slope, and CSCBaseboard::theTrigChamber.
|
private |
Definition at line 608 of file CSCGEMMotherboard.cc.
References CSCCorrelatedLCTDigi::ALCT2GEM, mixOne_premix_on_sim_cfi::gem, CSCALCTDigi::getBX(), CSCMotherboard::getBXShiftedALCT(), CSCALCTDigi::getKeyWG(), CSCMotherboard::qualityAssignment_, CSCBaseboard::runCCLUT_, CSCCorrelatedLCTDigi::setALCT(), CSCCorrelatedLCTDigi::setBend(), CSCCorrelatedLCTDigi::setBX(), CSCCorrelatedLCTDigi::setBX0(), CSCCorrelatedLCTDigi::setCSCID(), CSCCorrelatedLCTDigi::setEighthStripBit(), CSCCorrelatedLCTDigi::setGEM1(), CSCCorrelatedLCTDigi::setGEM2(), CSCCorrelatedLCTDigi::setMPCLink(), CSCCorrelatedLCTDigi::setPattern(), CSCCorrelatedLCTDigi::setQuality(), CSCCorrelatedLCTDigi::setQuartStripBit(), CSCCorrelatedLCTDigi::setRun3(), CSCCorrelatedLCTDigi::setRun3Pattern(), CSCCorrelatedLCTDigi::setSlope(), CSCCorrelatedLCTDigi::setStrip(), CSCCorrelatedLCTDigi::setSyncErr(), CSCCorrelatedLCTDigi::setTrknmb(), CSCCorrelatedLCTDigi::setType(), CSCCorrelatedLCTDigi::setValid(), CSCCorrelatedLCTDigi::setWireGroup(), and CSCBaseboard::theTrigChamber.
|
private |
Definition at line 379 of file CSCGEMMotherboard.cc.
References cscdqm::ALCT, haddnano::cl, bsc_activity_cfg::clusters, constructLCTsGEM(), cscGEMMatcher_, GEMInternalCluster::isValid(), CSCCLCTDigi::isValid(), and LogTrace.
Referenced by matchALCTCLCTGEM().
|
private |
Definition at line 412 of file CSCGEMMotherboard.cc.
References cscdqm::ALCT, constructLCTsGEM(), CSCMotherboard::doesALCTCrossCLCT(), drop_low_quality_alct_, drop_low_quality_clct_, drop_low_quality_clct_me1a_, CSCCLCTDigi::getKeyStrip(), CSCCLCTDigi::getQuality(), CSCBaseboard::isME11_, CSCCLCTDigi::isValid(), LogTrace, CSCMotherboard::match_trig_enable(), CSCConstants::MAX_HALF_STRIP_ME1B, and or.
|
private |
Definition at line 437 of file CSCGEMMotherboard.cc.
References haddnano::cl, bsc_activity_cfg::clusters, constructLCTsGEM(), cscGEMMatcher_, drop_low_quality_clct_, drop_low_quality_clct_me1a_, CSCCLCTDigi::getKeyStrip(), CSCCLCTDigi::getQuality(), GEMInternalCluster::isCoincidence(), CSCBaseboard::isME11_, CSCCLCTDigi::isValid(), LogTrace, CSCConstants::MAX_HALF_STRIP_ME1B, and or.
|
private |
Definition at line 470 of file CSCGEMMotherboard.cc.
References cscdqm::ALCT, haddnano::cl, bsc_activity_cfg::clusters, constructLCTsGEM(), cscGEMMatcher_, drop_low_quality_alct_, GEMInternalCluster::isCoincidence(), LogTrace, and or.
|
private |
Definition at line 103 of file CSCGEMMotherboard.cc.
References CSCConstants::ALCT_CLCT_OFFSET, alct_gem_bx_window_size_, CSCMotherboard::alctProc, GEMClusterProcessor::AllClusters, CSCMotherboard::allLCTs_, build_lct_from_alct_gem_, build_lct_from_clct_gem_, CSCMotherboard::clctProc, clusterProc_, GEMClusterProcessor::CoincidenceClusters, correlateLCTsGEM(), CSCCorrelatedLCTDigi::getQuality(), hasGE21Geometry16Partitions_, CSCBaseboard::infoV, CSCBaseboard::isME21_, CSCALCTDigi::isValid(), sistrip::SpyUtilities::isValid(), CSCCLCTDigi::isValid(), CSCCorrelatedLCTDigi::isValid(), LogTrace, CSCMotherboard::match_trig_window_size(), CSCConstants::MAX_ALCT_TBINS, CSCConstants::MAX_CLCT_TBINS, CSCConstants::MAX_LCTS_PER_CSC, SiStripPI::min, or, CSCMotherboard::preferred_bx_match(), CSCCorrelatedLCTDigi::setTrknmb(), CSCMotherboard::sort_clct_bx(), CSCMotherboard::sortCLCTByQualBend(), and sortLCTs().
Referenced by run().
void CSCGEMMotherboard::run | ( | const CSCWireDigiCollection * | wiredc, |
const CSCComparatorDigiCollection * | compdc, | ||
const GEMPadDigiClusterCollection * | gemPads, | ||
RunContext const & | context | ||
) |
Definition at line 67 of file CSCGEMMotherboard.cc.
References clear(), clusterProc_, visDQMUpload::context, hasGE21Geometry16Partitions_, matchALCTCLCTGEM(), CSCMotherboard::runCommon(), and CSCMotherboard::selectLCTs().
Referenced by CSCTriggerPrimitivesBuilder::build().
uint16_t CSCGEMMotherboard::Run2PatternConverter | ( | const int | slope | ) | const |
Definition at line 48 of file CSCGEMMotherboard.cc.
References funct::abs(), Validation_hcalonly_cfi::sign, and slope.
Referenced by constructLCTsGEM().
|
private |
Definition at line 637 of file CSCGEMMotherboard.cc.
References CSCCorrelatedLCTDigi::getQuality(), CSCCorrelatedLCTDigi::getSlope(), and jetUpdater_cfi::sort.
Referenced by matchALCTCLCTGEM().
|
private |
Definition at line 144 of file CSCGEMMotherboard.h.
Referenced by CSCGEMMotherboard(), and matchALCTCLCTGEM().
|
private |
Definition at line 148 of file CSCGEMMotherboard.h.
Referenced by constructLCTsGEM(), and CSCGEMMotherboard().
|
private |
Definition at line 140 of file CSCGEMMotherboard.h.
Referenced by matchALCTCLCTGEM().
|
private |
Definition at line 141 of file CSCGEMMotherboard.h.
Referenced by matchALCTCLCTGEM().
|
private |
Definition at line 145 of file CSCGEMMotherboard.h.
Referenced by CSCGEMMotherboard().
|
private |
Definition at line 131 of file CSCGEMMotherboard.h.
Referenced by clear(), clusterProc(), CSCGEMMotherboard(), matchALCTCLCTGEM(), and run().
|
private |
Definition at line 125 of file CSCGEMMotherboard.h.
|
private |
Definition at line 128 of file CSCGEMMotherboard.h.
Referenced by constructLCTsGEM(), correlateLCTsGEM(), and CSCGEMMotherboard().
|
private |
Definition at line 134 of file CSCGEMMotherboard.h.
Referenced by correlateLCTsGEM().
|
private |
Definition at line 135 of file CSCGEMMotherboard.h.
Referenced by correlateLCTsGEM().
|
private |
Definition at line 137 of file CSCGEMMotherboard.h.
Referenced by correlateLCTsGEM(), and CSCGEMMotherboard().
|
private |
Chamber id (trigger-type labels).
Definition at line 122 of file CSCGEMMotherboard.h.
Referenced by CSCGEMMotherboard().
|
private |
Definition at line 152 of file CSCGEMMotherboard.h.
Referenced by matchALCTCLCTGEM(), and run().