Skip to content

Commit

Permalink
Merge pull request #34595 from Dr15Jones/L1Comparator_esConsumes
Browse files Browse the repository at this point in the history
Use esConsumes in L1Comparator
  • Loading branch information
cmsbuild committed Jul 23, 2021
2 parents e6d2c8f + efa82fc commit a1a570a
Show file tree
Hide file tree
Showing 2 changed files with 20 additions and 17 deletions.
3 changes: 3 additions & 0 deletions L1Trigger/HardwareValidation/interface/L1Comparator.h
Expand Up @@ -24,6 +24,7 @@
#include "FWCore/ParameterSet/interface/ParameterSet.h"
#include "FWCore/MessageLogger/interface/MessageLogger.h"
#include "FWCore/Utilities/interface/EDGetToken.h"
#include "FWCore/Utilities/interface/ESGetToken.h"

// l1 dataformats, d|e record includes
#include "L1Trigger/HardwareValidation/interface/DEtrait.h"
Expand Down Expand Up @@ -108,6 +109,8 @@ class L1Comparator : public edm::global::EDProducer<edm::RunCache<std::array<boo
edm::EDGetTokenT<L1MuGMTCandCollection> tokenMuGMTCand_[2];
edm::EDGetTokenT<L1MuGMTReadoutCollection> tokenMuReadoutCand_[2];

const edm::ESGetToken<L1TriggerKey, L1TriggerKeyRcd> tokenTriggerKey_;

const std::array<bool, dedefs::DEnsys> m_doSys;
const std::string m_dumpFileName;
CMS_THREAD_GUARD(m_fileGuard) mutable std::ofstream m_dumpFile;
Expand Down
34 changes: 17 additions & 17 deletions L1Trigger/HardwareValidation/src/L1Comparator.cc
Expand Up @@ -29,6 +29,7 @@ namespace {
L1Comparator::L1Comparator(const edm::ParameterSet& iConfig)
: m_stage1_layer2_{iConfig.getParameter<bool>("stage1_layer2_")},
verbose_{iConfig.getUntrackedParameter<int>("VerboseFlag", 0)},
tokenTriggerKey_{esConsumes<edm::Transition::BeginRun>()},
m_doSys{fillDoSys(iConfig)},
m_dumpFileName{iConfig.getUntrackedParameter<std::string>("DumpFile", "")},
m_dumpMode{iConfig.getUntrackedParameter<int>("DumpMode", 0)},
Expand Down Expand Up @@ -197,34 +198,33 @@ std::shared_ptr<L1Comparator::RunCache> L1Comparator::globalBeginRun(edm::Run co
auto runDoSys = std::make_shared<RunCache>();
// disable subsystem if not included in current run configuration
try {
edm::ESHandle<L1TriggerKey> pKey;
iSetup.get<L1TriggerKeyRcd>().get(pKey);
auto const& pKey = iSetup.getData(tokenTriggerKey_);
*runDoSys = m_doSys;

(*runDoSys)[RCT] &= (!(pKey->subsystemKey(L1TriggerKey::kRCT).empty()));
(*runDoSys)[GCT] &= (!(pKey->subsystemKey(L1TriggerKey::kGCT).empty()));
(*runDoSys)[DTF] &= (!(pKey->subsystemKey(L1TriggerKey::kDTTF).empty()));
(*runDoSys)[CTF] &= (!(pKey->subsystemKey(L1TriggerKey::kCSCTF).empty()));
(*runDoSys)[RPC] &= (!(pKey->subsystemKey(L1TriggerKey::kRPC).empty()));
(*runDoSys)[GMT] &= (!(pKey->subsystemKey(L1TriggerKey::kGMT).empty()));
(*runDoSys)[GLT] &= (!(pKey->subsystemKey(L1TriggerKey::kGT).empty()));
(*runDoSys)[RCT] &= (!(pKey.subsystemKey(L1TriggerKey::kRCT).empty()));
(*runDoSys)[GCT] &= (!(pKey.subsystemKey(L1TriggerKey::kGCT).empty()));
(*runDoSys)[DTF] &= (!(pKey.subsystemKey(L1TriggerKey::kDTTF).empty()));
(*runDoSys)[CTF] &= (!(pKey.subsystemKey(L1TriggerKey::kCSCTF).empty()));
(*runDoSys)[RPC] &= (!(pKey.subsystemKey(L1TriggerKey::kRPC).empty()));
(*runDoSys)[GMT] &= (!(pKey.subsystemKey(L1TriggerKey::kGMT).empty()));
(*runDoSys)[GLT] &= (!(pKey.subsystemKey(L1TriggerKey::kGT).empty()));

if (verbose()) {
if (pKey->subsystemKey(L1TriggerKey::kRCT).empty())
if (pKey.subsystemKey(L1TriggerKey::kRCT).empty())
std::cout << "RCT key is empty. Sub-systems is disabled (" << (*runDoSys)[RCT] << ")\n";
if (pKey->subsystemKey(L1TriggerKey::kGCT).empty())
if (pKey.subsystemKey(L1TriggerKey::kGCT).empty())
std::cout << "GCT key is empty. Sub-systems is disabled (" << (*runDoSys)[GCT] << ")\n";
if (pKey->subsystemKey(L1TriggerKey::kDTTF).empty())
if (pKey.subsystemKey(L1TriggerKey::kDTTF).empty())
std::cout << "DTTF key is empty. Sub-systems is disabled (" << (*runDoSys)[DTF] << ")\n";
if (pKey->subsystemKey(L1TriggerKey::kCSCTF).empty())
if (pKey.subsystemKey(L1TriggerKey::kCSCTF).empty())
std::cout << "CSCTF key is empty. Sub-systems is disabled (" << (*runDoSys)[CTF] << ")\n";
if (pKey->subsystemKey(L1TriggerKey::kRPC).empty())
if (pKey.subsystemKey(L1TriggerKey::kRPC).empty())
std::cout << "RPC key is empty. Sub-systems is disabled (" << (*runDoSys)[RPC] << ")\n";
if (pKey->subsystemKey(L1TriggerKey::kGMT).empty())
if (pKey.subsystemKey(L1TriggerKey::kGMT).empty())
std::cout << "GMT key is empty. Sub-systems is disabled (" << (*runDoSys)[GMT] << ")\n";
if (pKey->subsystemKey(L1TriggerKey::kGT).empty())
if (pKey.subsystemKey(L1TriggerKey::kGT).empty())
std::cout << "GT key is empty. Sub-systems is disabled (" << (*runDoSys)[GLT] << ")\n";
std::cout << "TSC key = " << pKey->tscKey() << std::endl;
std::cout << "TSC key = " << pKey.tscKey() << std::endl;
}

//access subsystem key if needed, eg:
Expand Down

0 comments on commit a1a570a

Please sign in to comment.