LArSoft
v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
|
#include "OutputModule.h"
Classes | |
struct | Config |
Public Types | |
using | ModuleType = OutputModule |
using | WorkerType = OutputWorker |
using | PluginCollection_t = std::vector< std::unique_ptr< FileCatalogMetadataPlugin >> |
Public Member Functions | |
virtual | ~OutputModule () |
OutputModule (fhicl::ParameterSet const &pset) | |
OutputModule (fhicl::TableFragment< Config > const &pset) | |
OutputModule (OutputModule const &)=delete | |
OutputModule (OutputModule &&)=delete | |
OutputModule & | operator= (OutputModule const &)=delete |
OutputModule & | operator= (OutputModule &&)=delete |
bool | fileIsOpen () const |
OutputFileStatus | fileStatus () const |
virtual std::string const & | lastClosedFileName () const |
SelectionsArray const & | keptProducts () const |
bool | selected (BranchDescription const &) const |
std::array< bool, NumBranchTypes > const & | hasNewlyDroppedBranch () const |
void | selectProducts (ProductTables const &) |
void | doSelectProducts (ProductTables const &) |
void | registerProducts (ProductDescriptions &) |
BranchChildren const & | branchChildren () const |
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) |
hep::concurrency::SerialTaskQueueChain * | serialTaskQueueChain () const |
std::set< std::string > const & | sharedResources () const |
void | createQueues (SharedResources const &resources) |
template<BranchType , typename... T> | |
void | serialize (T const &...resources) |
template<BranchType , typename... T> | |
void | serializeExternal (T const &...resources) |
Protected Member Functions | |
virtual void | doRegisterProducts (ProductDescriptions &, ModuleDescription const &) |
std::string const & | processName () const |
bool | wantAllEvents () const noexcept |
bool | wantEvent (ScheduleID id, Event const &e) const |
Handle< TriggerResults > | getTriggerResults (Event const &e) const |
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 () |
template<BranchType BT = InEvent, typename... T> | |
void | serialize (T const &...) |
template<BranchType BT = InEvent, typename... T> | |
void | serializeExternal (T const &...) |
template<BranchType BT = InEvent> | |
void | async () |
Private Types | |
using | BranchParents = std::map< ProductID, std::set< ParentageID >> |
Private Attributes | |
SelectionsArray | keptProducts_ {{}} |
std::array< std::unique_ptr< GroupSelector const >, NumBranchTypes > | groupSelector_ {{nullptr}} |
std::array< bool, NumBranchTypes > | hasNewlyDroppedBranch_ {{false}} |
GroupSelectorRules | groupSelectorRules_ |
std::map< ProductID, std::set< ParentageID > > | branchParents_ {} |
BranchChildren | branchChildren_ {} |
std::string | configuredFileName_ |
std::string | dataTier_ |
std::string | streamName_ |
ServiceHandle< CatalogInterface > | ci_ {} |
cet::BasicPluginFactory | pluginFactory_ {} |
std::vector< std::string > | pluginNames_ {} |
PluginCollection_t | plugins_ |
Friends | |
class | OutputWorker |
Definition at line 49 of file OutputModule.h.
|
private |
Definition at line 231 of file OutputModule.h.
Definition at line 53 of file OutputModule.h.
using art::OutputModule::PluginCollection_t = std::vector<std::unique_ptr<FileCatalogMetadataPlugin>> |
Definition at line 57 of file OutputModule.h.
Definition at line 54 of file OutputModule.h.
|
virtualdefault |
|
explicit |
Definition at line 74 of file OutputModule.cc.
References configuredFileName_, dataTier_, groupSelectorRules_, art::detail::LegacyResource, makePlugins_(), plugins_, art::detail::SharedModule::serialize(), and streamName_.
|
explicit |
Definition at line 57 of file OutputModule.cc.
References configuredFileName_, dataTier_, groupSelectorRules_, art::detail::LegacyResource, makePlugins_(), plugins_, art::detail::SharedModule::serialize(), and streamName_.
|
delete |
|
delete |
|
inlineprotectedinherited |
Definition at line 38 of file SharedModule.h.
References art::detail::SharedModule::asyncDeclared_, art::detail::SharedModule::implicit_serialize(), art::InEvent, and art::detail::SharedModule::serialize_for().
|
privatevirtual |
Reimplemented in art::ProvenanceDumper< DETAIL, std::void_t< typename DETAIL::Config > >, and art::ProvenanceDumper< DETAIL, Enable >.
Definition at line 425 of file OutputModule.cc.
Referenced by doBeginJob().
|
privatevirtual |
|
privatevirtual |
BranchChildren const & art::OutputModule::branchChildren | ( | ) | const |
|
private |
|
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().
|
inherited |
Definition at line 34 of file SharedModule.cc.
References art::detail::SharedModule::asyncDeclared_, util::cbegin(), util::cend(), art::detail::SharedModule::chain_, art::detail::SharedResources::createQueues(), e, util::empty(), art::errors::LogicError, and art::detail::SharedModule::resourceNames_.
Referenced by doBeginJob(), art::SharedFilter::setupQueues(), art::SharedProducer::setupQueues(), art::SharedAnalyzer::setupQueues(), art::EDFilter::setupQueues(), art::EDProducer::setupQueues(), and art::EDAnalyzer::setupQueues().
|
privatevirtual |
Definition at line 184 of file OutputModule.cc.
References beginJob(), art::detail::SharedModule::createQueues(), and plugins_.
|
private |
Definition at line 192 of file OutputModule.cc.
References beginRun(), FDEBUG, art::RunPrincipal::makeRun(), plugins_, and r.
|
private |
Definition at line 202 of file OutputModule.cc.
References beginSubRun(), FDEBUG, art::SubRunPrincipal::makeSubRun(), and plugins_.
|
private |
|
private |
|
private |
Definition at line 279 of file OutputModule.cc.
References endRun(), FDEBUG, art::RunPrincipal::makeRun(), plugins_, and r.
|
private |
Definition at line 255 of file OutputModule.cc.
References endSubRun(), FDEBUG, art::SubRunPrincipal::makeSubRun(), and plugins_.
|
private |
Definition at line 213 of file OutputModule.cc.
References event(), FDEBUG, art::EventPrincipal::makeEvent(), art::ModuleContext::scheduleID(), and art::Observer::wantEvent().
|
finalprivatevirtual |
Implements art::ModuleBase.
Definition at line 89 of file OutputModule.cc.
|
private |
Definition at line 303 of file OutputModule.cc.
References isFileOpen(), and openFile().
|
protectedvirtual |
|
private |
Definition at line 329 of file OutputModule.cc.
References respondToCloseInputFile().
|
private |
Definition at line 341 of file OutputModule.cc.
References respondToCloseOutputFiles().
|
private |
Definition at line 313 of file OutputModule.cc.
References art::ModuleBase::moduleDescription(), art::ModuleDescription::processConfiguration(), readResults(), respondToOpenInputFile(), and art::FileBlock::resultsPrincipal().
|
private |
Definition at line 335 of file OutputModule.cc.
References respondToOpenOutputFiles().
void art::OutputModule::doSelectProducts | ( | ProductTables const & | tables | ) |
Definition at line 123 of file OutputModule.cc.
References art::combinable(), art::ProductTables::descriptions(), util::end(), art::for_each_branch_type(), groupSelector_, groupSelectorRules_, hasNewlyDroppedBranch_, keptProducts(), keptProducts_, selected(), and util::values().
Referenced by selectProducts().
|
private |
Definition at line 272 of file OutputModule.cc.
References FDEBUG, and setRunAuxiliaryRangeSetID().
|
private |
Definition at line 249 of file OutputModule.cc.
References setSubRunAuxiliaryRangeSetID().
|
private |
Definition at line 229 of file OutputModule.cc.
References ci_, e, art::EventPrincipal::eventID(), FDEBUG, art::Observer::getTriggerResults(), art::ModuleBase::moduleDescription(), plugins_, art::ModuleContext::scheduleID(), updateBranchParents(), art::Observer::wantEvent(), and write().
|
privatevirtual |
|
private |
Definition at line 289 of file OutputModule.cc.
References FDEBUG, and writeRun().
|
private |
Definition at line 265 of file OutputModule.cc.
References FDEBUG, and writeSubRun().
|
privatevirtual |
Reimplemented in art::ProvenanceDumper< DETAIL, std::void_t< typename DETAIL::Config > >, and art::ProvenanceDumper< DETAIL, Enable >.
Definition at line 429 of file OutputModule.cc.
Referenced by doEndJob().
|
privatevirtual |
|
privatevirtual |
|
privatevirtual |
|
privatevirtual |
bool art::OutputModule::fileIsOpen | ( | ) | const |
OutputFileStatus art::OutputModule::fileStatus | ( | ) | const |
|
private |
Definition at line 409 of file OutputModule.cc.
References branchChildren_, branchParents_, art::thread_safe_registry_via_id< K, M >::get(), art::BranchChildren::insertChild(), and art::Parentage::parents().
Referenced by reallyCloseFile().
|
privatevirtual |
|
inherited |
Definition at line 43 of file ModuleBase.cc.
References art::ModuleBase::collector_, and art::ConsumesCollector::getConsumables().
|
protectedinherited |
Definition at line 75 of file Observer.cc.
References art::ProductRetriever::get(), and art::Observer::selectors_.
Referenced by doWriteEvent(), and art::Observer::wantAllEvents().
std::array< bool, NumBranchTypes > const & art::OutputModule::hasNewlyDroppedBranch | ( | ) | const |
Definition at line 654 of file OutputModule.cc.
References hasNewlyDroppedBranch_.
|
privatevirtual |
Definition at line 101 of file OutputModule.cc.
|
privatevirtual |
Definition at line 485 of file OutputModule.cc.
Referenced by doCloseFile(), doOpenFile(), and fileIsOpen().
SelectionsArray const & art::OutputModule::keptProducts | ( | ) | const |
Definition at line 640 of file OutputModule.cc.
References keptProducts_.
Referenced by doSelectProducts().
|
virtual |
|
private |
Definition at line 610 of file OutputModule.cc.
References art::errors::Configuration, e, art::ModuleBase::moduleDescription(), art::ModuleDescription::moduleLabel(), pluginFactory_, pluginNames_, and value.
Referenced by OutputModule().
|
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 doRespondToOpenInputFile(), doWriteEvent(), art::Modifier::fillProductDescriptions(), makePlugins_(), art::OutputWorker::OutputWorker(), reco::shower::LArPandoraModularShowerCreation::produce(), art::Modifier::registerProducts(), and registerProducts().
|
privatevirtual |
|
delete |
|
delete |
|
privatevirtual |
|
protectedinherited |
Definition at line 57 of file Observer.cc.
References art::Observer::process_name_.
Referenced by art::FileDumperOutput::printPrincipal().
|
privatevirtual |
Reimplemented in art::FileDumperOutput.
Definition at line 469 of file OutputModule.cc.
Referenced by doRespondToOpenInputFile().
|
private |
Definition at line 357 of file OutputModule.cc.
References branchChildren_, branchParents_, art::BranchChildren::clear(), fillDependencyGraph(), finishEndFile(), startEndFile(), writeFileCatalogMetadata(), writeFileFormatVersion(), writeFileIdentifier(), writeFileIndex(), writeParameterSetRegistry(), writeParentageRegistry(), writeProcessConfigurationRegistry(), writeProcessHistoryRegistry(), writeProductDependencies(), and writeProductDescriptionRegistry().
Referenced by doCloseFile().
void art::OutputModule::registerProducts | ( | ProductDescriptions & | producedProducts | ) |
Definition at line 173 of file OutputModule.cc.
References doRegisterProducts(), and art::ModuleBase::moduleDescription().
|
privatevirtual |
Definition at line 105 of file OutputModule.cc.
|
privatevirtual |
|
privatevirtual |
|
privatevirtual |
|
privatevirtual |
bool art::OutputModule::selected | ( | BranchDescription const & | pd | ) | const |
Definition at line 646 of file OutputModule.cc.
References art::BranchDescription::branchType(), and groupSelector_.
Referenced by doSelectProducts().
void art::OutputModule::selectProducts | ( | ProductTables const & | tables | ) |
Definition at line 162 of file OutputModule.cc.
References doSelectProducts(), and postSelectProducts().
|
protectedinherited |
|
inherited |
Definition at line 83 of file SharedModule.h.
References art::detail::SharedModule::serialize_for_resource().
|
protectedinherited |
Referenced by wcls::WireCellToolkit::WireCellToolkit().
|
inherited |
Definition at line 90 of file SharedModule.h.
References art::detail::SharedModule::serialize_for_external_resource().
|
inherited |
Definition at line 22 of file SharedModule.cc.
References art::detail::SharedModule::chain_.
|
privatevirtual |
Definition at line 491 of file OutputModule.cc.
|
inherited |
|
privatevirtual |
|
privatevirtual |
Definition at line 457 of file OutputModule.cc.
Referenced by doSetSubRunAuxiliaryRangeSetID().
|
inherited |
Definition at line 28 of file SharedModule.cc.
References art::detail::SharedModule::resourceNames_.
|
inherited |
Definition at line 49 of file ModuleBase.cc.
References art::ModuleBase::collector_, and art::ConsumesCollector::sortConsumables().
|
privatevirtual |
|
private |
Definition at line 379 of file OutputModule.cc.
References branchChildren_, branchParents_, and art::BranchChildren::insertEmpty().
Referenced by doWriteEvent().
|
inlineprotectednoexceptinherited |
Definition at line 31 of file Observer.h.
References e, art::Observer::getTriggerResults(), art::Observer::wantAllEvents_, and art::Observer::wantEvent().
|
protectedinherited |
Definition at line 63 of file Observer.cc.
References art::Observer::rejectors_, art::Observer::selectors_, and art::Observer::wantAllEvents_.
Referenced by doEvent(), doWriteEvent(), and art::Observer::wantAllEvents().
|
privatepure virtual |
|
private |
Definition at line 573 of file OutputModule.cc.
References dataTier_, doWriteFileCatalogMetadata(), pluginNames_, plugins_, and streamName_.
Referenced by reallyCloseFile().
|
privatevirtual |
|
privatevirtual |
|
privatevirtual |
|
privatevirtual |
|
privatevirtual |
|
privatevirtual |
|
privatevirtual |
|
privatevirtual |
|
privatevirtual |
Definition at line 527 of file OutputModule.cc.
References art::errors::DataCorruption, parser(), art::plugin, tmp, and lar::dump::vector().
Referenced by reallyCloseFile().
|
privatepure virtual |
|
privatepure virtual |
|
friend |
Definition at line 50 of file OutputModule.h.
|
private |
Definition at line 233 of file OutputModule.h.
Referenced by branchChildren(), fillDependencyGraph(), reallyCloseFile(), and updateBranchParents().
|
private |
Definition at line 232 of file OutputModule.h.
Referenced by fillDependencyGraph(), reallyCloseFile(), and updateBranchParents().
|
private |
Definition at line 237 of file OutputModule.h.
Referenced by doWriteEvent().
|
private |
Definition at line 234 of file OutputModule.h.
Referenced by lastClosedFileName(), and OutputModule().
|
private |
Definition at line 235 of file OutputModule.h.
Referenced by OutputModule(), and writeFileCatalogMetadata().
|
private |
Definition at line 228 of file OutputModule.h.
Referenced by doSelectProducts(), and selected().
|
private |
Definition at line 230 of file OutputModule.h.
Referenced by doSelectProducts(), and OutputModule().
|
private |
Definition at line 229 of file OutputModule.h.
Referenced by doSelectProducts(), and hasNewlyDroppedBranch().
|
private |
Definition at line 226 of file OutputModule.h.
Referenced by doSelectProducts(), and keptProducts().
|
private |
Definition at line 238 of file OutputModule.h.
Referenced by makePlugins_().
|
private |
Definition at line 241 of file OutputModule.h.
Referenced by makePlugins_(), and writeFileCatalogMetadata().
|
private |
Definition at line 242 of file OutputModule.h.
Referenced by doBeginJob(), doBeginRun(), doBeginSubRun(), doEndJob(), doEndRun(), doEndSubRun(), doWriteEvent(), OutputModule(), and writeFileCatalogMetadata().
|
private |
Definition at line 236 of file OutputModule.h.
Referenced by OutputModule(), and writeFileCatalogMetadata().