1 #ifndef CSCTriggerPrimitives_CSCMotherboardME3141RPC_h
2 #define CSCTriggerPrimitives_CSCMotherboardME3141RPC_h
23 typedef std::pair<unsigned int, const RPCDigi*>
RPCDigiBX;
30 unsigned subsector,
unsigned chamber,
90 std::vector<CSCCorrelatedLCTDigi>
sortLCTsByQuality(std::vector<CSCCorrelatedLCTDigi>);
92 std::vector<CSCCorrelatedLCTDigi>
sortLCTsByGEMDPhi(std::vector<CSCCorrelatedLCTDigi>);
94 std::vector<CSCCorrelatedLCTDigi>
getLCTs();
unsigned int max_me3141_lcts
static const double lut_wg_me41_eta_odd[96][2]
std::map< int, int > cscWgToRpcRoll_
CSCMotherboardME3141RPC(unsigned endcap, unsigned station, unsigned sector, unsigned subsector, unsigned chamber, const edm::ParameterSet &conf)
std::map< int, int > rpcStripToCscHs_
void setCSCGeometry(const CSCGeometry *g)
set CSC and RPC geometries for the matching needs
std::vector< CSCCLCTDigi > clctV
bool buildLCTfromCLCTandRPC_
bool rpc_clear_nomatch_lcts
whether to throw out RPC-fiducial LCTs that have no rpc match
int assignRPCRoll(double eta)
bool useOldLCTDataFormat_
std::vector< CSCCorrelatedLCTDigi > readoutLCTs()
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
std::vector< CSCCorrelatedLCTDigi > sortLCTsByQuality(int bx)
std::vector< CSCCorrelatedLCTDigi > sortLCTsByGEMDPhi(int bx)
std::map< int, RPCDigisBX > RPCDigis
int rpc_match_delta_bx
delta BX for RPC pads matching
int maxDeltaStripRPCEven_
double rpc_match_delta_phi_even
void printRPCTriggerDigis(int minBX, int maxBx)
std::map< int, std::pair< double, double > > createRPCRollLUT(RPCDetId id)
bool promoteALCTRPCpattern_
double rpc_match_delta_eta
unsigned int tmb_cross_bx_algo
std::map< int, std::pair< int, int > > cscHsToRpcStrip_
static const double lut_wg_me41_eta_even[96][2]
bool promoteCLCTRPCquality_
static const double lut_pt_vs_dphi_rpccsc_me41[8][3]
static const double lut_wg_me31_eta_odd[96][2]
static const double lut_pt_vs_dphi_rpccsc_me31[8][3]
std::map< int, std::pair< double, double > > rpcRollToEtaLimits_
double rpc_match_delta_phi_odd
RPC matching dphi and deta.
CSCCorrelatedLCTDigi allLCTs[MAX_LCT_BINS][15][2]
bool buildLCTfromLowQstubandRPC_
const CSCGeometry * csc_g
const RPCGeometry * rpc_g
RPCDigisBX matchingRPCDigis(const CSCCLCTDigi &cLCT, const RPCDigisBX &digis=RPCDigisBX(), bool first=true)
bool buildLCTfromALCTandRPC_
std::vector< RPCDigiBX > RPCDigisBX
std::unique_ptr< CSCAnodeLCTProcessor > alct
void matchRPCDigis(enum MEX1Station st)
void correlateLCTsRPC(CSCALCTDigi bestALCT, CSCALCTDigi secondALCT, CSCCLCTDigi bestCLCT, CSCCLCTDigi secondCLCT, CSCCorrelatedLCTDigi &lct1, CSCCorrelatedLCTDigi &lct2, const RPCDigisBX &digis=RPCDigisBX())
bool match_earliest_clct_me3141_only
bool do_rpc_matching
Do RPC matching?
std::pair< unsigned int, const RPCDigi * > RPCDigiBX
std::unique_ptr< CSCCathodeLCTProcessor > clct
~CSCMotherboardME3141RPC()
std::vector< CSCALCTDigi > alctV
double rpc_match_min_eta
min eta of LCT for which we require RPC match (we don't throw out LCTs below this min eta) ...
std::vector< CSCCorrelatedLCTDigi > getLCTs()
void run(const CSCWireDigiCollection *wiredc, const CSCComparatorDigiCollection *compdc, const RPCDigiCollection *rpcDigis)
bool dropLowQualityCLCTsNoRPCs_
void retrieveRPCDigis(const RPCDigiCollection *digis, unsigned id)
void setRPCGeometry(const RPCGeometry *g)
unsigned int findQualityRPC(const CSCALCTDigi &aLCT, const CSCCLCTDigi &cLCT, bool hasRPC)
CSCCorrelatedLCTDigi constructLCTsRPC(const CSCALCTDigi &alct, const CSCCLCTDigi &clct, const RPCDigisBX &digis=RPCDigisBX())
bool promoteALCTRPCquality_
static const double lut_wg_me31_eta_even[96][2]