#include <OMTFPatternMaker.h>
Public Member Functions | |
virtual void | analyze (const edm::Event &, const edm::EventSetup &) |
virtual void | beginJob () |
virtual void | beginRun (edm::Run const &run, edm::EventSetup const &iSetup) |
virtual void | endJob () |
OMTFPatternMaker (const edm::ParameterSet &cfg) | |
virtual | ~OMTFPatternMaker () |
Public Member Functions inherited from edm::EDAnalyzer | |
void | callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func) |
EDAnalyzer () | |
ModuleDescription const & | moduleDescription () const |
std::string | workerType () const |
~EDAnalyzer () override | |
Public Member Functions inherited from edm::EDConsumerBase | |
std::vector< ConsumesInfo > | consumesInfo () const |
void | convertCurrentProcessAlias (std::string const &processName) |
Convert "@currentProcess" in InputTag process names to the actual current process name. More... | |
EDConsumerBase () | |
EDConsumerBase (EDConsumerBase const &)=delete | |
EDConsumerBase (EDConsumerBase &&)=default | |
ProductResolverIndexAndSkipBit | indexFrom (EDGetToken, BranchType, TypeID const &) const |
void | itemsMayGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const |
void | itemsToGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const |
std::vector< ProductResolverIndexAndSkipBit > const & | itemsToGetFrom (BranchType iType) const |
void | labelsForToken (EDGetToken iToken, Labels &oLabels) const |
void | modulesWhoseProductsAreConsumed (std::vector< ModuleDescription const * > &modules, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const |
EDConsumerBase const & | operator= (EDConsumerBase const &)=delete |
EDConsumerBase & | operator= (EDConsumerBase &&)=default |
bool | registeredToConsume (ProductResolverIndex, bool, BranchType) const |
bool | registeredToConsumeMany (TypeID const &, BranchType) const |
void | updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet) |
virtual | ~EDConsumerBase () noexcept(false) |
Private Member Functions | |
const SimTrack * | findSimMuon (const edm::Event &ev, const edm::EventSetup &es, const SimTrack *previous=0) |
void | writeMergedGPs () |
Private Attributes | |
xercesc::DOMElement * | aTopElement |
edm::InputTag | g4SimTrackSrc |
edm::EDGetTokenT< CSCCorrelatedLCTDigiCollection > | inputTokenCSC |
edm::EDGetTokenT< L1MuDTChambPhContainer > | inputTokenDTPh |
edm::EDGetTokenT< L1MuDTChambThContainer > | inputTokenDTTh |
edm::EDGetTokenT< RPCDigiCollection > | inputTokenRPC |
edm::EDGetTokenT< edm::SimTrackContainer > | inputTokenSimHit |
bool | makeConnectionsMaps |
bool | makeGoldenPatterns |
bool | mergeXMLFiles |
OMTFinputMaker * | myInputMaker |
OMTFProcessor * | myOMTF |
OMTFConfiguration * | myOMTFConfig |
OMTF objects. More... | |
OMTFConfigMaker * | myOMTFConfigMaker |
XMLConfigWriter * | myWriter |
unsigned int | nPdfAddrBits |
Original pdf width. read from configuration. More... | |
edm::ParameterSet | theConfig |
Additional Inherited Members | |
Public Types inherited from edm::EDAnalyzer | |
typedef EDAnalyzer | ModuleType |
Public Types inherited from edm::EDConsumerBase | |
typedef ProductLabels | Labels |
Static Public Member Functions inherited from edm::EDAnalyzer | |
static const std::string & | baseType () |
static void | fillDescriptions (ConfigurationDescriptions &descriptions) |
static void | prevalidate (ConfigurationDescriptions &) |
Protected Member Functions inherited from edm::EDConsumerBase | |
template<typename ProductType , BranchType B = InEvent> | |
EDGetTokenT< ProductType > | consumes (edm::InputTag const &tag) |
EDGetToken | consumes (const TypeToGet &id, edm::InputTag const &tag) |
template<BranchType B> | |
EDGetToken | consumes (TypeToGet const &id, edm::InputTag const &tag) |
ConsumesCollector | consumesCollector () |
Use a ConsumesCollector to gather consumes information from helper functions. More... | |
template<typename ProductType , BranchType B = InEvent> | |
void | consumesMany () |
void | consumesMany (const TypeToGet &id) |
template<BranchType B> | |
void | consumesMany (const TypeToGet &id) |
template<typename ProductType , BranchType B = InEvent> | |
EDGetTokenT< ProductType > | mayConsume (edm::InputTag const &tag) |
EDGetToken | mayConsume (const TypeToGet &id, edm::InputTag const &tag) |
template<BranchType B> | |
EDGetToken | mayConsume (const TypeToGet &id, edm::InputTag const &tag) |
Definition at line 35 of file OMTFPatternMaker.h.
OMTFPatternMaker::OMTFPatternMaker | ( | const edm::ParameterSet & | cfg | ) |
Definition at line 22 of file OMTFPatternMaker.cc.
References edm::ParameterSet::getParameter(), inputTokenCSC, inputTokenDTPh, inputTokenDTTh, inputTokenRPC, inputTokenSimHit, makeConnectionsMaps, makeGoldenPatterns, mergeXMLFiles, myInputMaker, myOMTFConfig, and theConfig.
|
virtual |
Definition at line 42 of file OMTFPatternMaker.cc.
References myOMTF, myOMTFConfig, and myOMTFConfigMaker.
|
virtual |
Get the simulated muon parameters
Filter digis by dropping digis from selected (by cfg.py) subsystems
Loop over all processors, each covering 60 deg in phi
Input data with phi ranges shifted for each processor, so it fits 11 bits range
Connections maps are made by hand. makeConnetionsMap method provides tables for checking their consistency.
Definition at line 233 of file OMTFPatternMaker.cc.
References OMTFinputMaker::buildInputForProcessor(), OMTFProcessor::fillCounts(), findSimMuon(), edm::Event::getByToken(), edm::ParameterSet::getParameter(), OMTFinputMaker::initialize(), inputTokenCSC, inputTokenDTPh, inputTokenDTTh, inputTokenRPC, makeConnectionsMaps, OMTFConfigMaker::makeConnetionsMap(), makeGoldenPatterns, mergeXMLFiles, myInputMaker, myOMTF, myOMTFConfig, myOMTFConfigMaker, l1t::omtf_pos, edm::Handle< T >::product(), and theConfig.
|
virtual |
Reimplemented from edm::EDAnalyzer.
Definition at line 88 of file OMTFPatternMaker.cc.
References myOMTF, and myOMTFConfig.
|
virtual |
Initialise XML writer with default pdf.
For making the patterns use extended pdf width in phi, as pdf are later shifted by the mean value For low pt muons non shifted pdfs would go out of the default pdf range.
Clear existing GoldenPatterns
Reimplemented from edm::EDAnalyzer.
Definition at line 51 of file OMTFPatternMaker.cc.
References OMTFProcessor::configure(), OMTFConfiguration::configure(), L1TMuonOverlapParams::GENERAL_ADDRBITS, L1TMuonOverlapParams::generalParams(), edm::EventSetup::get(), edm::eventsetup::EventSetupRecord::get(), OMTFProcessor::getPatterns(), mergeXMLFiles, myOMTF, myOMTFConfig, myOMTFConfigMaker, myWriter, nPdfAddrBits, L1TMuonOverlapParams::nPdfAddrBits(), and L1TMuonOverlapParams::setGeneralParams().
|
virtual |
Put back default value of the pdf width.
Order important: printPhiMap updates global vector in OMTFConfiguration
Write GPs merged by 4 above iPt=71, and by 2 below// /////////////////////////////////////////////////// 4x merging
Reimplemented from edm::EDAnalyzer.
Definition at line 95 of file OMTFPatternMaker.cc.
References OMTFProcessor::averagePatterns(), OMTFConfiguration::configure(), gather_cfg::cout, XMLConfigWriter::finaliseXMLDocument(), L1TMuonOverlapParams::GENERAL_ADDRBITS, L1TMuonOverlapParams::generalParams(), OMTFConfiguration::getMeasurements4D(), edm::ParameterSet::getParameter(), OMTFProcessor::getPatterns(), OMTFConfiguration::getRawParams(), XMLConfigWriter::initialiseXMLDocument(), makeConnectionsMaps, makeGoldenPatterns, mergeXMLFiles, myOMTF, myOMTFConfig, myOMTFConfigMaker, myWriter, nPdfAddrBits, OMTFConfigMaker::printConnections(), OMTFConfigMaker::printPhiMap(), RPCConst::ptFromIpt(), GoldenPattern::reset(), L1TMuonOverlapParams::setGeneralParams(), AlCaHLTBitMon_QueryRunRegistry::string, theConfig, XMLConfigWriter::writeConnectionsData(), XMLConfigWriter::writeGPData(), and writeMergedGPs().
|
private |
Definition at line 284 of file OMTFPatternMaker.cc.
References DEFINE_FWK_MODULE, HiRegitMuonDetachedTripletStep_cff::DeltaR, edm::Event::getByToken(), inputTokenSimHit, CoreSimTrack::momentum(), mps_fire::result, and CoreSimTrack::type().
Referenced by analyze().
|
private |
Write the opposite charge.
Definition at line 174 of file OMTFPatternMaker.cc.
References OMTFProcessor::getPatterns(), GoldenPattern::key(), myOMTF, myOMTFConfig, myWriter, GoldenPattern::reset(), Key::theCharge, Key::thePtCode, and XMLConfigWriter::writeGPData().
Referenced by endJob().
|
private |
Definition at line 75 of file OMTFPatternMaker.h.
|
private |
Definition at line 55 of file OMTFPatternMaker.h.
|
private |
Definition at line 59 of file OMTFPatternMaker.h.
Referenced by analyze(), and OMTFPatternMaker().
|
private |
Definition at line 57 of file OMTFPatternMaker.h.
Referenced by analyze(), and OMTFPatternMaker().
|
private |
Definition at line 58 of file OMTFPatternMaker.h.
Referenced by analyze(), and OMTFPatternMaker().
|
private |
Definition at line 60 of file OMTFPatternMaker.h.
Referenced by analyze(), and OMTFPatternMaker().
|
private |
Definition at line 61 of file OMTFPatternMaker.h.
Referenced by findSimMuon(), and OMTFPatternMaker().
|
private |
Definition at line 65 of file OMTFPatternMaker.h.
Referenced by analyze(), endJob(), and OMTFPatternMaker().
|
private |
Definition at line 65 of file OMTFPatternMaker.h.
Referenced by analyze(), endJob(), and OMTFPatternMaker().
|
private |
Definition at line 65 of file OMTFPatternMaker.h.
Referenced by analyze(), beginRun(), endJob(), and OMTFPatternMaker().
|
private |
Definition at line 72 of file OMTFPatternMaker.h.
Referenced by analyze(), and OMTFPatternMaker().
|
private |
Definition at line 73 of file OMTFPatternMaker.h.
Referenced by analyze(), beginJob(), beginRun(), endJob(), writeMergedGPs(), and ~OMTFPatternMaker().
|
private |
OMTF objects.
Definition at line 71 of file OMTFPatternMaker.h.
Referenced by analyze(), beginJob(), beginRun(), endJob(), OMTFPatternMaker(), writeMergedGPs(), and ~OMTFPatternMaker().
|
private |
Definition at line 76 of file OMTFPatternMaker.h.
Referenced by analyze(), beginRun(), endJob(), and ~OMTFPatternMaker().
|
private |
Definition at line 77 of file OMTFPatternMaker.h.
Referenced by beginRun(), endJob(), and writeMergedGPs().
|
private |
Original pdf width. read from configuration.
Definition at line 68 of file OMTFPatternMaker.h.
Referenced by beginRun(), and endJob().
|
private |
Definition at line 54 of file OMTFPatternMaker.h.
Referenced by analyze(), endJob(), and OMTFPatternMaker().