|
||||
File indexing completed on 2024-04-06 12:19:34
0001 #ifndef L1Trigger_CSCTriggerPrimitives_CSCALCTCrossCLCT 0002 #define L1Trigger_CSCTriggerPrimitives_CSCALCTCrossCLCT 0003 0004 /** \class CSCALCTCrossCLCT 0005 * 0006 * Helper class to check if an ALCT crosses with a CLCT in ME1/1. 0007 * This check was originally introduced by Vadim Khotilovich in 2010 0008 * to improve the quality of the ME1/1 LCTs that are sent to the 0009 * endcap muon track finder. However, it is the policy of the EMTF 0010 * group that they would like to receive all LCT information, even 0011 * if an ME1/1 LCT has no physical crossing half-strips and 0012 * wiregroups. The EMTF disassembles LCTs into ALCT and CLCT anyway 0013 * and thus for normal trigger operations this class should not be 0014 * used. However, in the event that multiple high-quality LCTs are 0015 * present in ME1/1, this class could be used to trim the unphysical 0016 * ones. As of writing (April 2021) no plans are in place to implement 0017 this feature into the CSC trigger firmware 0018 * 0019 * \author Sven Dildick (Rice University) 0020 * 0021 */ 0022 0023 #include "FWCore/Framework/interface/Frameworkfwd.h" 0024 #include "FWCore/ParameterSet/interface/ParameterSet.h" 0025 0026 #include <string> 0027 #include <array> 0028 0029 class CSCALCTDigi; 0030 class CSCCLCTDigi; 0031 0032 class CSCALCTCrossCLCT { 0033 public: 0034 CSCALCTCrossCLCT( 0035 unsigned endcap, unsigned station, unsigned ring, bool ignoreAlctCrossClct, const edm::ParameterSet& conf); 0036 0037 /* 0038 Check if an ALCT can cross a CLCT. Most of the time it can. Only in ME1/1 there are 0039 special cases when they do not. This function is typically not used though, as the 0040 EMTF prefers to receive all stubs. However, there is an option to discard unphysical matches. 0041 */ 0042 bool doesALCTCrossCLCT(const CSCALCTDigi& a, const CSCCLCTDigi& c) const; 0043 0044 private: 0045 // check if a wiregroup cross a halfstrip 0046 bool doesWiregroupCrossHalfStrip(int wg, int keystrip) const; 0047 0048 unsigned endcap_; 0049 unsigned station_; 0050 unsigned ring_; 0051 bool gangedME1a_; 0052 bool ignoreAlctCrossClct_; 0053 }; 0054 #endif
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated by the 2.2.1 LXR engine. The LXR team |