59 enable_sanity_checks_(
config.getUntrackedParameter<
bool>(
"sanity_checks")),
60 inv_mass_checks_(
config.getUntrackedParameter<
bool>(
"inv_mass_checks")),
61 deltaCuts_(
config,
config, scales_, enable_sanity_checks_, inv_mass_checks_),
63 token2_(collection1Cuts_.
tag() == collection2Cuts_.
tag()
73 produces<InvariantMassErrorCollection>();
88 desc.addUntracked<
bool>(
"sanity_checks",
false);
89 desc.addUntracked<
bool>(
"inv_mass_checks",
false);
92 L1GTDeltaCut::fillLUTDescriptions(
desc);
105 bool condition_result =
false;
107 std::set<std::size_t> triggeredIdcs1;
108 std::set<std::size_t> triggeredIdcs2;
112 for (std::size_t idx1 = 0; idx1 < col1->size(); ++idx1) {
113 for (std::size_t idx2 = 0; idx2 < col2->size(); ++idx2) {
124 condition_result |= pass;
127 triggeredIdcs1.emplace(idx1);
129 triggeredIdcs2.emplace(idx2);
131 triggeredIdcs1.emplace(idx2);
137 if (condition_result) {
138 std::unique_ptr<P2GTCandidateVectorRef> triggerCol1 = std::make_unique<P2GTCandidateVectorRef>();
140 for (std::size_t
idx : triggeredIdcs1) {
146 std::unique_ptr<P2GTCandidateVectorRef> triggerCol2 = std::make_unique<P2GTCandidateVectorRef>();
148 for (std::size_t
idx : triggeredIdcs2) {
156 event.put(std::make_unique<InvariantMassErrorCollection>(
std::move(massErrors)),
"");
159 return condition_result;
const edm::EDGetTokenT< P2GTCandidateCollection > token1_
void addWithDefaultLabel(ParameterSetDescription const &psetDescription)
bool checkObject(const P2GTCandidate &obj) const
std::vector< P2GTCandidate > P2GTCandidateCollection
T const * product() const
const edm::InputTag & tag() const
edm::Ref< P2GTCandidateCollection > P2GTCandidateRef
const bool inv_mass_checks_
std::vector< InvariantMassError > InvariantMassErrorCollection
const edm::EDGetTokenT< P2GTCandidateCollection > token2_
#define DEFINE_FWK_MODULE(type)
bool checkObjects(const P2GTCandidate &obj1, const P2GTCandidate &obj2, InvariantMassErrorCollection &massErrors) const
static void fillDescriptions(edm::ConfigurationDescriptions &)
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
void fillPSetDescription(edm::ParameterSetDescription &desc)
const L1GTSingleCollectionCut collection2Cuts_
L1GTDoubleObjectCond(const edm::ParameterSet &)
ParameterSet const & getParameterSet(ParameterSetID const &id)
bool filter(edm::StreamID, edm::Event &, const edm::EventSetup &) const override
const bool enable_sanity_checks_
const L1GTDeltaCut deltaCuts_
const L1GTSingleCollectionCut collection1Cuts_