Go to the documentation of this file.00001 #ifndef PhysicsTools_HepMCCandAlgos_GenParticlesHelper_h
00002 #define PhysicsTools_HepMCCandAlgos_GenParticlesHelper_h
00003
00004 #include "DataFormats/HepMCCandidate/interface/GenParticleFwd.h"
00005
00006 #include <iostream>
00007
00008 namespace GenParticlesHelper {
00009
00010 typedef reco::GenParticleCollection::const_iterator IG;
00011 typedef reco::GenParticleRefVector::const_iterator IGR;
00012
00013
00015 void findParticles(const reco::GenParticleCollection& sourceParticles,
00016 reco::GenParticleRefVector& particleRefs,
00017 int pdgId, int status );
00018
00020 void findDescendents(const reco::GenParticleRef& base,
00021 reco::GenParticleRefVector& descendents,
00022 int status, int pdgId=0 );
00023
00025 void findSisters(const reco::GenParticleRef& baseSister,
00026 reco::GenParticleRefVector& sisterRefs);
00027
00029 bool hasAncestor( const reco::GenParticle* particle,
00030 int pdgId, int status );
00031
00033 bool isDirect(const reco::GenParticleRef& particle);
00034
00035 std::ostream& operator<<( std::ostream& out,
00036 const reco::GenParticleRef& genRef );
00037
00038 }
00039
00040 #endif