19 produces<reco::PFV0Collection>();
20 produces<reco::PFRecTrackCollection>();
22 std::vector<edm::InputTag>
tags = iConfig.
getParameter< vector < InputTag > >(
"V0List");
24 for (
unsigned int i=0;
i<tags.size();++
i)
25 V0list_.push_back(consumes<reco::VertexCompositeCandidateCollection>(tags[
i]));
37 <<
" in run "<<iEvent.
id().
run();
47 for (
unsigned int il=0; il<
V0list_.size(); il++){
50 LogDebug(
"PFV0Producer")<<
V0list_[il]<<
" contains "<<V0coll->size()<<
" V0 candidates ";
51 for (
unsigned int iv=0;iv<V0coll->size();iv++){
53 vector<TrackRef> Tracks;
54 vector<PFRecTrackRef> PFTracks;
55 for(
unsigned int ndx = 0; ndx < V0->numberOfDaughters(); ndx++ ) {
57 Tracks.push_back( (dynamic_cast<const RecoChargedCandidate*>(V0->daughter(ndx)))->track() );
70 pfV0RecTrackColl->push_back(pfRecTrack);
74 if ((PFTracks.size()==2)&&(Tracks.size()==2)){
75 pfV0Coll->push_back(
PFV0(V0,PFTracks,Tracks));
85 iEvent.
put(pfV0RecTrackColl);
T getParameter(std::string const &) const
EventNumber_t event() const
reconstructed track used as an input to particle flow
PFV0Producer(const edm::ParameterSet &)
Constructor.
bool getByToken(EDGetToken token, Handle< PROD > &result) const
virtual void beginRun(const edm::Run &, const edm::EventSetup &) override
~PFV0Producer()
Destructor.
std::vector< edm::EDGetTokenT< reco::VertexCompositeCandidateCollection > > V0list_
key_type key() const
Accessor for product key.
virtual void produce(edm::Event &, const edm::EventSetup &) override
Produce the PFRecTrack collection.
OrphanHandle< PROD > put(std::auto_ptr< PROD > product)
Put a new product.
std::vector< PFV0 > PFV0Collection
collection of PFV0 objects
RefProd< PROD > getRefBeforePut()
XYZVectorD XYZVector
spatial vector with cartesian internal representation
PFTrackTransformer * pfTransformer_
PFTrackTransformer.
tuple idx
DEBUGGING if hasattr(process,"trackMonIterativeTracking2012"): print "trackMonIterativeTracking2012 D...
std::vector< PFRecTrack > PFRecTrackCollection
collection of PFRecTrack objects
virtual void endRun(const edm::Run &, const edm::EventSetup &) override