41 produces<reco::PFRecTrackCollection>();
42 produces<reco::PFNuclearInteractionCollection>();
44 std::vector<edm::InputTag>
tags = iConfig.
getParameter<vector<InputTag> >(
"nuclearColList");
46 for (
unsigned int i = 0;
i < tags.size(); ++
i)
58 auto pfNuclearColl = std::make_unique<reco::PFNuclearInteractionCollection>();
59 auto pfNuclearRecTrackColl = std::make_unique<reco::PFRecTrackCollection>();
78 for (trackRef_iterator it = nuclColl[
icoll].secondaryTracks_begin(); it != nuclColl[
icoll].secondaryTracks_end();
86 pfNuclearRecTrackColl->push_back(pftrack);
reconstructed track used as an input to particle flow
OrphanHandle< PROD > put(std::unique_ptr< PROD > product)
Put a new product.
PFTrackTransformer * pfTransformer_
PFTrackTransformer.
void likelihood(int &npar, double *grad, double &fval, double *xval, int flag)
bool getByToken(EDGetToken token, Handle< PROD > &result) const
#define DEFINE_FWK_MODULE(type)
const edm::ESGetToken< MagneticField, IdealMagneticFieldRecord > magneticFieldToken_
std::vector< edm::EDGetTokenT< reco::NuclearInteractionCollection > > nuclearContainers_
bool getData(T &iHolder) const
std::vector< NuclearInteraction > NuclearInteractionCollection
collection of NuclearInteractions
reco::Vertex::trackRef_iterator trackRef_iterator
~PFNuclearProducer() override
Destructor.
RefProd< PROD > getRefBeforePut()
T const * product() const
void produce(edm::Event &, const edm::EventSetup &) override
Produce the PFRecTrack collection.
XYZVectorD XYZVector
spatial vector with cartesian internal representation
edm::Ref< TrackCollection > TrackRef
persistent reference to a Track
T getParameter(std::string const &) const
void endRun(const edm::Run &, const edm::EventSetup &) override
void push_back(value_type const &ref)
Add a Ref<C, T> to the RefVector.
PFNuclearProducer(const edm::ParameterSet &)
Constructor.
std::vector< PFRecTrack > PFRecTrackCollection
collection of PFRecTrack objects
void beginRun(const edm::Run &, const edm::EventSetup &) override