CMS 3D CMS Logo

EDProducer.h
Go to the documentation of this file.
1 #ifndef FWCore_Framework_stream_EDProducer_h
2 #define FWCore_Framework_stream_EDProducer_h
3 // -*- C++ -*-
4 //
5 // Package: FWCore/Framework
6 // Class : EDProducer
7 //
16 //
17 // Original Author: Chris Jones
18 // Created: Thu, 01 Aug 2013 21:41:42 GMT
19 //
20 
28 
29 namespace edm {
30 
31  class WaitingTaskWithArenaHolder;
32 
33  namespace stream {
34 
35  template <typename... T>
36  class EDProducer : public AbilityToImplementor<T>::Type...,
37  public std::conditional<CheckAbility<edm::module::Abilities::kAccumulator, T...>::kHasIt,
38  impl::EmptyType,
39  EDProducerBase>::type {
40  public:
41  using CacheTypes = CacheContexts<T...>;
42 
43  using GlobalCache = typename CacheTypes::GlobalCache;
44  using InputProcessBlockCache = typename CacheTypes::InputProcessBlockCache;
45  using RunCache = typename CacheTypes::RunCache;
46  using LuminosityBlockCache = typename CacheTypes::LuminosityBlockCache;
49  using RunSummaryCache = typename CacheTypes::RunSummaryCache;
50  using LuminosityBlockSummaryCache = typename CacheTypes::LuminosityBlockSummaryCache;
51 
53 
54  EDProducer() = default;
55  EDProducer(const EDProducer&) = delete;
56  const EDProducer& operator=(const EDProducer&) = delete;
57 
60  }
63  }
64 
67 
70 
71  private:
72  void doAcquire_(Event const& ev, EventSetup const& es, WaitingTaskWithArenaHolder& holder) final {
73  doAcquireIfNeeded(this, ev, es, holder);
74  }
75  };
76 
77  } // namespace stream
78 } // namespace edm
79 
80 #endif
edm::stream::EDProducer< edm::GlobalCache< ONNXRuntime > >::GlobalCache
typename CacheTypes::GlobalCache GlobalCache
Definition: EDProducer.h:43
edm::stream::EDProducer::operator=
const EDProducer & operator=(const EDProducer &)=delete
edm::stream::CacheContexts
Definition: CacheContexts.h:78
edm::stream::AbilityToImplementor
Definition: AbilityToImplementor.h:31
AbilityChecker.h
edm::stream::EDProducer< edm::GlobalCache< ONNXRuntime > >::RunSummaryCache
typename CacheTypes::RunSummaryCache RunSummaryCache
Definition: EDProducer.h:49
edm
HLT enums.
Definition: AlignableModifier.h:19
edm::HasAbilityToProduceInEndRuns
Definition: moduleAbilities.h:197
edm::stream::EDProducer::hasAbilityToProduceInBeginLumis
bool hasAbilityToProduceInBeginLumis() const final
Definition: EDProducer.h:68
cms::cuda::stream
uint32_t const T *__restrict__ const uint32_t *__restrict__ int32_t int Histo::index_type cudaStream_t stream
Definition: HistoContainer.h:51
edm::HasAbilityToProduceInEndLumis
Definition: moduleAbilities.h:207
AbilityToImplementor.h
ProducingModuleHelper.h
watchdog.const
const
Definition: watchdog.py:83
edm::stream::RunContextT
Definition: Contexts.h:31
edm::WaitingTaskWithArenaHolder
Definition: WaitingTaskWithArenaHolder.h:34
susybsm::HSCParticleType::Type
Type
Definition: HSCParticle.h:20
edm::stream::EDProducer::hasAbilityToProduceInBeginRuns
bool hasAbilityToProduceInBeginRuns() const final
Definition: EDProducer.h:65
edm::stream::EDProducer::hasAbilityToProduceInEndRuns
bool hasAbilityToProduceInEndRuns() const final
Definition: EDProducer.h:66
CacheContexts.h
edm::stream::EDProducer< edm::GlobalCache< ONNXRuntime > >::LuminosityBlockSummaryCache
typename CacheTypes::LuminosityBlockSummaryCache LuminosityBlockSummaryCache
Definition: EDProducer.h:50
edm::HasAbilityToProduceInBeginLumis
Definition: moduleAbilities.h:202
edm::stream::EDProducer::doAcquire_
void doAcquire_(Event const &ev, EventSetup const &es, WaitingTaskWithArenaHolder &holder) final
Definition: EDProducer.h:72
edm::stream::EDProducer::EDProducer
EDProducer()=default
edm::stream::AbilityChecker
Definition: AbilityChecker.h:130
type
type
Definition: SiPixelVCal_PayloadInspector.cc:39
edm::stream::EDProducer::hasAbilityToProduceInEndLumis
bool hasAbilityToProduceInEndLumis() const final
Definition: EDProducer.h:69
Contexts.h
edm::stream::EDProducer< edm::GlobalCache< ONNXRuntime > >::LuminosityBlockCache
typename CacheTypes::LuminosityBlockCache LuminosityBlockCache
Definition: EDProducer.h:46
edm::stream::EDProducer
Definition: EDProducer.h:36
edm::stream::EDProducer< edm::GlobalCache< ONNXRuntime > >::InputProcessBlockCache
typename CacheTypes::InputProcessBlockCache InputProcessBlockCache
Definition: EDProducer.h:44
edm::EventSetup
Definition: EventSetup.h:58
edm::stream::EDProducer< edm::GlobalCache< ONNXRuntime > >::RunCache
typename CacheTypes::RunCache RunCache
Definition: EDProducer.h:45
edm::HasAbilityToProduceInBeginProcessBlocks
Definition: moduleAbilities.h:182
edm::HasAbilityToProduceInEndProcessBlocks
Definition: moduleAbilities.h:187
edm::stream::LuminosityBlockContextT
Definition: Contexts.h:43
edm::stream::doAcquireIfNeeded
void doAcquireIfNeeded(impl::ExternalWork *, Event const &, EventSetup const &, WaitingTaskWithArenaHolder &)
Definition: ProducingModuleHelper.cc:15
Frameworkfwd.h
T
long double T
Definition: Basic3DVectorLD.h:48
relativeConstraints.value
value
Definition: relativeConstraints.py:53
ev
bool ev
Definition: Hydjet2Hadronizer.cc:97
EDProducerBase.h
edm::stream::EDProducer::hasAbilityToProduceInBeginProcessBlocks
bool hasAbilityToProduceInBeginProcessBlocks() const final
Definition: EDProducer.h:58
edm::stream::EDProducer::hasAbilityToProduceInEndProcessBlocks
bool hasAbilityToProduceInEndProcessBlocks() const final
Definition: EDProducer.h:61
edm::HasAbilityToProduceInBeginRuns
Definition: moduleAbilities.h:192
edm::Event
Definition: Event.h:73