#include <CSCMotherboardME11GEM.h>
Public Types | |
enum | ME11Part { ME1B = 1, ME1A =4 } |
Public Attributes | |
std::unique_ptr < CSCCathodeLCTProcessor > | clct1a |
Public Attributes inherited from CSCMotherboard | |
std::unique_ptr < CSCAnodeLCTProcessor > | alct |
std::unique_ptr < CSCCathodeLCTProcessor > | clct |
Private Types | |
typedef std::pair< unsigned int, const GEMPadDigi * > | GEMPadBX |
typedef std::map< int, GEMPadsBX > | GEMPads |
typedef std::vector< GEMPadBX > | GEMPadsBX |
Private Member Functions | |
int | assignGEMRoll (double eta) |
void | buildCoincidencePads (const GEMPadDigiCollection *out_pads, GEMCoPadDigiCollection &out_co_pads, CSCDetId csc_id) |
CSCCorrelatedLCTDigi | constructLCTsGEM (const CSCALCTDigi &alct, const GEMPadDigi &gem, int me, bool oldDataFormat=false) |
CSCCorrelatedLCTDigi | constructLCTsGEM (const CSCCLCTDigi &clct, const GEMPadDigi &gem, int roll, int me, bool oldDataFormat=true) |
CSCCorrelatedLCTDigi | constructLCTsGEM (const CSCALCTDigi &alct, const CSCCLCTDigi &clct, bool hasPad, bool hasCoPad) |
void | correlateLCTs (CSCALCTDigi bestALCT, CSCALCTDigi secondALCT, CSCCLCTDigi bestCLCT, CSCCLCTDigi secondCLCT, CSCCorrelatedLCTDigi &lct1, CSCCorrelatedLCTDigi &lct2) |
void | correlateLCTsGEM (CSCALCTDigi bestALCT, CSCALCTDigi secondALCT, CSCCLCTDigi bestCLCT, CSCCLCTDigi secondCLCT, CSCCorrelatedLCTDigi &lct1, CSCCorrelatedLCTDigi &lct2, int me, const GEMPadsBX &pads=GEMPadsBX(), const GEMPadsBX &copads=GEMPadsBX()) |
void | correlateLCTsGEM (CSCALCTDigi bestALCT, CSCALCTDigi secondALCT, GEMPadDigi gemPad, CSCCorrelatedLCTDigi &lct1, CSCCorrelatedLCTDigi &lct2, int me) |
void | correlateLCTsGEM (CSCCLCTDigi bestCLCT, CSCCLCTDigi secondCLCT, GEMPadDigi gemPad, int roll, CSCCorrelatedLCTDigi &lct1, CSCCorrelatedLCTDigi &lct2, int me) |
void | createGEMRollEtaLUT (bool isEven) |
int | deltaPad (int hs, int pad) |
int | deltaRoll (int wg, int roll) |
bool | doesALCTCrossCLCT (CSCALCTDigi &a, CSCCLCTDigi &c, int me) |
unsigned int | encodePatternGEM (const int ptn, const int highPt) |
unsigned int | findQualityGEM (const CSCALCTDigi &aLCT, const GEMPadDigi &gem) |
unsigned int | findQualityGEM (const CSCCLCTDigi &cLCT, const GEMPadDigi &gem) |
unsigned int | findQualityGEM (const CSCALCTDigi &aLCT, const CSCCLCTDigi &cLCT, bool hasPad, bool hasCoPad) |
bool | isPadInOverlap (int roll) |
void | matchGEMPads (enum ME11Part=ME1B) |
GEMPadsBX | matchingGEMPads (const CSCCLCTDigi &cLCT, const GEMPadsBX &pads=GEMPadsBX(), enum ME11Part=ME1B, bool isCopad=false, bool first=true) |
GEMPadsBX | matchingGEMPads (const CSCALCTDigi &aLCT, const GEMPadsBX &pads=GEMPadsBX(), enum ME11Part=ME1B, bool isCopad=false, bool first=true) |
GEMPadsBX | matchingGEMPads (const CSCCLCTDigi &cLCT, const CSCALCTDigi &aLCT, const GEMPadsBX &pads=GEMPadsBX(), enum ME11Part=ME1B, bool isCopad=false, bool first=true) |
void | printGEMTriggerPads (int minBX, int maxBx, bool iscopad=false) |
void | retrieveGEMCoPads (const GEMCoPadDigiCollection *pads, unsigned id) |
void | retrieveGEMPads (const GEMPadDigiCollection *pads, unsigned id) |
Static Private Attributes | |
static const double | lut_pt_vs_dphi_gemcsc [8][3] |
static const double | lut_wg_etaMin_etaMax_even [48][3] |
static const double | lut_wg_etaMin_etaMax_odd [48][3] |
static const int | lut_wg_vs_hs_me1a [48][2] |
static const int | lut_wg_vs_hs_me1ag [48][2] |
static const int | lut_wg_vs_hs_me1b [48][2] |
Additional Inherited Members | |
Protected Types inherited from CSCMotherboard | |
enum | { MAX_LCT_BINS = 16 } |
Protected Member Functions inherited from CSCMotherboard | |
void | checkConfigParameters () |
CSCCorrelatedLCTDigi | constructLCTs (const CSCALCTDigi &aLCT, const CSCCLCTDigi &cLCT) |
void | correlateLCTs (CSCALCTDigi bestALCT, CSCALCTDigi secondALCT, CSCCLCTDigi bestCLCT, CSCCLCTDigi secondCLCT) |
void | dumpConfigParams () const |
unsigned int | encodePattern (const int ptn, const int highPt) |
unsigned int | findQuality (const CSCALCTDigi &aLCT, const CSCCLCTDigi &cLCT) |
void | testLCT () |
Static Protected Member Functions inherited from CSCMotherboard | |
static bool | sortByGEMDphi (const CSCCorrelatedLCTDigi &, const CSCCorrelatedLCTDigi &) |
static bool | sortByQuality (const CSCCorrelatedLCTDigi &, const CSCCorrelatedLCTDigi &) |
Protected Attributes inherited from CSCMotherboard | |
unsigned int | alct_trig_enable |
unsigned int | clct_trig_enable |
bool | drop_used_alcts |
int | early_tbins |
CSCCorrelatedLCTDigi | firstLCT [MAX_LCT_BINS] |
int | infoV |
bool | isMTCC |
bool | isSLHC |
bool | isTMB07 |
int | lct_central_bx |
unsigned int | match_trig_enable |
unsigned int | match_trig_window_size |
unsigned int | mpc_block_me1a |
bool | readout_earliest_2 |
CSCCorrelatedLCTDigi | secondLCT [MAX_LCT_BINS] |
const unsigned | theEndcap |
unsigned | theRing |
const unsigned | theSector |
const unsigned | theStation |
const unsigned | theSubsector |
const unsigned | theTrigChamber |
unsigned int | tmb_l1a_window_size |
Static Protected Attributes inherited from CSCMotherboard | |
static const unsigned int | def_alct_trig_enable = 0 |
static const unsigned int | def_clct_trig_enable = 0 |
static const unsigned int | def_match_trig_enable = 1 |
static const unsigned int | def_match_trig_window_size = 7 |
static const unsigned int | def_mpc_block_me1a = 1 |
static const unsigned int | def_tmb_l1a_window_size = 7 |
Extended CSCMotherboard for ME11 TMB upgrade
Based on CSCMotherboard code
Definition at line 23 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 25 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 27 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 26 of file CSCMotherboardME11GEM.h.
CSCMotherboardME11GEM::CSCMotherboardME11GEM | ( | unsigned | endcap, |
unsigned | station, | ||
unsigned | sector, | ||
unsigned | subsector, | ||
unsigned | chamber, | ||
const edm::ParameterSet & | conf | ||
) |
Normal constructor.
Do GEM matching?
GEM matching dphi and deta
delta BX for GEM pads matching
min eta of LCT for which we require GEM match (we don't throw out LCTs below this min eta)
whether to throw out GEM-fiducial LCTs that have no gem match
Definition at line 181 of file CSCMotherboardME11GEM.cc.
CSCMotherboardME11GEM::CSCMotherboardME11GEM | ( | ) |
Constructor for use during testing.
Definition at line 309 of file CSCMotherboardME11GEM.cc.
CSCMotherboardME11GEM::~CSCMotherboardME11GEM | ( | ) |
Default destructor.
Definition at line 325 of file CSCMotherboardME11GEM.cc.
|
private |
Definition at line 1809 of file CSCMotherboardME11GEM.cc.
|
private |
Definition at line 1748 of file CSCMotherboardME11GEM.cc.
void CSCMotherboardME11GEM::clear | ( | void | ) |
Clears correlated LCT and passes clear signal on to cathode and anode LCT processors.
Definition at line 330 of file CSCMotherboardME11GEM.cc.
|
private |
Definition at line 1824 of file CSCMotherboardME11GEM.cc.
|
private |
Definition at line 1879 of file CSCMotherboardME11GEM.cc.
|
private |
Definition at line 1920 of file CSCMotherboardME11GEM.cc.
|
private |
Definition at line 1288 of file CSCMotherboardME11GEM.cc.
|
private |
Definition at line 1383 of file CSCMotherboardME11GEM.cc.
|
private |
Definition at line 1326 of file CSCMotherboardME11GEM.cc.
|
private |
Definition at line 1356 of file CSCMotherboardME11GEM.cc.
|
private |
Definition at line 1789 of file CSCMotherboardME11GEM.cc.
|
private |
Definition at line 2168 of file CSCMotherboardME11GEM.cc.
|
private |
Definition at line 2161 of file CSCMotherboardME11GEM.cc.
|
private |
Definition at line 1256 of file CSCMotherboardME11GEM.cc.
|
private |
Definition at line 1941 of file CSCMotherboardME11GEM.cc.
|
private |
|
private |
Definition at line 2074 of file CSCMotherboardME11GEM.cc.
|
private |
Definition at line 1947 of file CSCMotherboardME11GEM.cc.
|
inline |
Returns vectors of found ALCTs in ME1a and ME1b, if any.
Definition at line 63 of file CSCMotherboardME11GEM.h.
|
inline |
Returns vectors of found CLCTs in ME1a and ME1b, if any.
Definition at line 66 of file CSCMotherboardME11GEM.h.
|
inline |
Definition at line 67 of file CSCMotherboardME11GEM.h.
std::vector< CSCCorrelatedLCTDigi > CSCMotherboardME11GEM::getLCTs1a | ( | ) |
Returns vectors of found correlated LCTs in ME1a and ME1b, if any.
Definition at line 1078 of file CSCMotherboardME11GEM.cc.
std::vector< CSCCorrelatedLCTDigi > CSCMotherboardME11GEM::getLCTs1b | ( | ) |
Definition at line 1065 of file CSCMotherboardME11GEM.cc.
|
private |
Definition at line 2150 of file CSCMotherboardME11GEM.cc.
Definition at line 1574 of file CSCMotherboardME11GEM.cc.
|
private |
Definition at line 2176 of file CSCMotherboardME11GEM.cc.
|
private |
Definition at line 2201 of file CSCMotherboardME11GEM.cc.
|
private |
Definition at line 2227 of file CSCMotherboardME11GEM.cc.
|
private |
Definition at line 2080 of file CSCMotherboardME11GEM.cc.
std::vector< GEMCoPadDigi > CSCMotherboardME11GEM::readoutCoPads | ( | ) |
Definition at line 2255 of file CSCMotherboardME11GEM.cc.
std::vector< CSCCorrelatedLCTDigi > CSCMotherboardME11GEM::readoutLCTs | ( | enum ME11Part | me1ab | ) |
Definition at line 1003 of file CSCMotherboardME11GEM.cc.
std::vector< CSCCorrelatedLCTDigi > CSCMotherboardME11GEM::readoutLCTs1a | ( | ) |
Definition at line 988 of file CSCMotherboardME11GEM.cc.
std::vector< CSCCorrelatedLCTDigi > CSCMotherboardME11GEM::readoutLCTs1b | ( | ) |
Definition at line 994 of file CSCMotherboardME11GEM.cc.
|
private |
Definition at line 2130 of file CSCMotherboardME11GEM.cc.
|
private |
Definition at line 2112 of file CSCMotherboardME11GEM.cc.
void CSCMotherboardME11GEM::run | ( | const CSCWireDigiCollection * | wiredc, |
const CSCComparatorDigiCollection * | compdc, | ||
const GEMPadDigiCollection * | gemPads | ||
) |
Run function for normal usage. Runs cathode and anode LCT processors, takes results and correlates into CorrelatedLCT.
Definition at line 368 of file CSCMotherboardME11GEM.cc.
void CSCMotherboardME11GEM::setConfigParameters | ( | const CSCDBL1TPParameters * | conf | ) |
Set configuration parameters obtained via EventSetup mechanism.
Definition at line 359 of file CSCMotherboardME11GEM.cc.
|
inline |
set CSC and GEM geometries for the matching needs
Definition at line 85 of file CSCMotherboardME11GEM.h.
|
inline |
Definition at line 86 of file CSCMotherboardME11GEM.h.
std::vector< CSCCorrelatedLCTDigi > CSCMotherboardME11GEM::sortLCTsByGEMDPhi | ( | int | bx, |
enum ME11Part | me = ME1B |
||
) |
Definition at line 1175 of file CSCMotherboardME11GEM.cc.
std::vector< CSCCorrelatedLCTDigi > CSCMotherboardME11GEM::sortLCTsByGEMDPhi | ( | enum ME11Part | me = ME1B | ) |
Definition at line 1206 of file CSCMotherboardME11GEM.cc.
std::vector< CSCCorrelatedLCTDigi > CSCMotherboardME11GEM::sortLCTsByGEMDPhi | ( | std::vector< CSCCorrelatedLCTDigi > | LCTs | ) |
Definition at line 1194 of file CSCMotherboardME11GEM.cc.
std::vector< CSCCorrelatedLCTDigi > CSCMotherboardME11GEM::sortLCTsByQuality | ( | int | bx, |
enum ME11Part | me = ME1B |
||
) |
Methods to sort the LCTs
Definition at line 1095 of file CSCMotherboardME11GEM.cc.
std::vector< CSCCorrelatedLCTDigi > CSCMotherboardME11GEM::sortLCTsByQuality | ( | enum ME11Part | me = ME1B | ) |
Definition at line 1125 of file CSCMotherboardME11GEM.cc.
std::vector< CSCCorrelatedLCTDigi > CSCMotherboardME11GEM::sortLCTsByQuality | ( | std::vector< CSCCorrelatedLCTDigi > | LCTs | ) |
Definition at line 1113 of file CSCMotherboardME11GEM.cc.
|
private |
Definition at line 167 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 111 of file CSCMotherboardME11GEM.h.
|
private |
Container for first correlated LCT in ME1a. Container for second correlated LCT in ME1a. for the case when more than 2 LCTs/BX are allowed; maximum match window = 15
Definition at line 110 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 247 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 248 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 249 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 250 of file CSCMotherboardME11GEM.h.
std::unique_ptr<CSCCathodeLCTProcessor> CSCMotherboardME11GEM::clct1a |
additional Cathode LCT processor for ME1a
Definition at line 77 of file CSCMotherboardME11GEM.h.
|
private |
if true: use regular CLCT-to-ALCT matching in TMB if false: do ALCT-to-CLCT matching
Definition at line 180 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 169 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 168 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 284 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 256 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 212 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 279 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 280 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 274 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 218 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 216 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 217 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 98 of file CSCMotherboardME11GEM.h.
|
private |
Do GEM matching?
Definition at line 195 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 253 of file CSCMotherboardME11GEM.h.
|
private |
whether to not reuse CLCTs that were used by previous matching ALCTs in ALCT-to-CLCT algorithm
Definition at line 184 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 243 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 244 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 241 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 242 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 262 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 98 of file CSCMotherboardME11GEM.h.
|
private |
whether to throw out GEM-fiducial LCTs that have no gem match
Definition at line 210 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 213 of file CSCMotherboardME11GEM.h.
|
private |
delta BX for GEM pads matching
Definition at line 203 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 200 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 199 of file CSCMotherboardME11GEM.h.
|
private |
GEM matching dphi and deta.
Definition at line 198 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 207 of file CSCMotherboardME11GEM.h.
|
private |
min eta of LCT for which we require GEM match (we don't throw out LCTs below this min eta)
Definition at line 206 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 170 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 277 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 278 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 273 of file CSCMotherboardME11GEM.h.
|
staticprivate |
Definition at line 93 of file CSCMotherboardME11GEM.h.
|
staticprivate |
Definition at line 95 of file CSCMotherboardME11GEM.h.
|
staticprivate |
Definition at line 94 of file CSCMotherboardME11GEM.h.
|
staticprivate |
Definition at line 91 of file CSCMotherboardME11GEM.h.
|
staticprivate |
Definition at line 92 of file CSCMotherboardME11GEM.h.
|
staticprivate |
Definition at line 90 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 175 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 176 of file CSCMotherboardME11GEM.h.
|
private |
maximum lcts per BX in ME11: 2, 3, 4 or 999
Definition at line 189 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 233 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 235 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 237 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 221 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 225 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 227 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 229 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 234 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 236 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 238 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 222 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 226 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 228 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 230 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 283 of file CSCMotherboardME11GEM.h.
|
private |
"preferential" index array in matching window for cross-BX sorting
Definition at line 173 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 265 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 268 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 269 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 270 of file CSCMotherboardME11GEM.h.
|
private |
GEM-CSC integrated local algorithm.
Definition at line 192 of file CSCMotherboardME11GEM.h.
|
private |
SLHC: special configuration parameters for ME11 treatment.
Definition at line 98 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 186 of file CSCMotherboardME11GEM.h.
|
private |
Definition at line 259 of file CSCMotherboardME11GEM.h.