46 :
fPart (pset.get<
fhicl::ParameterSet >(
"MCRecoPart"))
47 ,
fEdep (pset.get<
fhicl::ParameterSet >(
"MCRecoEdep"))
48 ,
fMCSAlg (pset.get<
fhicl::ParameterSet >(
"MCShowerRecoAlg"))
49 ,
fMCTAlg (pset.get<
fhicl::ParameterSet >(
"MCTrackRecoAlg"))
51 fG4Module = pset.
get<std::string>(
"G4ModName",
"largeant");
52 produces< std::vector< sim::MCShower> >();
53 produces< std::vector< sim::MCTrack> >();
69 if(!mcpHandle.
isValid())
throw cet::exception(__FUNCTION__) <<
"Failed to retrieve simb::MCParticle";;
73 std::vector<simb::Origin_t> orig_array;
74 orig_array.reserve(mcpHandle->size());
75 for(
size_t i=0; i<mcpHandle->size(); ++i) {
77 orig_array.push_back(mct->
Origin());
85 const std::vector<simb::MCParticle>& mcp_array(*mcpHandle);
88 const std::vector<sim::SimChannel>& sch_array(*schHandle);
void MakeMCEdep(const std::vector< sim::SimChannel > &schArray)
simb::Origin_t Origin() const
std::unique_ptr< std::vector< sim::MCShower > > Reconstruct(MCRecoPart &part_v, MCRecoEdep &edep_v)
::sim::MCShowerRecoAlg fMCSAlg
ProductID put(std::unique_ptr< PROD > &&product)
#define DEFINE_ART_MODULE(klass)
void AddParticles(const std::vector< simb::MCParticle > &mcp_v, const std::vector< simb::Origin_t > &orig_v)
T get(std::string const &key) const
MCReco(fhicl::ParameterSet const &p)
::sim::MCTrackRecoAlg fMCTAlg
void produce(art::Event &e) override
bool getByLabel(std::string const &label, std::string const &productInstanceName, Handle< PROD > &result) const
std::unique_ptr< std::vector< sim::MCTrack > > Reconstruct(MCRecoPart &part_v, MCRecoEdep &edep_v)
cet::coded_exception< error, detail::translate > exception