CMS 3D CMS Logo

List of all members | Public Member Functions | Private Attributes
edm::one::OutputModule< T > Class Template Reference

#include "FWCore/Framework/interface/one/OutputModule.h"

Inheritance diagram for edm::one::OutputModule< T >:
edm::one::OutputModuleBase edm::core::OutputModuleCore edm::EDConsumerBase

Public Member Functions

SerialTaskQueueglobalLuminosityBlocksQueue () final
 
SerialTaskQueueglobalRunsQueue () final
 
const OutputModuleoperator= (const OutputModule &)=delete
 
 OutputModule (edm::ParameterSet const &iPSet)
 
 OutputModule (const OutputModule &)=delete
 
bool wantsGlobalLuminosityBlocks () const noexcept final
 
bool wantsGlobalRuns () const noexcept final
 
bool wantsInputProcessBlocks () const noexcept final
 
bool wantsProcessBlocks () const noexcept final
 
- Public Member Functions inherited from edm::one::OutputModuleBase
OutputModuleBaseoperator= (OutputModuleBase const &)=delete
 
 OutputModuleBase (ParameterSet const &pset)
 
 OutputModuleBase (OutputModuleBase const &)=delete
 
SharedResourcesAcquirersharedResourcesAcquirer ()
 
SubProcessParentageHelper const * subProcessParentageHelper () const
 
bool wantsStreamLuminosityBlocks () const noexcept
 
bool wantsStreamRuns () const noexcept
 
- Public Member Functions inherited from edm::core::OutputModuleCore
BranchIDLists const * branchIDLists () const
 
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
std::array< bool, NumBranchTypes > const & hasNewlyDroppedBranch () const
 
SelectedProductsForBranchType const & keptProducts () const
 
int maxEvents () const
 
const ModuleDescriptionmoduleDescription () const
 
OutputModuleCoreoperator= (OutputModuleCore const &)=delete
 
 OutputModuleCore (ParameterSet const &pset)
 
 OutputModuleCore (OutputModuleCore const &)=delete
 
OutputProcessBlockHelper const & outputProcessBlockHelper () const
 
std::string const & processName () const
 
int remainingEvents () const
 
bool selected (BranchDescription const &desc) const
 
void selectProducts (ProductRegistry const &preg, ThinnedAssociationsHelper const &, ProcessBlockHelperBase const &)
 
ThinnedAssociationsHelper const * thinnedAssociationsHelper () const
 
bool wantAllEvents () const
 
 ~OutputModuleCore () override
 
- Public Member Functions inherited from edm::EDConsumerBase
std::vector< ConsumesInfoconsumesInfo () const
 
void convertCurrentProcessAlias (std::string const &processName)
 Convert "@currentProcess" in InputTag process names to the actual current process name. More...
 
 EDConsumerBase ()
 
 EDConsumerBase (EDConsumerBase const &)=delete
 
 EDConsumerBase (EDConsumerBase &&)=default
 
ESResolverIndex const * esGetTokenIndices (edm::Transition iTrans) const
 
std::vector< ESResolverIndex > const & esGetTokenIndicesVector (edm::Transition iTrans) const
 
std::vector< ESRecordIndex > const & esGetTokenRecordIndicesVector (edm::Transition iTrans) const
 
ProductResolverIndexAndSkipBit indexFrom (EDGetToken, BranchType, TypeID const &) const
 
void itemsMayGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
void itemsToGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
std::vector< ProductResolverIndexAndSkipBit > const & itemsToGetFrom (BranchType iType) const
 
void labelsForToken (EDGetToken iToken, Labels &oLabels) const
 
void modulesWhoseProductsAreConsumed (std::array< std::vector< ModuleDescription const *> *, NumBranchTypes > &modulesAll, std::vector< ModuleProcessName > &modulesInPreviousProcesses, ProductRegistry const &preg, std::map< std::string, ModuleDescription const *> const &labelsToDesc, std::string const &processName) const
 
EDConsumerBase const & operator= (EDConsumerBase const &)=delete
 
EDConsumerBaseoperator= (EDConsumerBase &&)=default
 
bool registeredToConsume (ProductResolverIndex, bool, BranchType) const
 
void selectInputProcessBlocks (ProductRegistry const &productRegistry, ProcessBlockHelperBase const &processBlockHelperBase)
 
ProductResolverIndexAndSkipBit uncheckedIndexFrom (EDGetToken) const
 
void updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet)
 
void updateLookup (eventsetup::ESRecordsToProductResolverIndices const &)
 
virtual ~EDConsumerBase () noexcept(false)
 

Private Attributes

impl::OptionalSerialTaskQueueHolder< WantsSerialGlobalLuminosityBlockTransitions< T... >::value > globalLuminosityBlocksQueue_
 
impl::OptionalSerialTaskQueueHolder< WantsSerialGlobalRunTransitions< T... >::value > globalRunsQueue_
 

Additional Inherited Members

- Public Types inherited from edm::one::OutputModuleBase
typedef OutputModuleBase ModuleType
 
- Public Types inherited from edm::core::OutputModuleCore
typedef OutputModuleCore ModuleType
 
- Public Types inherited from edm::EDConsumerBase
typedef ProductLabels Labels
 
- Static Public Member Functions inherited from edm::core::OutputModuleCore
static const std::string & baseType ()
 
static void fillDescription (ParameterSetDescription &desc, std::vector< std::string > const &iDefaultOutputCommands=ProductSelectorRules::defaultSelectionStrings())
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &)
 
- Protected Member Functions inherited from edm::one::OutputModuleBase
void configure (OutputModuleDescription const &desc)
 
void doBeginJob ()
 
bool doEvent (EventTransitionInfo const &, ActivityRegistry *, ModuleCallingContext const *)
 
void doPreallocate (PreallocationConfiguration const &)
 
- Protected Member Functions inherited from edm::core::OutputModuleCore
void configure (OutputModuleDescription const &desc)
 
ModuleDescription const & description () const
 
void doAccessInputProcessBlock (ProcessBlockPrincipal const &, ModuleCallingContext const *)
 
void doBeginJob_ ()
 
bool doBeginLuminosityBlock (LumiTransitionInfo const &, ModuleCallingContext const *)
 
void doBeginProcessBlock (ProcessBlockPrincipal const &, ModuleCallingContext const *)
 
bool doBeginRun (RunTransitionInfo const &, ModuleCallingContext const *)
 
void doEndJob ()
 
bool doEndLuminosityBlock (LumiTransitionInfo const &, ModuleCallingContext const *)
 
void doEndProcessBlock (ProcessBlockPrincipal const &, ModuleCallingContext const *)
 
bool doEndRun (RunTransitionInfo const &, ModuleCallingContext const *)
 
bool doEvent_ (EventTransitionInfo const &, ActivityRegistry *, ModuleCallingContext const *)
 
void doPreallocate_ (PreallocationConfiguration const &)
 
std::map< BranchID::value_type, BranchID::value_type > const & droppedBranchIDToKeptBranchID ()
 
virtual void preallocLumis (unsigned int)
 
ParameterSetID selectorConfig () const
 
void setEventSelectionInfo (std::map< std::string, std::vector< std::pair< std::string, int >>> const &outputModulePathPositions, bool anyProductProduced)
 
- Protected Member Functions inherited from edm::EDConsumerBase
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > consumes (edm::InputTag const &tag)
 
template<BranchType B = InEvent>
EDConsumerBaseAdaptor< Bconsumes (edm::InputTag tag) noexcept
 
EDGetToken consumes (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken consumes (TypeToGet const &id, edm::InputTag const &tag)
 
ConsumesCollector consumesCollector ()
 Use a ConsumesCollector to gather consumes information from helper functions. More...
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes ()
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes (ESInputTag const &tag)
 
template<Transition Tr = Transition::Event>
constexpr auto esConsumes ()
 
template<Transition Tr = Transition::Event>
auto esConsumes (ESInputTag tag)
 
template<Transition Tr = Transition::Event>
ESGetTokenGeneric esConsumes (eventsetup::EventSetupRecordKey const &iRecord, eventsetup::DataKey const &iKey)
 Used with EventSetupRecord::doGet. More...
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > mayConsume (edm::InputTag const &tag)
 
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
void resetItemsToGetFrom (BranchType iType)
 
- Protected Attributes inherited from edm::core::OutputModuleCore
std::atomic< int > remainingEvents_
 

Detailed Description

template<typename... T>
class edm::one::OutputModule< T >

Description: [one line class summary]

Usage: <usage>

Definition at line 30 of file OutputModule.h.

Constructor & Destructor Documentation

◆ OutputModule() [1/2]

template<typename... T>
edm::one::OutputModule< T >::OutputModule ( edm::ParameterSet const &  iPSet)
inline

Definition at line 32 of file OutputModule.h.

◆ OutputModule() [2/2]

template<typename... T>
edm::one::OutputModule< T >::OutputModule ( const OutputModule< T > &  )
delete

Member Function Documentation

◆ globalLuminosityBlocksQueue()

template<typename... T>
SerialTaskQueue* edm::one::OutputModule< T >::globalLuminosityBlocksQueue ( )
inlinefinalvirtual

Reimplemented from edm::one::OutputModuleBase.

Definition at line 54 of file OutputModule.h.

54 { return globalLuminosityBlocksQueue_.queue(); }
impl::OptionalSerialTaskQueueHolder< WantsSerialGlobalLuminosityBlockTransitions< T... >::value > globalLuminosityBlocksQueue_
Definition: OutputModule.h:64

◆ globalRunsQueue()

template<typename... T>
SerialTaskQueue* edm::one::OutputModule< T >::globalRunsQueue ( )
inlinefinalvirtual

Reimplemented from edm::one::OutputModuleBase.

Definition at line 53 of file OutputModule.h.

53 { return globalRunsQueue_.queue(); }
impl::OptionalSerialTaskQueueHolder< WantsSerialGlobalRunTransitions< T... >::value > globalRunsQueue_
Definition: OutputModule.h:62

◆ operator=()

template<typename... T>
const OutputModule& edm::one::OutputModule< T >::operator= ( const OutputModule< T > &  )
delete

◆ wantsGlobalLuminosityBlocks()

template<typename... T>
bool edm::one::OutputModule< T >::wantsGlobalLuminosityBlocks ( ) const
inlinefinalvirtualnoexcept

Implements edm::one::OutputModuleBase.

Definition at line 49 of file OutputModule.h.

49  {
50  return WantsGlobalLuminosityBlockTransitions<T...>::value;
51  }
long double T

◆ wantsGlobalRuns()

template<typename... T>
bool edm::one::OutputModule< T >::wantsGlobalRuns ( ) const
inlinefinalvirtualnoexcept

Implements edm::one::OutputModuleBase.

Definition at line 48 of file OutputModule.h.

48 { return WantsGlobalRunTransitions<T...>::value; }
long double T

◆ wantsInputProcessBlocks()

template<typename... T>
bool edm::one::OutputModule< T >::wantsInputProcessBlocks ( ) const
inlinefinalvirtualnoexcept

Implements edm::one::OutputModuleBase.

Definition at line 47 of file OutputModule.h.

47 { return WantsInputProcessBlockTransitions<T...>::value; }
long double T

◆ wantsProcessBlocks()

template<typename... T>
bool edm::one::OutputModule< T >::wantsProcessBlocks ( ) const
inlinefinalvirtualnoexcept

Implements edm::one::OutputModuleBase.

Definition at line 46 of file OutputModule.h.

46 { return WantsProcessBlockTransitions<T...>::value; }
long double T

Member Data Documentation

◆ globalLuminosityBlocksQueue_

template<typename... T>
impl::OptionalSerialTaskQueueHolder<WantsSerialGlobalLuminosityBlockTransitions<T...>::value> edm::one::OutputModule< T >::globalLuminosityBlocksQueue_
private

◆ globalRunsQueue_

template<typename... T>
impl::OptionalSerialTaskQueueHolder<WantsSerialGlobalRunTransitions<T...>::value> edm::one::OutputModule< T >::globalRunsQueue_
private