47 std::vector<edm::ParameterSet>
cuts = iConfig.
getParameter<std::vector<edm::ParameterSet> >(
"cuts");
50 info.depth =
cut.getParameter<
double>(
"depth");
51 info.minE =
cut.getParameter<
double>(
"minEnergy");
52 info.maxE =
cut.getParameter<
double>(
"maxEnergy");
53 info.minTime =
cut.getParameter<
double>(
"minTime");
54 info.maxTime =
cut.getParameter<
double>(
"maxTime");
55 info.endcap =
cut.getParameter<
bool>(
"endcap");
59 produces<reco::PFClusterCollection>();
60 produces<reco::PFClusterCollection>(
"OOT");
66 auto out = std::make_unique<reco::PFClusterCollection>();
67 auto outOOT = std::make_unique<reco::PFClusterCollection>();
69 for (
const auto& cluster : *
clusters) {
70 const double energy = cluster.energy();
71 const double time = cluster.time();
72 const double depth = cluster.depth();
75 if (energy < info.minE || energy >
info.maxE)
77 if (depth < 0.9 * info.depth || depth > 1.1 *
info.depth)
85 out->push_back(cluster);
87 outOOT->push_back(cluster);
T getParameter(std::string const &) const
std::vector< CutInfo > cutInfo_
PFClusterTimeSelector(const edm::ParameterSet &)
~PFClusterTimeSelector() override
void beginRun(const edm::Run &run, const edm::EventSetup &es) override
constexpr std::array< uint8_t, layerIndexSize< TrackerTraits > > layer
void produce(edm::Event &iEvent, const edm::EventSetup &iSetup) override
#define DEFINE_FWK_MODULE(type)
std::vector< l1t::PFCluster > PFClusterCollection
edm::EDGetTokenT< reco::PFClusterCollection > clusters_