35 recHitsLabel_(iConfig.getParameter<
edm::InputTag > (
"recHitsLabel")),
36 emObjectLabel_(iConfig.getParameter<
edm::InputTag > (
"emObjectLabel")),
37 energyCut_(iConfig.getParameter<double>(
"energyCut")),
38 etCut_(iConfig.getParameter<double>(
"etCut")),
39 etCandCut_(iConfig.getParameter<double> (
"etCandCut")),
40 outerRadius_(iConfig.getParameter<double>(
"outerRadius")),
41 innerRadius_(iConfig.getParameter<double>(
"innerRadius")),
42 interestingDetIdCollection_(iConfig.getParameter<
std::
string>(
"interestingDetIdCollection"))
45 const std::vector<std::string> flagnamesEB =
46 iConfig.
getParameter<std::vector<std::string> >(
"RecHitFlagToBeExcludedEB");
48 const std::vector<std::string> flagnamesEE =
49 iConfig.
getParameter<std::vector<std::string> >(
"RecHitFlagToBeExcludedEE");
52 StringToEnumValue<EcalRecHit::Flags>(flagnamesEB);
55 StringToEnumValue<EcalRecHit::Flags>(flagnamesEE);
57 const std::vector<std::string> severitynamesEB =
58 iConfig.
getParameter<std::vector<std::string> >(
"RecHitSeverityToBeExcludedEB");
61 StringToEnumValue<EcalSeverityLevel::SeverityLevel>(severitynamesEB);
63 const std::vector<std::string> severitynamesEE =
64 iConfig.
getParameter<std::vector<std::string> >(
"RecHitSeverityToBeExcludedEE");
67 StringToEnumValue<EcalSeverityLevel::SeverityLevel>(severitynamesEE);
110 auto detIdCollection = std::make_unique<DetIdCollection>();
112 reco::PhotonCollection::const_iterator emObj;
114 for (emObj = emObjectH->begin(); emObj != emObjectH->end(); emObj++) {
118 GlobalPoint pclu (emObj->caloPosition().x(),emObj->caloPosition().y(),emObj->caloPosition().z());
135 std::vector<int>::const_iterator sit;
162 if(
std::find(detIdCollection->begin(),detIdCollection->end(),recIt->
detid()) == detIdCollection->end())
163 detIdCollection->push_back(recIt->
detid());
168 delete doubleConeSel_;
T getParameter(std::string const &) const
std::vector< int > flagsexclEE_
OrphanHandle< PROD > put(std::unique_ptr< PROD > product)
Put a new product.
EcalSeverityLevel::SeverityLevel severityLevel(const DetId &id) const
Evaluate status from id use channelStatus from DB.
bool checkFlags(const std::vector< int > &flagsvec) const
check if one of the flags in a set is true
bool getByToken(EDGetToken token, Handle< PROD > &result) const
T mag() const
The vector magnitude. Equivalent to sqrt(vec.mag2())
bool isBarrel(GeomDetEnumerators::SubDetector m)
const DetId & detid() const
std::vector< int > severitiesexclEB_
std::string interestingDetIdCollection_
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
edm::InputTag recHitsLabel_
~GamIsoDetIdCollectionProducer() override
edm::EDGetTokenT< EcalRecHitCollection > recHitsToken_
bool checkFlag(int flag) const
check if the flag is true
void produce(edm::Event &, const edm::EventSetup &) override
producer
GlobalPoint getPosition(const DetId &id) const
Get the position of a given detector id.
std::vector< Photon > PhotonCollection
collectin of Photon objects
GamIsoDetIdCollectionProducer(const edm::ParameterSet &)
ctor
et
define resolution functions of each parameter
void selectCallback(double eta, double phi, const edm::SortedCollection< T > &inputCollection, std::function< void(const T &)> callback)
std::vector< int > flagsexclEB_
T perp() const
Magnitude of transverse component.
edm::EDGetTokenT< reco::PhotonCollection > emObjectToken_
T const * product() const
std::vector< int > severitiesexclEE_