Skip to content

Commit

Permalink
Modernized modules in L1Trigger/RegionalCaloTrigger
Browse files Browse the repository at this point in the history
- switch to thread friendly module types
- added consumes calls
  • Loading branch information
Dr15Jones committed Jul 26, 2022
1 parent ca284ed commit 125e9ab
Show file tree
Hide file tree
Showing 12 changed files with 59 additions and 97 deletions.
4 changes: 2 additions & 2 deletions L1Trigger/RegionalCaloTrigger/interface/L1RCTInputProducer.h
@@ -1,7 +1,7 @@
#ifndef L1RCTInputProducer_h
#define L1RCTInputProducer_h

#include "FWCore/Framework/interface/EDProducer.h"
#include "FWCore/Framework/interface/stream/EDProducer.h"

#include "DataFormats/Common/interface/Handle.h"
#include "FWCore/Framework/interface/ESHandle.h"
Expand All @@ -27,7 +27,7 @@
class L1RCT;
class L1RCTLookupTables;

class L1RCTInputProducer : public edm::EDProducer {
class L1RCTInputProducer : public edm::stream::EDProducer<> {
public:
explicit L1RCTInputProducer(const edm::ParameterSet &ps);
~L1RCTInputProducer() override;
Expand Down
4 changes: 2 additions & 2 deletions L1Trigger/RegionalCaloTrigger/interface/L1RCTLutWriter.h
Expand Up @@ -27,7 +27,7 @@
#include <iostream>

// user include files
#include "FWCore/Framework/interface/EDAnalyzer.h"
#include "FWCore/Framework/interface/one/EDAnalyzer.h"
#include "FWCore/Framework/interface/Frameworkfwd.h"

#include "FWCore/Framework/interface/Event.h"
Expand Down Expand Up @@ -56,7 +56,7 @@ class L1RCTParameters;
// class declaration
//

class L1RCTLutWriter : public edm::EDAnalyzer {
class L1RCTLutWriter : public edm::one::EDAnalyzer<> {
public:
explicit L1RCTLutWriter(const edm::ParameterSet &);
~L1RCTLutWriter() override;
Expand Down
8 changes: 4 additions & 4 deletions L1Trigger/RegionalCaloTrigger/interface/L1RCTRelValAnalyzer.h
Expand Up @@ -22,7 +22,7 @@
#include <iostream>
#include <memory>
// user include files
#include "FWCore/Framework/interface/EDAnalyzer.h"
#include "FWCore/Framework/interface/one/EDAnalyzer.h"
#include "FWCore/Framework/interface/Frameworkfwd.h"

#include "FWCore/Framework/interface/Event.h"
Expand All @@ -42,7 +42,7 @@
// class declaration
//

class L1RCTRelValAnalyzer : public edm::EDAnalyzer {
class L1RCTRelValAnalyzer : public edm::one::EDAnalyzer<edm::one::SharedResources> {
public:
explicit L1RCTRelValAnalyzer(const edm::ParameterSet &);
~L1RCTRelValAnalyzer() override;
Expand All @@ -51,8 +51,8 @@ class L1RCTRelValAnalyzer : public edm::EDAnalyzer {

private:
// ----------member data ---------------------------
edm::InputTag rctEmCandsLabel;
edm::InputTag rctRegionsLabel;
edm::EDGetTokenT<L1CaloEmCollection> m_rctEmCands;
edm::EDGetTokenT<L1CaloRegionCollection> m_rctRegions;

TH1F *h_emRank;
TH1F *h_emIeta;
Expand Down
10 changes: 6 additions & 4 deletions L1Trigger/RegionalCaloTrigger/interface/L1RCTSaveInput.h
Expand Up @@ -24,7 +24,7 @@

#include "DataFormats/Common/interface/Handle.h"

#include "FWCore/Framework/interface/EDAnalyzer.h"
#include "FWCore/Framework/interface/one/EDAnalyzer.h"
#include "FWCore/Framework/interface/ESHandle.h"
#include "FWCore/Framework/interface/Event.h"
#include "FWCore/Framework/interface/EventSetup.h"
Expand All @@ -46,11 +46,13 @@
#include "CondFormats/DataRecord/interface/L1EmEtScaleRcd.h"
#include "CondFormats/L1TObjects/interface/L1CaloEtScale.h"
#include "CalibCalorimetry/EcalTPGTools/interface/EcalTPGScale.h"
#include "DataFormats/EcalDigi/interface/EcalDigiCollections.h"
#include "DataFormats/HcalDigi/interface/HcalDigiCollections.h"

class L1RCTLookupTables;
class L1RCT;

class L1RCTSaveInput : public edm::EDAnalyzer {
class L1RCTSaveInput : public edm::one::EDAnalyzer<> {
public:
explicit L1RCTSaveInput(const edm::ParameterSet &);
~L1RCTSaveInput() override;
Expand All @@ -62,8 +64,8 @@ class L1RCTSaveInput : public edm::EDAnalyzer {
L1RCT *rct;
bool useEcal;
bool useHcal;
edm::InputTag ecalDigisLabel;
edm::InputTag hcalDigisLabel;
edm::EDGetTokenT<EcalTrigPrimDigiCollection> ecalDigisToken_;
edm::EDGetTokenT<HcalTrigPrimDigiCollection> hcalDigisToken_;
edm::ESGetToken<L1RCTParameters, L1RCTParametersRcd> rctParametersToken_;
edm::ESGetToken<L1RCTChannelMask, L1RCTChannelMaskRcd> channelMaskToken_;
edm::ESGetToken<L1CaloEtScale, L1EmEtScaleRcd> emScaleToken_;
Expand Down
19 changes: 11 additions & 8 deletions L1Trigger/RegionalCaloTrigger/interface/L1RCTTPGProvider.h
Expand Up @@ -19,33 +19,36 @@

// system include files
#include <memory>
#include <atomic>

// user include files
#include "FWCore/Framework/interface/EDProducer.h"
#include "FWCore/Framework/interface/global/EDProducer.h"
#include "FWCore/Framework/interface/Frameworkfwd.h"

#include "FWCore/Framework/interface/Event.h"
#include "FWCore/Framework/interface/MakerMacros.h"
#include "FWCore/ParameterSet/interface/ParameterSet.h"

#include "DataFormats/EcalDigi/interface/EcalDigiCollections.h"
#include "DataFormats/HcalDigi/interface/HcalDigiCollections.h"

//
// class decleration
//

class L1RCTTPGProvider : public edm::EDProducer {
class L1RCTTPGProvider : public edm::global::EDProducer<> {
public:
explicit L1RCTTPGProvider(const edm::ParameterSet &);
~L1RCTTPGProvider() override;

private:
void produce(edm::Event &, const edm::EventSetup &) override;
void endJob() override;
void produce(edm::StreamID, edm::Event &, const edm::EventSetup &) const override;

// ----------member data ---------------------------
edm::InputTag ecalTPG_;
edm::InputTag hcalTPG_;
bool useHcalCosmicTiming;
bool useEcalCosmicTiming;
edm::EDGetTokenT<EcalTrigPrimDigiCollection> ecalTPG_;
edm::EDGetTokenT<HcalTrigPrimDigiCollection> hcalTPG_;
mutable std::atomic<bool> useHcalCosmicTiming;
mutable std::atomic<bool> useEcalCosmicTiming;
int preSamples;
int postSamples;
int hfShift;
Expand Down
4 changes: 2 additions & 2 deletions L1Trigger/RegionalCaloTrigger/interface/L1RCTTestAnalyzer.h
Expand Up @@ -21,7 +21,7 @@
#include <iostream>
#include <memory>
// user include files
#include "FWCore/Framework/interface/EDAnalyzer.h"
#include "FWCore/Framework/interface/one/EDAnalyzer.h"
#include "FWCore/Framework/interface/Frameworkfwd.h"

#include "FWCore/Framework/interface/Event.h"
Expand Down Expand Up @@ -50,7 +50,7 @@
// class declaration
//

class L1RCTTestAnalyzer : public edm::EDAnalyzer {
class L1RCTTestAnalyzer : public edm::one::EDAnalyzer<edm::one::SharedResources> {
public:
explicit L1RCTTestAnalyzer(const edm::ParameterSet &);
~L1RCTTestAnalyzer() override;
Expand Down
Expand Up @@ -26,7 +26,7 @@ RCT.
#include <memory>

// user include files
#include "FWCore/Framework/interface/EDProducer.h"
#include "FWCore/Framework/interface/global/EDProducer.h"
#include "FWCore/Framework/interface/ESHandle.h"
#include "FWCore/Framework/interface/Event.h"
#include "FWCore/Framework/interface/EventSetup.h"
Expand All @@ -42,21 +42,20 @@ RCT.
// class declaration
//

class MaskedRctInputDigiProducer : public edm::EDProducer {
class MaskedRctInputDigiProducer : public edm::global::EDProducer<> {
public:
explicit MaskedRctInputDigiProducer(const edm::ParameterSet &);
~MaskedRctInputDigiProducer() override;

private:
void produce(edm::Event &, const edm::EventSetup &) override;
void endJob() override;
void produce(edm::StreamID, edm::Event &, const edm::EventSetup &) const override;

// ----------member data ---------------------------

bool useEcal_;
bool useHcal_;
edm::InputTag ecalDigisLabel_;
edm::InputTag hcalDigisLabel_;
edm::EDGetTokenT<EcalTrigPrimDigiCollection> ecalDigisToken_;
edm::EDGetTokenT<HcalTrigPrimDigiCollection> hcalDigisToken_;
edm::FileInPath maskFile_;
};
#endif
28 changes: 7 additions & 21 deletions L1Trigger/RegionalCaloTrigger/plugins/L1RCTRelValAnalyzer.cc
Expand Up @@ -24,10 +24,11 @@ using std::string;
// constructors and destructor
//
L1RCTRelValAnalyzer::L1RCTRelValAnalyzer(const edm::ParameterSet &iConfig)
: rctEmCandsLabel(iConfig.getParameter<edm::InputTag>("rctEmCandsLabel")),
rctRegionsLabel(iConfig.getParameter<edm::InputTag>("rctRegionsLabel")) {
: m_rctEmCands(consumes(iConfig.getParameter<edm::InputTag>("rctEmCandsLabel"))),
m_rctRegions(consumes(iConfig.getParameter<edm::InputTag>("rctRegionsLabel"))) {
// now do what ever initialization is needed

usesResource(TFileService::kSharedResource);
edm::Service<TFileService> fs;
h_emRank = fs->make<TH1F>("emRank", "emRank", 64, 0., 64.);
h_emIeta = fs->make<TH1F>("emOccupancyIeta", "emOccupancyIeta", 22, 0., 22.);
Expand All @@ -52,27 +53,12 @@ L1RCTRelValAnalyzer::~L1RCTRelValAnalyzer() {
// ------------ method called to produce the data ------------
void L1RCTRelValAnalyzer::analyze(const edm::Event &iEvent, const edm::EventSetup &iSetup) {
using namespace edm;
#ifdef THIS_IS_AN_EVENT_EXAMPLE
Handle<ExampleData> pIn;
iEvent.getByLabel("example", pIn);
#endif

#ifdef THIS_IS_AN_EVENTSETUP_EXAMPLE
ESHandle<SetupData> pSetup;
iSetup.get<SetupRecord>().get(pSetup);
#endif

// as in L1GctTestAnalyzer.cc
Handle<L1CaloEmCollection> rctEmCands;
Handle<L1CaloRegionCollection> rctRegions;

L1CaloEmCollection::const_iterator em;
L1CaloRegionCollection::const_iterator rgn;

iEvent.getByLabel(rctEmCandsLabel, rctEmCands);
iEvent.getByLabel(rctRegionsLabel, rctRegions);
Handle<L1CaloEmCollection> rctEmCands = iEvent.getHandle(m_rctEmCands);
Handle<L1CaloRegionCollection> rctRegions = iEvent.getHandle(m_rctRegions);

for (em = rctEmCands->begin(); em != rctEmCands->end(); em++) {
for (auto em = rctEmCands->begin(); em != rctEmCands->end(); em++) {
if ((*em).rank() > 0) {
h_emRank->Fill((*em).rank());
h_emIeta->Fill((*em).regionId().ieta());
Expand All @@ -85,7 +71,7 @@ void L1RCTRelValAnalyzer::analyze(const edm::Event &iEvent, const edm::EventSetu
}
}

for (rgn = rctRegions->begin(); rgn != rctRegions->end(); rgn++) {
for (auto rgn = rctRegions->begin(); rgn != rctRegions->end(); rgn++) {
if ((*rgn).et() > 0) {
h_regionSum->Fill((*rgn).et());
h_regionSumIetaIphi->Fill((*rgn).gctEta(), (*rgn).gctPhi(), (*rgn).et());
Expand Down
13 changes: 5 additions & 8 deletions L1Trigger/RegionalCaloTrigger/plugins/L1RCTSaveInput.cc
Expand Up @@ -30,8 +30,8 @@ L1RCTSaveInput::L1RCTSaveInput(const edm::ParameterSet &conf)
rct(new L1RCT(rctLookupTables)),
useEcal(conf.getParameter<bool>("useEcal")),
useHcal(conf.getParameter<bool>("useHcal")),
ecalDigisLabel(conf.getParameter<edm::InputTag>("ecalDigisLabel")),
hcalDigisLabel(conf.getParameter<edm::InputTag>("hcalDigisLabel")),
ecalDigisToken_(consumes(conf.getParameter<edm::InputTag>("ecalDigisLabel"))),
hcalDigisToken_(consumes(conf.getParameter<edm::InputTag>("hcalDigisLabel"))),
rctParametersToken_(esConsumes<L1RCTParameters, L1RCTParametersRcd>()),
channelMaskToken_(esConsumes<L1RCTChannelMask, L1RCTChannelMaskRcd>()),
emScaleToken_(esConsumes<L1CaloEtScale, L1EmEtScaleRcd>()),
Expand All @@ -42,8 +42,7 @@ L1RCTSaveInput::L1RCTSaveInput(const edm::ParameterSet &conf)
tokens_(consumesCollector()) {
ofs.open(fileName.c_str(), std::ios::app);
if (!ofs) {
std::cerr << "Could not create " << fileName << std::endl;
exit(1);
throw cms::Exception("FailedFileOpen") << "Could not create " << fileName << std::endl;
}
}

Expand Down Expand Up @@ -141,10 +140,8 @@ void L1RCTSaveInput::analyze(const edm::Event &event, const edm::EventSetup &eve
rctLookupTables->setEcalScale(e);
}

edm::Handle<EcalTrigPrimDigiCollection> ecal;
edm::Handle<HcalTrigPrimDigiCollection> hcal;
event.getByLabel(ecalDigisLabel, ecal);
event.getByLabel(hcalDigisLabel, hcal);
edm::Handle<EcalTrigPrimDigiCollection> ecal = event.getHandle(ecalDigisToken_);
edm::Handle<HcalTrigPrimDigiCollection> hcal = event.getHandle(hcalDigisToken_);
EcalTrigPrimDigiCollection ecalColl;
HcalTrigPrimDigiCollection hcalColl;
if (ecal.isValid()) {
Expand Down
17 changes: 5 additions & 12 deletions L1Trigger/RegionalCaloTrigger/plugins/L1RCTTPGProvider.cc
Expand Up @@ -3,8 +3,8 @@
#include "L1Trigger/RegionalCaloTrigger/interface/L1RCTTPGProvider.h"

L1RCTTPGProvider::L1RCTTPGProvider(const edm::ParameterSet &iConfig)
: ecalTPG_(iConfig.getParameter<edm::InputTag>("ecalTPGs")),
hcalTPG_(iConfig.getParameter<edm::InputTag>("hcalTPGs")),
: ecalTPG_(consumes(iConfig.getParameter<edm::InputTag>("ecalTPGs"))),
hcalTPG_(consumes(iConfig.getParameter<edm::InputTag>("hcalTPGs"))),
useHcalCosmicTiming(iConfig.getParameter<bool>("useHCALCosmicTiming")),
useEcalCosmicTiming(iConfig.getParameter<bool>("useECALCosmicTiming")),
preSamples(iConfig.getParameter<int>("preSamples")),
Expand Down Expand Up @@ -45,7 +45,7 @@ L1RCTTPGProvider::~L1RCTTPGProvider() {
//

// ------------ method called to produce the data ------------
void L1RCTTPGProvider::produce(edm::Event &iEvent, const edm::EventSetup &iSetup) {
void L1RCTTPGProvider::produce(edm::StreamID, edm::Event &iEvent, const edm::EventSetup &iSetup) const {
using namespace edm;
// Declare handles
Handle<EcalTrigPrimDigiCollection> ecal;
Expand All @@ -58,7 +58,7 @@ void L1RCTTPGProvider::produce(edm::Event &iEvent, const edm::EventSetup &iSetup

unsigned nSamples = preSamples + postSamples + 1;

if (iEvent.getByLabel(ecalTPG_, ecal))
if ((ecal = iEvent.getHandle(ecalTPG_)))
if (ecal.isValid()) {
// loop through all ecal digis
for (EcalTrigPrimDigiCollection::const_iterator ecal_it = ecal->begin(); ecal_it != ecal->end(); ecal_it++) {
Expand Down Expand Up @@ -152,7 +152,7 @@ void L1RCTTPGProvider::produce(edm::Event &iEvent, const edm::EventSetup &iSetup
}
}

if (iEvent.getByLabel(hcalTPG_, hcal))
if ((hcal = iEvent.getHandle(hcalTPG_)))
if (hcal.isValid()) {
// loop through all hcal digis
for (HcalTrigPrimDigiCollection::const_iterator hcal_it = hcal->begin(); hcal_it != hcal->end(); hcal_it++) {
Expand Down Expand Up @@ -301,10 +301,3 @@ void L1RCTTPGProvider::produce(edm::Event &iEvent, const edm::EventSetup &iSetup
iEvent.put(std::move(hcalIn2), hcal_label);
}
}

// ------------ method called once each job just before starting event loop
// ------------

// ------------ method called once each job just after ending the event loop
// ------------
void L1RCTTPGProvider::endJob() {}
1 change: 1 addition & 0 deletions L1Trigger/RegionalCaloTrigger/plugins/L1RCTTestAnalyzer.cc
Expand Up @@ -32,6 +32,7 @@ L1RCTTestAnalyzer::L1RCTTestAnalyzer(const edm::ParameterSet &iConfig)
rctDigisLabel(iConfig.getParameter<edm::InputTag>("rctDigisLabel")) {
// now do what ever initialization is needed

usesResource(TFileService::kSharedResource);
edm::Service<TFileService> fs;

emTree = fs->make<TTree>("emTree", "L1 RCT EM tree");
Expand Down

0 comments on commit 125e9ab

Please sign in to comment.