33 "ECALClusterImporter");
43 auto bclus = clusters->cbegin();
44 auto eclus = clusters->cend();
46 auto sc_end = std::partition(elems.begin(),elems.end(),
50 ecals.reserve(clusters->size());
51 for(
auto clus = bclus; clus != eclus; ++clus ) {
55 for(
auto scelem = elems.begin(); scelem != sc_end; ++scelem ) {
72 ecals.emplace_back(newelem);
74 elems.reserve(elems.size()+ecals.size());
75 for(
auto&
ecal : ecals ) {
76 elems.emplace_back(
ecal.release());
const SuperClusterRef & superClusterRef() const
static bool overlap(const reco::CaloCluster &sc1, const reco::CaloCluster &sc, float minfrac=0.01, bool debug=false)
edm::EDGetTokenT< edm::ValueMap< reco::CaloClusterPtr > > _assoc
bool getByToken(EDGetToken token, Handle< PROD > &result) const
edm::Ptr< CaloCluster > CaloClusterPtr
edm::EDGetTokenT< reco::PFClusterCollection > _src
Container::value_type value_type
bool fromPFSuperCluster() const
void importToBlock(const edm::Event &, ElementList &) const override
std::vector< PFCluster > PFClusterCollection
collection of PFCluster objects
#define DEFINE_EDM_PLUGIN(factory, type, name)
std::vector< std::unique_ptr< reco::PFBlockElement > > ElementList
void setSuperClusterRef(const SuperClusterRef &ref)
ECALClusterImporter(const edm::ParameterSet &conf, edm::ConsumesCollector &sumes)