28 template<
typename T1,
typename T2>
30 originTag1_(iConfig.
template getParameter<
std::vector<
edm::InputTag> >(
"originTag1")),
31 originTag2_(iConfig.
template getParameter<
std::vector<
edm::InputTag> >(
"originTag2")),
32 inputTag1_(iConfig.
template getParameter<
edm::InputTag>(
"inputTag1")),
33 inputTag2_(iConfig.
template getParameter<
edm::InputTag>(
"inputTag2")),
34 inputToken1_(consumes<
trigger::TriggerFilterObjectWithRefs>(inputTag1_)),
35 inputToken2_(consumes<
trigger::TriggerFilterObjectWithRefs>(inputTag2_)),
36 triggerType1_(iConfig.
template getParameter<
int>(
"triggerType1")),
37 triggerType2_(iConfig.
template getParameter<
int>(
"triggerType2")),
38 min_Dphi_ (iConfig.
template getParameter<double>(
"MinDphi")),
39 max_Dphi_ (iConfig.
template getParameter<double>(
"MaxDphi")),
40 min_Deta_ (iConfig.
template getParameter<double>(
"MinDeta")),
41 max_Deta_ (iConfig.
template getParameter<double>(
"MaxDeta")),
42 min_Minv_ (iConfig.
template getParameter<double>(
"MinMinv")),
43 max_Minv_ (iConfig.
template getParameter<double>(
"MaxMinv")),
44 min_DelR_ (iConfig.
template getParameter<double>(
"MinDelR")),
45 max_DelR_ (iConfig.
template getParameter<double>(
"MaxDelR")),
46 min_Pt_ (iConfig.
template getParameter<double>(
"MinPt")),
47 max_Pt_ (iConfig.
template getParameter<double>(
"MaxPt")),
48 min_N_ (iConfig.
template getParameter<
int>(
"MinN")),
50 cutdphi_ (min_Dphi_ <= max_Dphi_),
51 cutdeta_ (min_Deta_ <= max_Deta_),
52 cutminv_ (min_Minv_ <= max_Minv_),
53 cutdelr_ (min_DelR_ <= max_DelR_),
54 cutpt_ (min_Pt_ <= max_Pt_ )
56 LogDebug(
"") <<
"InputTags and cuts : " 65 <<
" same/dphi/deta/minv/delr/pt " 70 template<
typename T1,
typename T2>
72 template<
typename T1,
typename T2>
77 std::vector<edm::InputTag> originTag1(1,
edm::InputTag(
"hltOriginal1"));
78 std::vector<edm::InputTag> originTag2(1,
edm::InputTag(
"hltOriginal2"));
79 desc.
add<std::vector<edm::InputTag> >(
"originTag1",originTag1);
80 desc.
add<std::vector<edm::InputTag> >(
"originTag2",originTag2);
83 desc.
add<
int>(
"triggerType1",0);
84 desc.
add<
int>(
"triggerType2",0);
85 desc.
add<
double>(
"MinDphi",+1.0);
86 desc.
add<
double>(
"MaxDphi",-1.0);
87 desc.
add<
double>(
"MinDeta",+1.0);
88 desc.
add<
double>(
"MaxDeta",-1.0);
89 desc.
add<
double>(
"MinMinv",+1.0);
90 desc.
add<
double>(
"MaxMinv",-1.0);
91 desc.
add<
double>(
"MinDelR",+1.0);
92 desc.
add<
double>(
"MaxDelR",-1.0);
93 desc.
add<
double>(
"MinPt" ,+1.0);
94 desc.
add<
double>(
"MaxPt" ,-1.0);
95 desc.
add<
int>(
"MinN",1);
104 template<
typename T1,
typename T2>
110 using namespace reco;
121 std::vector<T1Ref> coll1;
122 std::vector<T2Ref> coll2;
145 if (tagOld.
encode()!=tagNew.encode()) {
162 if (tagOld.
encode()!=tagNew.encode()) {
174 for (
unsigned int i1=0; i1!=n1; i1++) {
179 for (
unsigned int i2=I; i2!=n2; i2++) {
183 double Dphi(
std::abs(p1.phi()-p2.phi()));
186 double Deta(
std::abs(p1.eta()-p2.eta()));
192 double DelR(
sqrt(Dphi*Dphi+Deta*Deta));
const edm::InputTag inputTag2_
std::string defaultModuleLabel()
void getObjects(Vids &ids, VRphoton &refs) const
various physics-level getters:
HLTDoublet(const edm::ParameterSet &)
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
static PFTauRenderPlugin instance
bool getByToken(EDGetToken token, Handle< PROD > &result) const
const edm::InputTag inputTag1_
const edm::EDGetTokenT< trigger::TriggerFilterObjectWithRefs > inputToken1_
std::string const & processName() const
bool accept(const edm::Event &event, const edm::TriggerResults &triggerTable, const std::string &triggerPath)
void addObject(int id, const reco::RecoEcalCandidateRef &ref)
setters for L3 collections: (id=physics type, and Ref<C>)
Abs< T >::type abs(const T &t)
const std::complex< double > I
def template(fileName, svg, replaceme="REPLACEME")
ParameterDescriptionBase * add(U const &iLabel, T const &value)
const std::string * moduleLabel() const
static void makeHLTFilterDescription(edm::ParameterSetDescription &desc)
const edm::EDGetTokenT< trigger::TriggerFilterObjectWithRefs > inputToken2_
void addCollectionTag(const edm::InputTag &collectionTag)
collectionTags
void add(std::string const &label, ParameterSetDescription const &psetDescription)
std::string const & moduleLabel() const
const std::vector< edm::InputTag > originTag2_
const std::vector< edm::InputTag > originTag1_
virtual bool hltFilter(edm::Event &, const edm::EventSetup &, trigger::TriggerFilterObjectWithRefs &filterproduct) const override
std::string const & productInstanceName() const
Provenance getProvenance(BranchID const &theID) const
math::PtEtaPhiELorentzVectorF LorentzVector