40 desc.
add<
double>(
"minMass",-1.0);
41 descriptions.
add(
"hltEgammaAllCombMassFilter",desc);
52 std::vector<math::XYZTLorentzVector> firstLegP4s;
55 std::vector<math::XYZTLorentzVector> secondLegP4s;
63 for(
auto & firstLegP4 : firstLegP4s){
64 for(
auto & secondLegP4 : secondLegP4s){
66 double mass = pairP4.M();
70 for(
size_t firstLegNr=0;firstLegNr<firstLegP4s.size();firstLegNr++){
71 for(
size_t secondLegNr=0;secondLegNr<firstLegP4s.size();secondLegNr++){
73 double mass = pairP4.M();
77 for(
size_t firstLegNr=0;firstLegNr<secondLegP4s.size();firstLegNr++){
78 for(
size_t secondLegNr=0;secondLegNr<secondLegP4s.size();secondLegNr++){
80 double mass = pairP4.M();
94 std::vector<edm::Ref<reco::RecoEcalCandidateCollection> > phoCands;
96 std::vector<edm::Ref<reco::RecoEcalCandidateCollection> > clusCands;
98 std::vector<edm::Ref<reco::ElectronCollection> > eleCands;
101 if(!phoCands.empty()){
102 for(
auto & phoCand : phoCands){
103 p4s.push_back(phoCand->p4());
105 }
else if(!clusCands.empty()){
106 for(
auto & clusCand : clusCands){
107 p4s.push_back(clusCand->p4());
109 }
else if(!eleCands.empty()){
110 for(
auto & eleCand : eleCands){
111 p4s.push_back(eleCand->p4());
T getParameter(std::string const &) const
~HLTEgammaAllCombMassFilter() override
void getObjects(Vids &ids, VRphoton &refs) const
various physics-level getters:
bool hltFilter(edm::Event &, const edm::EventSetup &, trigger::TriggerFilterObjectWithRefs &filterproduct) const override
bool getByToken(EDGetToken token, Handle< PROD > &result) const
edm::EDGetTokenT< trigger::TriggerFilterObjectWithRefs > firstLegLastFilterToken_
edm::InputTag firstLegLastFilterTag_
edm::EDGetTokenT< trigger::TriggerFilterObjectWithRefs > secondLegLastFilterToken_
bool accept(const edm::Event &event, const edm::TriggerResults &triggerTable, const std::string &triggerPath)
XYZTLorentzVectorD XYZTLorentzVector
Lorentz vector with cylindrical internal representation using pseudorapidity.
#define DEFINE_FWK_MODULE(type)
HLTEgammaAllCombMassFilter(const edm::ParameterSet &)
ParameterDescriptionBase * add(U const &iLabel, T const &value)
static void getP4OfLegCands(const edm::Event &iEvent, const edm::EDGetTokenT< trigger::TriggerFilterObjectWithRefs > &filterToken, std::vector< math::XYZTLorentzVector > &p4s)
static void makeHLTFilterDescription(edm::ParameterSetDescription &desc)
edm::InputTag secondLegLastFilterTag_
void add(std::string const &label, ParameterSetDescription const &psetDescription)
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)