LArSoft
v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
|
Public Types | |
using | ModuleType = EDProducer |
template<typename UserConfig , typename KeysToIgnore = void> | |
using | Table = Modifier::Table< UserConfig, KeysToIgnore > |
Public Member Functions | |
CRHitRemoval (fhicl::ParameterSet const &pset) | |
virtual void | produce (art::Event &e) |
virtual void | beginJob () |
Begin job method. More... | |
virtual void | endJob () |
End job method. More... | |
void | doBeginJob (SharedResources const &resources) |
void | doEndJob () |
void | doRespondToOpenInputFile (FileBlock const &fb) |
void | doRespondToCloseInputFile (FileBlock const &fb) |
void | doRespondToOpenOutputFiles (FileBlock const &fb) |
void | doRespondToCloseOutputFiles (FileBlock const &fb) |
bool | doBeginRun (RunPrincipal &rp, ModuleContext const &mc) |
bool | doEndRun (RunPrincipal &rp, ModuleContext const &mc) |
bool | doBeginSubRun (SubRunPrincipal &srp, ModuleContext const &mc) |
bool | doEndSubRun (SubRunPrincipal &srp, ModuleContext const &mc) |
bool | doEvent (EventPrincipal &ep, ModuleContext const &mc, std::atomic< std::size_t > &counts_run, std::atomic< std::size_t > &counts_passed, std::atomic< std::size_t > &counts_failed) |
void | fillProductDescriptions () |
void | registerProducts (ProductDescriptions &productsToRegister) |
ModuleDescription const & | moduleDescription () const |
void | setModuleDescription (ModuleDescription const &) |
std::array< std::vector< ProductInfo >, NumBranchTypes > const & | getConsumables () const |
void | sortConsumables (std::string const ¤t_process_name) |
std::unique_ptr< Worker > | makeWorker (WorkerParams const &wp) |
template<typename T , BranchType BT> | |
ViewToken< T > | consumesView (InputTag const &tag) |
template<typename T , BranchType BT> | |
ViewToken< T > | mayConsumeView (InputTag const &tag) |
Protected Member Functions | |
ConsumesCollector & | consumesCollector () |
template<typename T , BranchType = InEvent> | |
ProductToken< T > | consumes (InputTag const &) |
template<typename Element , BranchType = InEvent> | |
ViewToken< Element > | consumesView (InputTag const &) |
template<typename T , BranchType = InEvent> | |
void | consumesMany () |
template<typename T , BranchType = InEvent> | |
ProductToken< T > | mayConsume (InputTag const &) |
template<typename Element , BranchType = InEvent> | |
ViewToken< Element > | mayConsumeView (InputTag const &) |
template<typename T , BranchType = InEvent> | |
void | mayConsumeMany () |
Private Types | |
using | HitPtrVector = std::vector< art::Ptr< recob::Hit >> |
Private Member Functions | |
void | collectPFParticleHits (const recob::PFParticle *pfParticle, const art::Handle< std::vector< recob::PFParticle >> &pfParticleHandle, const art::FindManyP< recob::Cluster > &partToClusAssns, const art::FindManyP< recob::Hit > &clusToHitAssns, HitPtrVector &hitVec) |
void | copyAllHits (std::vector< art::Ptr< recob::Hit >> &, art::FindOneP< recob::Wire > &, recob::HitCollectionCreator &) |
void | copyInTimeHits (std::vector< art::Ptr< recob::Hit >> &, art::FindOneP< recob::Wire > &, recob::HitCollectionCreator &) |
void | FilterHits (HitPtrVector &hits, HitPtrVector &used_hits) |
Private Attributes | |
std::vector< std::string > | fCosmicProducerLabels |
List of cosmic tagger producers. More... | |
std::string | fHitProducerLabel |
The full collection of hits. More... | |
std::string | fPFParticleProducerLabel |
PFParticle producer. More... | |
std::vector< std::string > | fTrackProducerLabels |
Track producer. More... | |
std::vector< std::string > | fAssnProducerLabels |
Track to PFParticle assns producer. More... | |
std::vector< double > | fCosmicTagThresholds |
Thresholds for tagging. More... | |
int | fEndTickPadding |
Padding the end tick. More... | |
int | fDetectorWidthTicks |
Effective drift time in ticks. More... | |
int | fMinTickDrift |
Starting tick. More... | |
int | fMaxTickDrift |
Ending tick. More... | |
int | fMaxOutOfTime |
Max hits that can be out of time before rejecting. More... | |
int | fNumEvent |
Number of events seen. More... | |
int | fNumCRRejects |
Number of tracks produced. More... | |
Definition at line 48 of file CRHitRemoval_module.cc.
|
private |
Definition at line 60 of file CRHitRemoval_module.cc.
|
inherited |
Definition at line 17 of file EDProducer.h.
|
inherited |
Definition at line 26 of file Producer.h.
|
explicit |
Constructor.
Arguments:
pset - Fcl parameters.
Definition at line 109 of file CRHitRemoval_module.cc.
References recob::HitAndAssociationsWriterBase::declare_products(), fAssnProducerLabels, fCosmicProducerLabels, fCosmicTagThresholds, fEndTickPadding, fHitProducerLabel, fMaxOutOfTime, fNumCRRejects, fNumEvent, fPFParticleProducerLabel, fTrackProducerLabels, and art::ProductRegistryHelper::producesCollector().
|
virtual |
Begin job method.
Reimplemented from art::EDProducer.
Definition at line 132 of file CRHitRemoval_module.cc.
References fDetectorWidthTicks, fEndTickPadding, fMaxTickDrift, fMinTickDrift, and detinfo::sampling_rate().
|
private |
Find all hits in PFParticle hierarchy
Arguments:
pfParticle - the top level PFParticle to have hits removed pfParticleHandle - handle to the PFParticle objects partToClusAssns - list of PFParticle to Cluster associations clusToHitAssns - list of Cluster to Hit associations hitVec - the current list of hits
This recursively called method will remove all hits associated to an input PFParticle and, in addition, will call itself for all daughters of the input PFParticle
Definition at line 416 of file CRHitRemoval_module.cc.
References recob::PFParticle::Daughters(), fMaxTickDrift, fMinTickDrift, art::Ptr< T >::get(), and recob::PFParticle::Self().
Referenced by produce().
|
protectedinherited |
Definition at line 61 of file ModuleBase.h.
References art::ModuleBase::collector_, and art::ConsumesCollector::consumes().
|
protectedinherited |
|
protectedinherited |
Definition at line 75 of file ModuleBase.h.
References art::ModuleBase::collector_, and art::ConsumesCollector::consumesMany().
|
protectedinherited |
|
inherited |
Definition at line 68 of file ModuleBase.h.
References art::ModuleBase::collector_, and art::ConsumesCollector::consumesView().
|
private |
Definition at line 462 of file CRHitRemoval_module.cc.
References recob::HitCollectionCreator::emplace_back().
Referenced by produce().
|
private |
Definition at line 476 of file CRHitRemoval_module.cc.
References recob::HitCollectionCreator::emplace_back(), fMaxTickDrift, and fMinTickDrift.
Referenced by produce().
|
inherited |
Definition at line 22 of file Producer.cc.
References art::detail::Producer::beginJobWithFrame(), and art::detail::Producer::setupQueues().
|
inherited |
Definition at line 65 of file Producer.cc.
References art::detail::Producer::beginRunWithFrame(), art::RangeSet::forRun(), art::RunPrincipal::makeRun(), r, art::RunPrincipal::runID(), and art::ModuleContext::scheduleID().
|
inherited |
Definition at line 85 of file Producer.cc.
References art::detail::Producer::beginSubRunWithFrame(), art::RangeSet::forSubRun(), art::SubRunPrincipal::makeSubRun(), art::ModuleContext::scheduleID(), and art::SubRunPrincipal::subRunID().
|
inherited |
Definition at line 30 of file Producer.cc.
References art::detail::Producer::endJobWithFrame().
|
inherited |
Definition at line 75 of file Producer.cc.
References art::detail::Producer::endRunWithFrame(), art::RunPrincipal::makeRun(), r, art::ModuleContext::scheduleID(), and art::Principal::seenRanges().
|
inherited |
Definition at line 95 of file Producer.cc.
References art::detail::Producer::endSubRunWithFrame(), art::SubRunPrincipal::makeSubRun(), art::ModuleContext::scheduleID(), and art::Principal::seenRanges().
|
inherited |
Definition at line 105 of file Producer.cc.
References art::detail::Producer::checkPutProducts_, e, art::EventPrincipal::makeEvent(), art::detail::Producer::produceWithFrame(), and art::ModuleContext::scheduleID().
|
inherited |
Definition at line 44 of file Producer.cc.
References art::detail::Producer::respondToCloseInputFileWithFrame().
|
inherited |
Definition at line 58 of file Producer.cc.
References art::detail::Producer::respondToCloseOutputFilesWithFrame().
|
inherited |
Definition at line 37 of file Producer.cc.
References art::detail::Producer::respondToOpenInputFileWithFrame().
|
inherited |
Definition at line 51 of file Producer.cc.
References art::detail::Producer::respondToOpenOutputFilesWithFrame().
|
virtual |
End job method.
Reimplemented from art::EDProducer.
Definition at line 521 of file CRHitRemoval_module.cc.
References fNumCRRejects, and fNumEvent.
|
inherited |
Definition at line 10 of file Modifier.cc.
References art::ProductRegistryHelper::fillDescriptions(), and art::ModuleBase::moduleDescription().
|
private |
Definition at line 503 of file CRHitRemoval_module.cc.
Referenced by produce().
|
inherited |
Definition at line 43 of file ModuleBase.cc.
References art::ModuleBase::collector_, and art::ConsumesCollector::getConsumables().
|
inherited |
Definition at line 37 of file ModuleBase.cc.
References art::ModuleBase::doMakeWorker(), and art::NumBranchTypes.
|
protectedinherited |
Definition at line 82 of file ModuleBase.h.
References art::ModuleBase::collector_, and art::ConsumesCollector::mayConsume().
|
protectedinherited |
Definition at line 96 of file ModuleBase.h.
References art::ModuleBase::collector_, and art::ConsumesCollector::mayConsumeMany().
|
protectedinherited |
|
inherited |
Definition at line 89 of file ModuleBase.h.
References art::ModuleBase::collector_, and art::ConsumesCollector::mayConsumeView().
|
inherited |
Definition at line 13 of file ModuleBase.cc.
References art::errors::LogicError.
Referenced by art::OutputModule::doRespondToOpenInputFile(), art::OutputModule::doWriteEvent(), art::Modifier::fillProductDescriptions(), art::OutputModule::makePlugins_(), art::OutputWorker::OutputWorker(), reco::shower::LArPandoraModularShowerCreation::produce(), art::Modifier::registerProducts(), and art::OutputModule::registerProducts().
|
virtual |
Produce method.
Arguments:
evt - Art event.
This is the primary method. The goal is to produce a list of recob::Hit objects which are a "clean" subset of all hits and which are believed to be due to a neutrino interaction. It does this by considering input CosmicTag objects, relating them to PFParticles/Tracks and removing the hits associated to those objects which are believed to be Cosmic Rays.
Implements art::EDProducer.
Definition at line 161 of file CRHitRemoval_module.cc.
References collectPFParticleHits(), copyAllHits(), copyInTimeHits(), anab::CosmicTag::CosmicScore(), fAssnProducerLabels, fCosmicProducerLabels, fCosmicTagThresholds, fHitProducerLabel, art::fill_ptr_vector(), FilterHits(), fMaxOutOfTime, fMaxTickDrift, fMinTickDrift, fNumEvent, fPFParticleProducerLabel, fTrackProducerLabels, art::ProductRetriever::getByLabel(), recob::PFParticle::IsPrimary(), art::Handle< T >::isValid(), art::Ptr< T >::key(), recob::PFParticle::Parent(), and track.
|
inherited |
Definition at line 16 of file Modifier.cc.
References art::ModuleBase::moduleDescription(), and art::ProductRegistryHelper::registerProducts().
|
inherited |
|
inherited |
Definition at line 49 of file ModuleBase.cc.
References art::ModuleBase::collector_, and art::ConsumesCollector::sortConsumables().
|
private |
Track to PFParticle assns producer.
Definition at line 84 of file CRHitRemoval_module.cc.
Referenced by CRHitRemoval(), and produce().
|
private |
List of cosmic tagger producers.
Definition at line 80 of file CRHitRemoval_module.cc.
Referenced by CRHitRemoval(), and produce().
|
private |
Thresholds for tagging.
Definition at line 86 of file CRHitRemoval_module.cc.
Referenced by CRHitRemoval(), and produce().
|
private |
Effective drift time in ticks.
Definition at line 90 of file CRHitRemoval_module.cc.
Referenced by beginJob().
|
private |
Padding the end tick.
Definition at line 88 of file CRHitRemoval_module.cc.
Referenced by beginJob(), and CRHitRemoval().
|
private |
The full collection of hits.
Definition at line 81 of file CRHitRemoval_module.cc.
Referenced by CRHitRemoval(), and produce().
|
private |
Max hits that can be out of time before rejecting.
Definition at line 93 of file CRHitRemoval_module.cc.
Referenced by CRHitRemoval(), and produce().
|
private |
Ending tick.
Definition at line 92 of file CRHitRemoval_module.cc.
Referenced by beginJob(), collectPFParticleHits(), copyInTimeHits(), and produce().
|
private |
Starting tick.
Definition at line 91 of file CRHitRemoval_module.cc.
Referenced by beginJob(), collectPFParticleHits(), copyInTimeHits(), and produce().
|
private |
Number of tracks produced.
Definition at line 97 of file CRHitRemoval_module.cc.
Referenced by CRHitRemoval(), and endJob().
|
private |
Number of events seen.
Definition at line 96 of file CRHitRemoval_module.cc.
Referenced by CRHitRemoval(), endJob(), and produce().
|
private |
PFParticle producer.
Definition at line 82 of file CRHitRemoval_module.cc.
Referenced by CRHitRemoval(), and produce().
|
private |
Track producer.
Definition at line 83 of file CRHitRemoval_module.cc.
Referenced by CRHitRemoval(), and produce().