14 userDataHelper_ ( iConfig.getParameter<edm::
ParameterSet>(
"userData") )
44 produces<std::vector<GenericParticle> >();
46 if (iConfig.
exists(
"isoDeposits")) {
51 if (depconf.
exists(
"user")) {
52 std::vector<edm::InputTag> userdeps = depconf.
getParameter<std::vector<edm::InputTag> >(
"user");
53 std::vector<edm::InputTag>::const_iterator it = userdeps.begin(), ed = userdeps.end();
55 for ( ; it != ed; ++it, ++
key) {
73 if (iConfig.
exists(
"vertexing")) {
79 if ( iConfig.
exists(
"userData") ) {
100 std::vector<edm::Handle<edm::ValueMap<IsoDeposit> > > deposits(
isoDepositLabels_.size());
101 for (
size_t j = 0, nd = deposits.size();
j < nd; ++
j) {
106 std::vector<edm::Handle<edm::Association<reco::GenParticleCollection> > > genMatches(
genMatchSrc_.size());
118 std::vector<GenericParticle> * PATGenericParticles =
new std::vector<GenericParticle>();
121 unsigned int idx = itGenericParticle - cands->begin();
147 for (
size_t j = 0, nd = deposits.size();
j < nd; ++
j) {
153 for(
size_t i = 0,
n = genMatches.size();
i <
n; ++
i) {
161 aGenericParticle.
setQuality( (*qualities)[candRef] );
189 std::auto_ptr<std::vector<GenericParticle> > myGenericParticles(PATGenericParticles);
190 iEvent.
put(myGenericParticles);
bool enabled() const
'true' if this there is at least one efficiency configured
T getParameter(std::string const &) const
boost::indirect_iterator< typename seq_t::const_iterator > const_iterator
bool existsAs(std::string const ¶meterName, bool trackiness=true) const
checks if a parameter exists as a given type
void setIsolation(IsolationKeys key, float value)
#define DEFINE_FWK_MODULE(type)
bool exists(std::string const ¶meterName) const
checks if a parameter exists
void embedTrack()
embeds the master track instead of keeping a reference to it
IsolationKeys
Enum defining isolation keys.
void setResolutions(pat::PATObject< T > &obj) const
Sets the efficiencies for this object, using the reference to the original objects.
bool enabled() const
'true' if this there is at least one efficiency configured
U second(std::pair< T, U > const &p)
bool enabled() const
True if it has a non null configuration.
Analysis-level Generic Particle class (e.g. for hadron or muon not fully reconstructed) ...
pat::PATUserDataHelper< pat::GenericParticle > userDataHelper_
~PATGenericParticleProducer()
void beginEvent(const edm::Event &event, const edm::EventSetup &eventSetup)
void embedStandalone()
embeds the stand-alone track instead of keeping a reference to it
OrphanHandle< PROD > put(std::auto_ptr< PROD > product)
Put a new product.
pat::helper::MultiIsolator::IsolationValuePairs isolatorTmpStorage_
PATGenericParticleProducer(const edm::ParameterSet &iConfig)
GreaterByEt< GenericParticle > eTComparator_
Produces the pat::GenericParticle.
edm::InputTag qualitySrc_
virtual void produce(edm::Event &iEvent, const edm::EventSetup &iSetup)
bool getByLabel(InputTag const &tag, Handle< PROD > &result) const
void embedGsfTrack()
embeds the gsf track instead of keeping a reference to it
void embedSuperCluster()
embeds the supercluster instead of keeping a reference to it
void addGenParticleRef(const reco::GenParticleRef &ref)
void embedTracks()
embeds the other tracks instead of keeping references
void newEvent(const edm::Event &event)
To be called for each new event, reads in the vertex collection.
void setEfficiencies(pat::PATObject< T > &obj, const R &originalRef) const
Sets the efficiencies for this object, using the reference to the original objects.
bool enabled() const
returns true if this was given a non dummy configuration
pat::helper::EfficiencyLoader efficiencyLoader_
pat::helper::VertexingHelper vertexingHelper_
std::vector< std::pair< pat::IsolationKeys, float > > IsolationValuePairs
std::vector< edm::InputTag > genMatchSrc_
void setIsoDeposit(IsolationKeys key, const IsoDeposit &dep)
Sets the IsoDeposit associated with some key; if it is already existent, it is overwritten.
pat::helper::MultiIsolator isolator_
void embedCaloTower()
embeds the calotower instead of keeping a reference to it
std::vector< std::pair< pat::IsolationKeys, edm::InputTag > > isoDepositLabels_
void setQuality(float quality)
sets a user defined quality value
void newEvent(const edm::Event &event, const edm::EventSetup &setup) const
To be called for each new event, reads in the EventSetup object.
void embedCombined()
embeds the combined track instead of keeping a reference to it
pat::helper::KinResolutionsLoader resolutionLoader_
Produces and/or checks pat::VertexAssociation's.
void newEvent(const edm::Event &event) const
To be called for each new event, reads in the ValueMaps for efficiencies.
void setVertexAssociation(const pat::VertexAssociation &assoc)
Set a single vertex association.
void fill(const edm::View< T > &coll, int idx, IsolationValuePairs &isolations) const