CMS 3D CMS Logo

List of all members | Public Member Functions
edm::OutputModuleCommunicator Class Referenceabstract

#include "FWCore/Framework/interface/OutputModuleCommunicator.h"

Inheritance diagram for edm::OutputModuleCommunicator:
edm::OutputModuleCommunicatorT< T >

Public Member Functions

virtual void closeFile ()=0
 
virtual void configure (OutputModuleDescription const &desc)=0
 
virtual ModuleDescription const & description () const =0
 
virtual SelectedProductsForBranchType const & keptProducts () const =0
 
virtual bool limitReached () const =0
 
virtual void openFile (FileBlock const &fb)=0
 
OutputModuleCommunicatoroperator= (const OutputModuleCommunicator &)=delete
 
 OutputModuleCommunicator ()=default
 
 OutputModuleCommunicator (const OutputModuleCommunicator &)=delete
 
virtual void selectProducts (ProductRegistry const &preg, ThinnedAssociationsHelper const &, ProcessBlockHelperBase const &)=0
 
virtual void setEventSelectionInfo (std::map< std::string, std::vector< std::pair< std::string, int > > > const &outputModulePathPositions, bool anyProductProduced)=0
 
virtual bool shouldWeCloseFile () const =0
 
virtual bool wantAllEvents () const =0
 
virtual void writeLumiAsync (WaitingTaskHolder iTask, LuminosityBlockPrincipal const &, ProcessContext const *, ActivityRegistry *) noexcept=0
 
virtual void writeProcessBlockAsync (WaitingTaskHolder iTask, ProcessBlockPrincipal const &, ProcessContext const *, ActivityRegistry *) noexcept=0
 
virtual void writeRunAsync (WaitingTaskHolder iTask, RunPrincipal const &, ProcessContext const *, ActivityRegistry *, MergeableRunProductMetadata const *) noexcept=0
 
virtual ~OutputModuleCommunicator ()
 

Detailed Description

Description: Base class used by the framework to communicate with an OutputModule

Usage: <usage>

Definition at line 40 of file OutputModuleCommunicator.h.

Constructor & Destructor Documentation

◆ OutputModuleCommunicator() [1/2]

edm::OutputModuleCommunicator::OutputModuleCommunicator ( )
default

◆ OutputModuleCommunicator() [2/2]

edm::OutputModuleCommunicator::OutputModuleCommunicator ( const OutputModuleCommunicator )
delete

◆ ~OutputModuleCommunicator()

OutputModuleCommunicator::~OutputModuleCommunicator ( )
virtual

Definition at line 20 of file OutputModuleCommunicator.cc.

20 {}

Member Function Documentation

◆ closeFile()

virtual void edm::OutputModuleCommunicator::closeFile ( )
pure virtual

◆ configure()

virtual void edm::OutputModuleCommunicator::configure ( OutputModuleDescription const &  desc)
pure virtual

◆ description()

virtual ModuleDescription const& edm::OutputModuleCommunicator::description ( ) const
pure virtual

◆ keptProducts()

virtual SelectedProductsForBranchType const& edm::OutputModuleCommunicator::keptProducts ( ) const
pure virtual

◆ limitReached()

virtual bool edm::OutputModuleCommunicator::limitReached ( ) const
pure virtual
Returns
true if OutputModule has reached its limit on maximum number of events it wants to see

Implemented in edm::OutputModuleCommunicatorT< T >.

◆ openFile()

virtual void edm::OutputModuleCommunicator::openFile ( FileBlock const &  fb)
pure virtual

◆ operator=()

OutputModuleCommunicator& edm::OutputModuleCommunicator::operator= ( const OutputModuleCommunicator )
delete

◆ selectProducts()

virtual void edm::OutputModuleCommunicator::selectProducts ( ProductRegistry const &  preg,
ThinnedAssociationsHelper const &  ,
ProcessBlockHelperBase const &   
)
pure virtual

◆ setEventSelectionInfo()

virtual void edm::OutputModuleCommunicator::setEventSelectionInfo ( std::map< std::string, std::vector< std::pair< std::string, int > > > const &  outputModulePathPositions,
bool  anyProductProduced 
)
pure virtual

◆ shouldWeCloseFile()

virtual bool edm::OutputModuleCommunicator::shouldWeCloseFile ( ) const
pure virtual
Returns
true if output module wishes to close its file

Implemented in edm::OutputModuleCommunicatorT< T >.

Referenced by edm::Schedule::shouldWeCloseOutput().

◆ wantAllEvents()

virtual bool edm::OutputModuleCommunicator::wantAllEvents ( ) const
pure virtual
Returns
true if no event filtering is applied to OutputModule

Implemented in edm::OutputModuleCommunicatorT< T >.

◆ writeLumiAsync()

virtual void edm::OutputModuleCommunicator::writeLumiAsync ( WaitingTaskHolder  iTask,
LuminosityBlockPrincipal const &  ,
ProcessContext const *  ,
ActivityRegistry  
)
pure virtualnoexcept

◆ writeProcessBlockAsync()

virtual void edm::OutputModuleCommunicator::writeProcessBlockAsync ( WaitingTaskHolder  iTask,
ProcessBlockPrincipal const &  ,
ProcessContext const *  ,
ActivityRegistry  
)
pure virtualnoexcept

◆ writeRunAsync()

virtual void edm::OutputModuleCommunicator::writeRunAsync ( WaitingTaskHolder  iTask,
RunPrincipal const &  ,
ProcessContext const *  ,
ActivityRegistry ,
MergeableRunProductMetadata const *   
)
pure virtualnoexcept