CMS 3D CMS Logo

List of all members | Public Member Functions | Protected Member Functions | Protected Attributes
CSCBaseboard Class Reference

#include <CSCBaseboard.h>

Inheritance diagram for CSCBaseboard:
CSCAnodeLCTProcessor CSCCathodeLCTProcessor CSCMotherboard LCTQualityControl CSCUpgradeAnodeLCTProcessor CSCUpgradeCathodeLCTProcessor CSCUpgradeMotherboard CSCGEMMotherboard CSCMotherboardME11 CSCGEMMotherboardME11 CSCGEMMotherboardME21

Public Member Functions

 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
 

Protected Member Functions

void checkConfigParameters (unsigned int &var, const unsigned int var_max, const unsigned int var_def, const std::string &var_str)
 

Protected Attributes

edm::ParameterSet alctParams_
 
edm::ParameterSet clctParams_
 
edm::ParameterSet commonParams_
 
const CSCChambercscChamber_
 
const CSCGeometrycscGeometry_
 
CSCDetId cscId_
 
bool disableME1a_
 
bool enableAlctPhase2_
 
bool gangedME1a_
 
int infoV
 
bool isME11_
 
bool isME21_
 
bool isME31_
 
bool isME41_
 
bool runCCLUT_
 
bool runME11ILT_
 
bool runME11Up_
 
bool runME21ILT_
 
bool runME21Up_
 
bool runME31Up_
 
bool runME41Up_
 
bool runPhase2_
 
unsigned theChamber
 
std::string theCSCName_
 
const unsigned theEndcap
 
unsigned theRegion
 
unsigned theRing
 
const unsigned theSector
 
const unsigned theStation
 
const unsigned theSubsector
 
const unsigned theTrigChamber
 
edm::ParameterSet tmbParams_
 

Detailed Description

Definition at line 14 of file CSCBaseboard.h.

Constructor & Destructor Documentation

◆ CSCBaseboard() [1/2]

CSCBaseboard::CSCBaseboard ( unsigned  endcap,
unsigned  station,
unsigned  sector,
unsigned  subsector,
unsigned  chamber,
const edm::ParameterSet conf 
)

Normal constructor.

Definition at line 3 of file CSCBaseboard.cc.

10  theRegion = (theEndcap == 1) ? 1 : -1;
11 
13 
15  isME11_ = (theStation == 1 && theRing == 1);
16  isME21_ = (theStation == 2 && theRing == 1);
17  isME31_ = (theStation == 3 && theRing == 1);
18  isME41_ = (theStation == 4 && theRing == 1);
19 
21 
22  commonParams_ = conf.getParameter<edm::ParameterSet>("commonParam");
23 
25 
26  runPhase2_ = commonParams_.getParameter<bool>("runPhase2");
27 
28  enableAlctPhase2_ = commonParams_.getParameter<bool>("enableAlctPhase2");
29 
30  disableME1a_ = commonParams_.getParameter<bool>("disableME1a");
31 
32  gangedME1a_ = commonParams_.getParameter<bool>("gangedME1a");
33 
34  runME11Up_ = commonParams_.getParameter<bool>("runME11Up");
35  runME21Up_ = commonParams_.getParameter<bool>("runME21Up");
36  runME31Up_ = commonParams_.getParameter<bool>("runME31Up");
37  runME41Up_ = commonParams_.getParameter<bool>("runME41Up");
38 
39  runME11ILT_ = commonParams_.getParameter<bool>("runME11ILT");
40  runME21ILT_ = commonParams_.getParameter<bool>("runME21ILT");
41 
42  runCCLUT_ = commonParams_.getParameter<bool>("runCCLUT");
43 
44  // general case
45  tmbParams_ = conf.getParameter<edm::ParameterSet>("tmbPhase1");
46  alctParams_ = conf.getParameter<edm::ParameterSet>("alctPhase1");
47  clctParams_ = conf.getParameter<edm::ParameterSet>("clctPhase1");
48 
49  const bool upgradeME11 = runPhase2_ and isME11_ and runME11Up_;
50  const bool upgradeME21 = runPhase2_ and isME21_ and runME21Up_;
51  const bool upgradeME31 = runPhase2_ and isME31_ and runME31Up_;
52  const bool upgradeME41 = runPhase2_ and isME41_ and runME41Up_;
53  const bool upgradeME = upgradeME11 or upgradeME21 or upgradeME31 or upgradeME41;
54 
55  if (upgradeME) {
56  tmbParams_ = conf.getParameter<edm::ParameterSet>("tmbPhase2");
57  clctParams_ = conf.getParameter<edm::ParameterSet>("clctPhase2");
58  // upgrade ME1/1
59  if (upgradeME11) {
60  // do not run the Phase-2 ALCT for Run-3
61  if (enableAlctPhase2_) {
62  alctParams_ = conf.getParameter<edm::ParameterSet>("alctPhase2");
63  }
64 
65  if (runME11ILT_) {
66  tmbParams_ = conf.getParameter<edm::ParameterSet>("tmbPhase2GE11");
67  clctParams_ = conf.getParameter<edm::ParameterSet>("clctPhase2GEM");
68  }
69  }
70  // upgrade ME2/1
71  if (upgradeME21 and runME21ILT_) {
72  tmbParams_ = conf.getParameter<edm::ParameterSet>("tmbPhase2GE21");
73  clctParams_ = conf.getParameter<edm::ParameterSet>("clctPhase2GEM");
74  alctParams_ = conf.getParameter<edm::ParameterSet>("alctPhase2GEM");
75  }
76  }
77 }

References alctParams_, CSCTriggerNumbering::chamberFromTriggerLabels(), CSCDetId::chamberName(), clctParams_, commonParams_, cscId_, disableME1a_, enableAlctPhase2_, gangedME1a_, edm::ParameterSet::getParameter(), isME11_, isME21_, isME31_, isME41_, or, CSCTriggerNumbering::ringFromTriggerLabels(), runCCLUT_, runME11ILT_, runME11Up_, runME21ILT_, runME21Up_, runME31Up_, runME41Up_, runPhase2_, theChamber, theCSCName_, theEndcap, theRegion, theRing, theSector, theStation, theSubsector, theTrigChamber, and tmbParams_.

◆ CSCBaseboard() [2/2]

CSCBaseboard::CSCBaseboard ( )

Constructor for use during testing.

Definition at line 79 of file CSCBaseboard.cc.

80  theRing = 1;
81  theChamber = 1;
82  runPhase2_ = false;
83  disableME1a_ = false;
84  gangedME1a_ = false;
85 }

References disableME1a_, gangedME1a_, runPhase2_, theChamber, and theRing.

◆ ~CSCBaseboard()

virtual CSCBaseboard::~CSCBaseboard ( )
virtualdefault

Default destructor.

Member Function Documentation

◆ checkConfigParameters()

void CSCBaseboard::checkConfigParameters ( unsigned int &  var,
const unsigned int  var_max,
const unsigned int  var_def,
const std::string &  var_str 
)
protected

Definition at line 92 of file CSCBaseboard.cc.

95  {
96  // Make sure that the parameter values are within the allowed range.
97  if (var >= var_max) {
98  edm::LogError("CSCConfigError") << "+++ Value of " + var_str + ", " << var << ", exceeds max allowed, " << var - 1
99  << " +++\n"
100  << "+++ Try to proceed with the default value, " + var_str + "=" << var_def
101  << " +++\n";
102  var = var_def;
103  }
104 }

References trigObjTnPSource_cfi::var.

Referenced by CSCCathodeLCTProcessor::checkConfigParameters(), CSCMotherboard::checkConfigParameters(), and CSCAnodeLCTProcessor::checkConfigParameters().

◆ getCSCName()

std::string CSCBaseboard::getCSCName ( ) const
inline

Definition at line 32 of file CSCBaseboard.h.

32 { return theCSCName_; }

References theCSCName_.

Referenced by CSCTriggerPrimitivesBuilder::build().

◆ setCSCGeometry()

void CSCBaseboard::setCSCGeometry ( const CSCGeometry g)

Definition at line 87 of file CSCBaseboard.cc.

87  {
88  cscGeometry_ = g;
90 }

References CSCGeometry::chamber(), cscChamber_, cscGeometry_, cscId_, and g.

Referenced by CSCTriggerPrimitivesBuilder::build().

Member Data Documentation

◆ alctParams_

edm::ParameterSet CSCBaseboard::alctParams_
protected

Definition at line 75 of file CSCBaseboard.h.

Referenced by CSCAnodeLCTProcessor::CSCAnodeLCTProcessor(), and CSCBaseboard().

◆ clctParams_

edm::ParameterSet CSCBaseboard::clctParams_
protected

◆ commonParams_

edm::ParameterSet CSCBaseboard::commonParams_
protected

Definition at line 69 of file CSCBaseboard.h.

Referenced by CSCBaseboard().

◆ cscChamber_

const CSCChamber* CSCBaseboard::cscChamber_
protected

◆ cscGeometry_

const CSCGeometry* CSCBaseboard::cscGeometry_
protected

◆ cscId_

CSCDetId CSCBaseboard::cscId_
protected

◆ disableME1a_

bool CSCBaseboard::disableME1a_
protected

Phase2: special configuration parameters for ME1a treatment

Definition at line 88 of file CSCBaseboard.h.

Referenced by CSCBaseboard(), CSCCathodeLCTProcessor::getDigis(), CSCAnodeLCTProcessor::getDigis(), CSCMotherboardME11::getLCTs1a(), and CSCCathodeLCTProcessor::run().

◆ enableAlctPhase2_

bool CSCBaseboard::enableAlctPhase2_
protected

◆ gangedME1a_

bool CSCBaseboard::gangedME1a_
protected

◆ infoV

int CSCBaseboard::infoV
protected

Verbosity level: 0: no print (default). 1: print only ALCTs found. 2: info at every step of the algorithm. 3: add special-purpose prints.

Definition at line 63 of file CSCBaseboard.h.

Referenced by CSCAnodeLCTProcessor::accelMode(), CSCAnodeLCTProcessor::bestTrackSelector(), CSCMotherboard::correlateLCTs(), CSCAnodeLCTProcessor::CSCAnodeLCTProcessor(), CSCCathodeLCTProcessor::CSCCathodeLCTProcessor(), CSCMotherboard::CSCMotherboard(), CSCUpgradeCathodeLCTProcessor::findLCTs(), CSCCathodeLCTProcessor::findLCTs(), CSCCathodeLCTProcessor::getDigis(), CSCAnodeLCTProcessor::getDigis(), CSCUpgradeAnodeLCTProcessor::ghostCancellationLogic(), CSCAnodeLCTProcessor::ghostCancellationLogic(), CSCUpgradeAnodeLCTProcessor::ghostCancellationLogicOneWire(), CSCAnodeLCTProcessor::ghostCancellationLogicOneWire(), CSCAnodeLCTProcessor::lctSearch(), CSCAnodeLCTProcessor::patternDetection(), CSCCathodeLCTProcessor::patternFinding(), CSCUpgradeCathodeLCTProcessor::preTrigger(), CSCCathodeLCTProcessor::preTrigger(), CSCAnodeLCTProcessor::preTrigger(), CSCCathodeLCTProcessor::pulseExtension(), CSCAnodeLCTProcessor::pulseExtension(), CSCCathodeLCTProcessor::readComparatorDigis(), CSCAnodeLCTProcessor::readoutALCTs(), CSCCathodeLCTProcessor::readoutCLCTs(), CSCMotherboard::readoutLCTs(), CSCAnodeLCTProcessor::readWireDigis(), CSCGEMMotherboardME11::run(), CSCGEMMotherboardME21::run(), CSCMotherboardME11::run(), CSCMotherboard::run(), CSCCathodeLCTProcessor::run(), CSCAnodeLCTProcessor::run(), CSCUpgradeMotherboard::run(), CSCCathodeLCTProcessor::runCCLUT(), and CSCAnodeLCTProcessor::trigMode().

◆ isME11_

bool CSCBaseboard::isME11_
protected

◆ isME21_

bool CSCBaseboard::isME21_
protected

◆ isME31_

bool CSCBaseboard::isME31_
protected

Definition at line 53 of file CSCBaseboard.h.

Referenced by CSCBaseboard().

◆ isME41_

bool CSCBaseboard::isME41_
protected

Definition at line 54 of file CSCBaseboard.h.

Referenced by CSCBaseboard().

◆ runCCLUT_

bool CSCBaseboard::runCCLUT_
protected

◆ runME11ILT_

bool CSCBaseboard::runME11ILT_
protected

Phase2: run the upgrade for the Phase-II ME1/1 integrated local trigger

Definition at line 91 of file CSCBaseboard.h.

Referenced by LCTQualityControl::checkValid(), CSCBaseboard(), and CSCGEMMotherboardME11::CSCGEMMotherboardME11().

◆ runME11Up_

bool CSCBaseboard::runME11Up_
protected

Phase2: run the upgrade local trigger (without GEMs)

Definition at line 97 of file CSCBaseboard.h.

Referenced by CSCBaseboard(), CSCMotherboardME11::CSCMotherboardME11(), and CSCUpgradeMotherboard::CSCUpgradeMotherboard().

◆ runME21ILT_

bool CSCBaseboard::runME21ILT_
protected

◆ runME21Up_

bool CSCBaseboard::runME21Up_
protected

Definition at line 98 of file CSCBaseboard.h.

Referenced by CSCBaseboard(), and CSCUpgradeMotherboard::CSCUpgradeMotherboard().

◆ runME31Up_

bool CSCBaseboard::runME31Up_
protected

Definition at line 99 of file CSCBaseboard.h.

Referenced by CSCBaseboard(), and CSCUpgradeMotherboard::CSCUpgradeMotherboard().

◆ runME41Up_

bool CSCBaseboard::runME41Up_
protected

Definition at line 100 of file CSCBaseboard.h.

Referenced by CSCBaseboard(), and CSCUpgradeMotherboard::CSCUpgradeMotherboard().

◆ runPhase2_

bool CSCBaseboard::runPhase2_
protected

◆ theChamber

unsigned CSCBaseboard::theChamber
protected

◆ theCSCName_

std::string CSCBaseboard::theCSCName_
protected

◆ theEndcap

const unsigned CSCBaseboard::theEndcap
protected

◆ theRegion

unsigned CSCBaseboard::theRegion
protected

◆ theRing

unsigned CSCBaseboard::theRing
protected

◆ theSector

const unsigned CSCBaseboard::theSector
protected

◆ theStation

const unsigned CSCBaseboard::theStation
protected

◆ theSubsector

const unsigned CSCBaseboard::theSubsector
protected

◆ theTrigChamber

const unsigned CSCBaseboard::theTrigChamber
protected

◆ tmbParams_

edm::ParameterSet CSCBaseboard::tmbParams_
protected
CSCBaseboard::isME31_
bool isME31_
Definition: CSCBaseboard.h:53
CSCBaseboard::theEndcap
const unsigned theEndcap
Definition: CSCBaseboard.h:41
CSCBaseboard::clctParams_
edm::ParameterSet clctParams_
Definition: CSCBaseboard.h:78
CSCBaseboard::cscChamber_
const CSCChamber * cscChamber_
Definition: CSCBaseboard.h:66
CSCBaseboard::theSector
const unsigned theSector
Definition: CSCBaseboard.h:43
CSCBaseboard::theRegion
unsigned theRegion
Definition: CSCBaseboard.h:46
CSCBaseboard::cscGeometry_
const CSCGeometry * cscGeometry_
Definition: CSCBaseboard.h:65
CSCBaseboard::tmbParams_
edm::ParameterSet tmbParams_
Definition: CSCBaseboard.h:72
relativeConstraints.station
station
Definition: relativeConstraints.py:67
CSCBaseboard::disableME1a_
bool disableME1a_
Definition: CSCBaseboard.h:88
CSCBaseboard::theStation
const unsigned theStation
Definition: CSCBaseboard.h:42
CSCBaseboard::theCSCName_
std::string theCSCName_
Definition: CSCBaseboard.h:81
makeMuonMisalignmentScenario.endcap
endcap
Definition: makeMuonMisalignmentScenario.py:320
CSCBaseboard::runME11ILT_
bool runME11ILT_
Definition: CSCBaseboard.h:91
trigObjTnPSource_cfi.var
var
Definition: trigObjTnPSource_cfi.py:21
CSCBaseboard::runME11Up_
bool runME11Up_
Definition: CSCBaseboard.h:97
CSCBaseboard::runME41Up_
bool runME41Up_
Definition: CSCBaseboard.h:100
CSCBaseboard::theSubsector
const unsigned theSubsector
Definition: CSCBaseboard.h:44
CSCBaseboard::gangedME1a_
bool gangedME1a_
Definition: CSCBaseboard.h:88
CSCBaseboard::runME31Up_
bool runME31Up_
Definition: CSCBaseboard.h:99
CSCBaseboard::runME21Up_
bool runME21Up_
Definition: CSCBaseboard.h:98
CSCBaseboard::runPhase2_
bool runPhase2_
Definition: CSCBaseboard.h:84
edm::ParameterSet
Definition: ParameterSet.h:47
CSCBaseboard::enableAlctPhase2_
bool enableAlctPhase2_
Definition: CSCBaseboard.h:85
CSCDetId
Definition: CSCDetId.h:26
CSCTriggerNumbering::ringFromTriggerLabels
static int ringFromTriggerLabels(int station, int triggerCSCID)
Definition: CSCTriggerNumbering.cc:5
CSCTriggerNumbering::chamberFromTriggerLabels
static int chamberFromTriggerLabels(int TriggerSector, int TriggerSubSector, int station, int TriggerCSCID)
Definition: CSCTriggerNumbering.cc:30
edm::LogError
Log< level::Error, false > LogError
Definition: MessageLogger.h:123
CSCBaseboard::theChamber
unsigned theChamber
Definition: CSCBaseboard.h:48
CSCBaseboard::runME21ILT_
bool runME21ILT_
Definition: CSCBaseboard.h:94
CSCBaseboard::isME21_
bool isME21_
Definition: CSCBaseboard.h:52
CSCDetId::chamberName
std::string chamberName() const
Definition: CSCDetId.cc:74
CSCBaseboard::commonParams_
edm::ParameterSet commonParams_
Definition: CSCBaseboard.h:69
relativeConstraints.chamber
chamber
Definition: relativeConstraints.py:53
or
The Signals That Services Can Subscribe To This is based on ActivityRegistry and is current per Services can connect to the signals distributed by the ActivityRegistry in order to monitor the activity of the application Each possible callback has some defined which we here list in angle e< void, edm::EventID const &, edm::Timestamp const & > We also list in braces which AR_WATCH_USING_METHOD_ is used for those or
Definition: Activities.doc:12
CSCBaseboard::theTrigChamber
const unsigned theTrigChamber
Definition: CSCBaseboard.h:45
edm::ParameterSet::getParameter
T getParameter(std::string const &) const
Definition: ParameterSet.h:303
CSCBaseboard::cscId_
CSCDetId cscId_
Definition: CSCBaseboard.h:57
CSCBaseboard::isME41_
bool isME41_
Definition: CSCBaseboard.h:54
CSCBaseboard::isME11_
bool isME11_
Definition: CSCBaseboard.h:51
CSCGeometry::chamber
const CSCChamber * chamber(CSCDetId id) const
Return the chamber corresponding to given DetId.
Definition: CSCGeometry.cc:100
CSCBaseboard::alctParams_
edm::ParameterSet alctParams_
Definition: CSCBaseboard.h:75
g
The Signals That Services Can Subscribe To This is based on ActivityRegistry and is current per Services can connect to the signals distributed by the ActivityRegistry in order to monitor the activity of the application Each possible callback has some defined which we here list in angle e g
Definition: Activities.doc:4
CSCBaseboard::runCCLUT_
bool runCCLUT_
Definition: CSCBaseboard.h:102
CSCBaseboard::theRing
unsigned theRing
Definition: CSCBaseboard.h:47