18 class CollectionSplitting;
72 produces< std::vector<recob::PFParticle> >();
73 produces< std::vector<recob::SpacePoint> >();
74 produces< std::vector<recob::Cluster> >();
75 produces< std::vector<recob::Vertex> >();
76 produces< std::vector<recob::Track> >();
77 produces< std::vector<recob::Shower> >();
78 produces< std::vector<recob::PCAxis> >();
79 produces< std::vector<larpandoraobj::PFParticleMetadata> >();
81 produces< art::Assns<recob::PFParticle, recob::SpacePoint> >();
82 produces< art::Assns<recob::PFParticle, recob::Cluster> >();
83 produces< art::Assns<recob::PFParticle, recob::Vertex> >();
84 produces< art::Assns<recob::PFParticle, recob::Track> >();
85 produces< art::Assns<recob::PFParticle, recob::Shower> >();
86 produces< art::Assns<recob::PFParticle, recob::PCAxis> >();
87 produces< art::Assns<recob::PFParticle, larpandoraobj::PFParticleMetadata> >();
88 produces< art::Assns<recob::Track, recob::Hit> >();
89 produces< art::Assns<recob::Shower, recob::Hit> >();
90 produces< art::Assns<recob::Shower, recob::PCAxis> >();
91 produces< art::Assns<recob::SpacePoint, recob::Hit> >();
92 produces< art::Assns<recob::Cluster, recob::Hit> >();
96 produces< std::vector<anab::T0> >();
97 produces< art::Assns<recob::PFParticle, anab::T0> >();
106 throw cet::exception(
"LArPandora") <<
" CollectionSplitting -- Must be configured to produce neutrinos or cosmics or both.";
std::string m_TrackProducerLabel
Label for the track producer using the Pandora instance that produced the collections we want to spli...
void produce(art::Event &e) override
Declaration of signal hit object.
bool m_ShouldProduceT0s
If we should produce T0s (relevant when stitching over multiple drift volumes)
LArPandoraEvent FilterByPdgCode(const bool shouldProduceNeutrinos) const
Produce a copy of the event keeping only the collections that are associated with a top-level particl...
bool m_ShouldProduceCosmics
If we should produce collections related to cosmic top-level PFParticles.
CollectionSplitting & operator=(CollectionSplitting const &)=delete
#define DEFINE_ART_MODULE(klass)
Provides recob::Track data product.
A description of all outputs from an instance of pandora with functionality to filter and merge multi...
Declaration of cluster object.
std::string m_InputProducerLabel
Label for the Pandora instance that produced the collections we want to split up. ...
CollectionSplitting(fhicl::ParameterSet const &pset)
Class to handle the required producer labels.
std::string m_HitProducerLabel
Label for the hit producer that was used as input to the Pandora instance specified.
std::string m_ShowerProducerLabel
Label for the shower producer using the Pandora instance that produced the collections we want to spl...
bool m_ShouldProduceNeutrinos
If we should produce collections related to neutrino top-level PFParticles.
cet::coded_exception< error, detail::translate > exception
void WriteToEvent() const
Write (put) the collections in this LArPandoraEvent to the art::Event.