CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions
SonicEDProducer< Client, Capabilities > Class Template Referenceabstract

#include <SonicEDProducer.h>

Inheritance diagram for SonicEDProducer< Client, Capabilities >:
SonicAcquirer< Client, edm::stream::EDProducer< edm::ExternalWork, Capabilities... > > edm::stream::EDProducer< edm::ExternalWork, Capabilities... >

Public Types

typedef Client::Output Output
 
- Public Types inherited from SonicAcquirer< Client, edm::stream::EDProducer< edm::ExternalWork, Capabilities... > >
typedef Client::Input Input
 
- Public Types inherited from edm::stream::EDProducer< edm::ExternalWork, Capabilities... >
typedef CacheContexts< T... > CacheTypes
 
typedef CacheTypes::GlobalCache GlobalCache
 
typedef AbilityChecker< T... > HasAbility
 
typedef CacheTypes::LuminosityBlockCache LuminosityBlockCache
 
typedef LuminosityBlockContextT< LuminosityBlockCache, RunCache, GlobalCacheLuminosityBlockContext
 
typedef CacheTypes::LuminosityBlockSummaryCache LuminosityBlockSummaryCache
 
typedef CacheTypes::RunCache RunCache
 
typedef RunContextT< RunCache, GlobalCacheRunContext
 
typedef CacheTypes::RunSummaryCache RunSummaryCache
 

Public Member Functions

void produce (edm::Event &iEvent, edm::EventSetup const &iSetup) final
 
virtual void produce (edm::Event &iEvent, edm::EventSetup const &iSetup, Output const &iOutput)=0
 
 SonicEDProducer (edm::ParameterSet const &cfg)
 
 ~SonicEDProducer () override=default
 
- Public Member Functions inherited from SonicAcquirer< Client, edm::stream::EDProducer< edm::ExternalWork, Capabilities... > >
void acquire (edm::Event const &iEvent, edm::EventSetup const &iSetup, edm::WaitingTaskWithArenaHolder holder) final
 
virtual void acquire (edm::Event const &iEvent, edm::EventSetup const &iSetup, Input &iInput)=0
 
 SonicAcquirer (edm::ParameterSet const &cfg)
 
 ~SonicAcquirer () override=default
 
- Public Member Functions inherited from edm::stream::EDProducer< edm::ExternalWork, Capabilities... >
 EDProducer ()=default
 
bool hasAbilityToProduceInBeginLumis () const final
 
bool hasAbilityToProduceInBeginProcessBlocks () const final
 
bool hasAbilityToProduceInBeginRuns () const final
 
bool hasAbilityToProduceInEndLumis () const final
 
bool hasAbilityToProduceInEndProcessBlocks () const final
 
bool hasAbilityToProduceInEndRuns () const final
 

Additional Inherited Members

- Protected Member Functions inherited from SonicAcquirer< Client, edm::stream::EDProducer< edm::ExternalWork, Capabilities... > >
void setDebugName (const std::string &debugName)
 
- Protected Attributes inherited from SonicAcquirer< Client, edm::stream::EDProducer< edm::ExternalWork, Capabilities... > >
Client client_
 
std::chrono::time_point< std::chrono::high_resolution_clock > t_dispatch_
 

Detailed Description

template<typename Client, typename... Capabilities>
class SonicEDProducer< Client, Capabilities >

Definition at line 14 of file SonicEDProducer.h.

Member Typedef Documentation

◆ Output

template<typename Client , typename... Capabilities>
typedef Client::Output SonicEDProducer< Client, Capabilities >::Output

Definition at line 17 of file SonicEDProducer.h.

Constructor & Destructor Documentation

◆ SonicEDProducer()

template<typename Client , typename... Capabilities>
SonicEDProducer< Client, Capabilities >::SonicEDProducer ( edm::ParameterSet const &  cfg)
inline

Definition at line 19 of file SonicEDProducer.h.

20  : SonicAcquirer<Client, edm::stream::EDProducer<edm::ExternalWork, Capabilities...>>(cfg) {}

◆ ~SonicEDProducer()

template<typename Client , typename... Capabilities>
SonicEDProducer< Client, Capabilities >::~SonicEDProducer ( )
overridedefault

Member Function Documentation

◆ produce() [1/2]

template<typename Client , typename... Capabilities>
void SonicEDProducer< Client, Capabilities >::produce ( edm::Event iEvent,
edm::EventSetup const &  iSetup 
)
inlinefinal

Definition at line 25 of file SonicEDProducer.h.

25  {
26  //measure time between acquire and produce
27  sonic_utils::printDebugTime(this->client_.debugName(), "dispatch() time: ", this->t_dispatch_);
28 
30  produce(iEvent, iSetup, this->client_.output());
31  sonic_utils::printDebugTime(this->client_.debugName(), "produce() time: ", t0);
32 
33  //reset client data
34  this->client_.reset();
35  }

References SonicAcquirer< Client, edm::stream::EDProducer< edm::ExternalWork, Capabilities... > >::client_, iEvent, submitPVValidationJobs::now, sonic_utils::printDebugTime(), FrontierCondition_GT_autoExpress_cfi::t0, and SonicAcquirer< Client, edm::stream::EDProducer< edm::ExternalWork, Capabilities... > >::t_dispatch_.

◆ produce() [2/2]

template<typename Client , typename... Capabilities>
virtual void SonicEDProducer< Client, Capabilities >::produce ( edm::Event iEvent,
edm::EventSetup const &  iSetup,
Output const &  iOutput 
)
pure virtual
SonicAcquirer
Definition: SonicAcquirer.h:13
submitPVValidationJobs.now
now
Definition: submitPVValidationJobs.py:639
SonicAcquirer< Client, edm::stream::EDProducer< edm::ExternalWork, Capabilities... > >::t_dispatch_
std::chrono::time_point< std::chrono::high_resolution_clock > t_dispatch_
Definition: SonicAcquirer.h:38
sonic_utils::printDebugTime
void printDebugTime(std::string_view debugName, std::string_view msg, const TimePoint &t0)
Definition: sonic_utils.cc:8
SonicEDProducer::produce
void produce(edm::Event &iEvent, edm::EventSetup const &iSetup) final
Definition: SonicEDProducer.h:25
FrontierCondition_GT_autoExpress_cfi.t0
t0
Definition: FrontierCondition_GT_autoExpress_cfi.py:148
edm::ExternalWork
Definition: moduleAbilities.h:117
edm::stream::EDProducer
Definition: EDProducer.h:38
looper.cfg
cfg
Definition: looper.py:297
SonicAcquirer< Client, edm::stream::EDProducer< edm::ExternalWork, Capabilities... > >::client_
Client client_
Definition: SonicAcquirer.h:37