66 omtfRcd.
get(omtfParamsHandle);
71 edm::LogError(
"L1TMuonOverlapTrackProducer") <<
"Could not retrieve parameters from Event Setup" << std::endl;
118 edm::LogInfo(
"OMTFReconstruction") <<
"OMTF: Number of candidates in BX="<<bx<<
": "<<candidates->size(bx) << std::endl;;
149 iProcessor, mtfType, bx);
152 const std::vector<OMTFProcessor::resultsMap> & results =
m_OMTF->
processInput(iProcessor,input);
154 std::vector<AlgoMuon> algoCandidates;
159 std::vector<AlgoMuon> gbCandidates =
m_GhostBuster->select(algoCandidates);
162 std::vector<l1t::RegionalMuonCand> candMuons =
m_Sorter.
candidates(iProcessor, mtfType, gbCandidates);
165 for (
auto & candMuon : candMuons) {
166 candMuon.setHwQual( candMuon.hwQual() |
flag);
176 const std::vector<OMTFProcessor::resultsMap> & results,
177 const std::vector<l1t::RegionalMuonCand> & candMuons ){
188 if(algoMuon.
getPt()) {
191 for(
auto & itKey: results[iRefHit])
T getParameter(std::string const &) const
EventNumber_t event() const
void getProcessorCandidates(unsigned int iProcessor, l1t::tftype mtfType, int bx, l1t::RegionalMuonCandBxCollection &myCandidates)
bool configure(const OMTFConfiguration *omtfParams, const L1TMuonOverlapParams *omtfPatterns)
Fill GP map with patterns from CondFormats object.
OMTFConfiguration * m_OMTFConfig
OMTF objects.
OMTFConfigMaker * m_OMTFConfigMaker
unsigned int fwVersion() const
void initialiseXMLDocument(const std::string &docName)
bool exists(std::string const ¶meterName) const
checks if a parameter exists
xercesc::DOMElement * aTopElement
unsigned int nPhiBins() const
xercesc::DOMElement * writeEventData(xercesc::DOMElement *aTopElement, const OmtfName &board, const OMTFinput &aInput)
unsigned int nProcessors() const
std::unique_ptr< IGhostBuster > m_GhostBuster
void initialize(const OMTFConfiguration *cfg)
PRODUCT const & get(ESGetToken< PRODUCT, T > const &iToken) const
static std::string const input
void loadAndFilterDigis(const edm::Event &)
void beginRun(edm::Run const &run, edm::EventSetup const &iSetup)
std::unique_ptr< l1t::RegionalMuonCandBxCollection > reconstruct(const edm::Event &, const edm::EventSetup &)
void writeResultsData(xercesc::DOMElement *aTopElement, unsigned int iRegion, const Key &aKey, const OMTFResult &aResult)
void writeResultToXML(unsigned int iProcessor, l1t::tftype mtfType, const OMTFinput &myInput, const std::vector< OMTFProcessor::resultsMap > &myResults, const std::vector< l1t::RegionalMuonCand > &candMuons)
void writeCandMuon(xercesc::DOMElement *aTopElement, const l1t::RegionalMuonCand &aCand)
bool getByLabel(InputTag const &tag, Handle< PROD > &result) const
bool dumpDetailedResultToXML
edm::Handle< RPCDigiCollection > rpcDigis
XMLConfigWriter * m_Writer
void configure(const L1TMuonOverlapParams *omtfParams)
T const * product() const
edm::Handle< L1MuDTChambThContainer > dtThDigis
void sortRefHitResults(const std::vector< OMTFProcessor::resultsMap > &procResults, std::vector< AlgoMuon > &refHitCleanCands, int charge=0)
OMTFinputMaker m_InputMaker
edm::Handle< L1MuDTChambPhContainer > dtPhDigis
const std::vector< OMTFProcessor::resultsMap > & processInput(unsigned int iProcessor, const OMTFinput &aInput)
void finaliseXMLDocument(const std::string &fName)
void writeAlgoMuon(xercesc::DOMElement *aTopElement, unsigned int iRefHit, const AlgoMuon &aMuon)
xercesc::DOMElement * writeEventHeader(unsigned int eventId, unsigned int mixedEventId=0)
std::vector< l1t::RegionalMuonCand > candidates(unsigned int iProcessor, l1t::tftype mtfType, const std::vector< AlgoMuon > &algoCands)
void setNphiBins(unsigned int phiBins)
edm::ParameterSet m_Config
unsigned int nTestRefHits() const
edm::Handle< CSCCorrelatedLCTDigiCollection > cscDigis
void push_back(int bx, T object)