1 #ifndef art_Framework_Core_OutputModule_h 2 #define art_Framework_Core_OutputModule_h 32 #include "cetlib/BasicPluginFactory.h" 50 class ResultsPrincipal;
70 return {
"module_label",
"streamName",
"FCMDPlugins"};
83 std::vector<std::string>{
"keep *"}};
182 std::vector<std::unique_ptr<FileCatalogMetadataPlugin>>;
216 return "OutputWorker";
virtual void doRegisterProducts(MasterProductRegistry &, ProductDescriptions &, ModuleDescription const &)
virtual void writeFileIdentifier()
bool doBeginSubRun(SubRunPrincipal const &srp, CurrentProcessingContext const *cpc)
std::unique_ptr< GroupSelector const > groupSelector_
virtual void writeProcessConfigurationRegistry()
fhicl::Atom< std::string > fileName
virtual void readResults(ResultsPrincipal const &resp)
CurrentProcessingContext const * currentContext() const
void setModuleDescription(ModuleDescription const &md)
virtual void finishEndFile()
fhicl::Sequence< std::string > outputCommands
fhicl::Atom< std::string > moduleType
BranchChildren const & branchChildren() const
virtual void event(EventPrincipal const &)
virtual void respondToCloseOutputFiles(FileBlock const &)
virtual void writeRun(RunPrincipal &r)=0
virtual void writeSubRun(SubRunPrincipal &sr)=0
std::vector< std::string > pluginNames_
OutputModule & operator=(OutputModule const &)=delete
virtual void respondToOpenInputFile(FileBlock const &)
void writeFileCatalogMetadata()
std::map< BranchKey, BranchDescription > ProductList
void doWriteSubRun(SubRunPrincipal &srp)
std::vector< BranchDescription > ProductDescriptions
virtual Granularity fileGranularity() const
virtual void writeFileFormatVersion()
virtual void beginRun(RunPrincipal const &)
BranchChildren branchChildren_
fhicl::TableFragment< EventObserverBase::EOConfig > eoFragment
virtual void endRun(RunPrincipal const &)
virtual bool isFileOpen() const
virtual std::string const & lastClosedFileName() const
std::vector< std::unique_ptr< FileCatalogMetadataPlugin >> PluginCollection_t
void doRespondToCloseInputFile(FileBlock const &fb)
OutputFileStatus fileStatus() const
virtual void writeFileIndex()
virtual void respondToOpenOutputFiles(FileBlock const &)
GroupSelectorRules groupSelectorRules_
bool limitReached() const
PluginCollection_t plugins_
virtual void setSubRunAuxiliaryRangeSetID(RangeSet const &)
auto array(Array const &a)
Returns a manipulator which will print the specified array.
ModuleDescription moduleDescription_
virtual void writeBranchMapper()
std::set< std::string > operator()()
virtual void writeParameterSetRegistry()
std::array< bool, NumBranchTypes > hasNewlyDroppedBranch_
virtual void endSubRun(SubRunPrincipal const &)
virtual void setRunAuxiliaryRangeSetID(RangeSet const &)
virtual void writeParentageRegistry()
cet::exempt_ptr< CurrentProcessingContext const > current_context_
virtual bool requestsToCloseFile() const
PluginCollection_t makePlugins_(fhicl::ParameterSet const &top_pset)
virtual void write(EventPrincipal &e)=0
void doSetSubRunAuxiliaryRangeSetID(RangeSet const &)
SelectionsArray keptProducts_
ServiceHandle< CatalogInterface > ci_
void doWriteEvent(EventPrincipal &ep)
virtual void writeProductDescriptionRegistry()
void registerProducts(MasterProductRegistry &, ProductDescriptions &, ModuleDescription const &)
SelectionsArray const & keptProducts() const
std::array< Selections, NumBranchTypes > SelectionsArray
bool doEndRun(RunPrincipal const &rp, CurrentProcessingContext const *cpc)
std::array< bool, NumBranchTypes > const & hasNewlyDroppedBranch() const
virtual void incrementInputFileNumber()
bool doBeginRun(RunPrincipal const &rp, CurrentProcessingContext const *cpc)
bool selected(BranchDescription const &) const
ModuleDescription const & description() const
std::string configuredFileName_
int remainingEvents() const
void fillDependencyGraph()
cet::BasicPluginFactory pluginFactory_
void doRespondToOpenOutputFiles(FileBlock const &fb)
virtual void postSelectProducts()
fhicl::Atom< std::string > streamName
fhicl::Atom< std::string > dataTier
virtual void openFile(FileBlock const &)
void selectProducts(ProductList const &)
void doWriteRun(RunPrincipal &rp)
virtual void writeEventHistory()
void doSelectProducts(ProductList const &)
virtual void writeProcessHistoryRegistry()
friend class OutputWorker
void doOpenFile(FileBlock const &fb)
virtual ~OutputModule() noexcept=default
virtual void writeProductDependencies()
virtual void setFileStatus(OutputFileStatus)
std::map< ProductID, std::set< ParentageID >> BranchParents
virtual void doWriteFileCatalogMetadata(FileCatalogMetadata::collection_type const &md, FileCatalogMetadata::collection_type const &ssmd)
virtual void respondToCloseInputFile(FileBlock const &)
void doRespondToCloseOutputFiles(FileBlock const &fb)
std::string workerType() const
bool doEndSubRun(SubRunPrincipal const &srp, CurrentProcessingContext const *cpc)
void updateBranchParents(EventPrincipal const &ep)
bool doEvent(EventPrincipal const &ep, CurrentProcessingContext const *cpc, CountingStatistics &)
virtual void beginSubRun(SubRunPrincipal const &)
void doRespondToOpenInputFile(FileBlock const &fb)
virtual void startEndFile()
OutputModule(OutputModule const &)=delete
BranchParents branchParents_
void doSetRunAuxiliaryRangeSetID(RangeSet const &)
void configure(OutputModuleDescription const &desc)