FWCore
Framework
interface
limited
EDProducer.h
Go to the documentation of this file.
1
#ifndef FWCore_Framework_limited_EDProducer_h
2
#define FWCore_Framework_limited_EDProducer_h
3
// -*- C++ -*-
4
//
5
// Package: FWCore/Framework
6
// Class : edm::limited::EDProducer
7
//
16
//
17
// Original Author: Chris Jones
18
// Created: Thu, 18 Jul 2013 11:51:07 GMT
19
//
20
21
// system include files
22
23
// user include files
24
#include "
FWCore/Framework/interface/limited/producerAbilityToImplementor.h
"
25
#include "
FWCore/Framework/interface/moduleAbilities.h
"
26
27
// forward declarations
28
29
namespace
edm
{
30
namespace
limited {
31
template
<
typename
...
T
>
32
class
EDProducer
:
public
producer::SpecializeAbilityToImplementor
<
33
CheckAbility<edm::module::Abilities::kRunSummaryCache, T...>::kHasIt &
34
CheckAbility<edm::module::Abilities::kEndRunProducer, T...>::kHasIt,
35
CheckAbility<edm::module::Abilities::kLuminosityBlockSummaryCache, T...>::kHasIt &
36
CheckAbility<edm::module::Abilities::kEndLuminosityBlockProducer, T...>::kHasIt,
37
T>
::Type
...,
38
public
virtual
EDProducerBase
{
39
public
:
40
EDProducer
(
edm::ParameterSet
const
& iPSet)
41
:
EDProducerBase
(iPSet),
42
producer
::SpecializeAbilityToImplementor<
43
CheckAbility
<
edm
::module::
Abilities
::kRunSummaryCache,
T
...>::kHasIt &
44
CheckAbility
<
edm
::module::
Abilities
::kEndRunProducer,
T
...>::kHasIt,
45
CheckAbility
<
edm
::module::
Abilities
::kLuminosityBlockSummaryCache,
T
...>::kHasIt &
46
CheckAbility
<
edm
::module::
Abilities
::kEndLuminosityBlockProducer,
T
...>::kHasIt,
47
T
>::
Type
(iPSet)... {}
48
49
// ---------- const member functions ---------------------
50
bool
wantsProcessBlocks
()
const
final {
return
WantsProcessBlockTransitions
<
T
...>
::value
; }
51
bool
wantsInputProcessBlocks
()
const
final {
return
WantsInputProcessBlockTransitions
<
T
...>
::value
; }
52
bool
wantsGlobalRuns
()
const
final {
return
WantsGlobalRunTransitions
<
T
...>
::value
; }
53
bool
wantsGlobalLuminosityBlocks
()
const
final {
return
WantsGlobalLuminosityBlockTransitions
<
T
...>
::value
; }
54
bool
wantsStreamRuns
()
const
final {
return
WantsStreamRunTransitions
<
T
...>
::value
; }
55
bool
wantsStreamLuminosityBlocks
()
const
final {
return
WantsStreamLuminosityBlockTransitions
<
T
...>
::value
; }
56
57
bool
hasAbilityToProduceInBeginProcessBlocks
()
const
final {
58
return
HasAbilityToProduceInBeginProcessBlocks
<
T
...>
::value
;
59
}
60
bool
hasAbilityToProduceInEndProcessBlocks
()
const
final {
61
return
HasAbilityToProduceInEndProcessBlocks
<
T
...>
::value
;
62
}
63
64
bool
hasAbilityToProduceInBeginRuns
()
const
final {
return
HasAbilityToProduceInBeginRuns
<
T
...>
::value
; }
65
bool
hasAbilityToProduceInEndRuns
()
const
final {
return
HasAbilityToProduceInEndRuns
<
T
...>
::value
; }
66
67
bool
hasAbilityToProduceInBeginLumis
()
const
final {
return
HasAbilityToProduceInBeginLumis
<
T
...>
::value
; }
68
bool
hasAbilityToProduceInEndLumis
()
const
final {
return
HasAbilityToProduceInEndLumis
<
T
...>
::value
; }
69
70
// ---------- static member functions --------------------
71
72
// ---------- member functions ---------------------------
73
74
private
:
75
EDProducer
(
const
EDProducer
&) =
delete
;
76
77
const
EDProducer
&
operator=
(
const
EDProducer
&) =
delete
;
78
79
// ---------- member data --------------------------------
80
};
81
82
}
// namespace limited
83
}
// namespace edm
84
85
#endif
edm::limited::EDProducer::wantsStreamRuns
bool wantsStreamRuns() const final
Definition:
EDProducer.h:54
edm::limited::EDProducer::operator=
const EDProducer & operator=(const EDProducer &)=delete
edm::limited::EDProducer::hasAbilityToProduceInEndProcessBlocks
bool hasAbilityToProduceInEndProcessBlocks() const final
Definition:
EDProducer.h:60
edm::limited::EDProducer::hasAbilityToProduceInBeginLumis
bool hasAbilityToProduceInBeginLumis() const final
Definition:
EDProducer.h:67
edm
HLT enums.
Definition:
AlignableModifier.h:19
edm::HasAbilityToProduceInEndRuns
Definition:
moduleAbilities.h:202
edm::limited::EDProducerBase
Definition:
EDProducerBase.h:50
edm::limited::EDProducer::wantsStreamLuminosityBlocks
bool wantsStreamLuminosityBlocks() const final
Definition:
EDProducer.h:55
edm::CheckAbility
Definition:
moduleAbilities.h:129
RawToDigi_Repacked_cff.producer
producer
Definition:
RawToDigi_Repacked_cff.py:6
edm::HasAbilityToProduceInEndLumis
Definition:
moduleAbilities.h:212
watchdog.const
const
Definition:
watchdog.py:83
edm::WantsGlobalLuminosityBlockTransitions
Definition:
moduleAbilities.h:167
edm::limited::EDProducer::hasAbilityToProduceInEndRuns
bool hasAbilityToProduceInEndRuns() const final
Definition:
EDProducer.h:65
susybsm::HSCParticleType::Type
Type
Definition:
HSCParticle.h:20
edm::WantsGlobalRunTransitions
Definition:
moduleAbilities.h:159
edm::WantsInputProcessBlockTransitions
Definition:
moduleAbilities.h:154
edm::HasAbilityToProduceInBeginLumis
Definition:
moduleAbilities.h:207
edm::limited::EDProducer::wantsInputProcessBlocks
bool wantsInputProcessBlocks() const final
Definition:
EDProducer.h:51
edm::limited::EDProducer::wantsGlobalRuns
bool wantsGlobalRuns() const final
Definition:
EDProducer.h:52
edm::limited::EDProducer::EDProducer
EDProducer(edm::ParameterSet const &iPSet)
Definition:
EDProducer.h:40
edm::ParameterSet
Definition:
ParameterSet.h:47
edm::WantsStreamLuminosityBlockTransitions
Definition:
moduleAbilities.h:181
edm::WantsProcessBlockTransitions
Definition:
moduleAbilities.h:147
edm::limited::EDProducer::hasAbilityToProduceInEndLumis
bool hasAbilityToProduceInEndLumis() const final
Definition:
EDProducer.h:68
edm::module::Abilities
Abilities
Definition:
moduleAbilityEnums.h:30
edm::limited::EDProducer::wantsProcessBlocks
bool wantsProcessBlocks() const final
Definition:
EDProducer.h:50
edm::HasAbilityToProduceInBeginProcessBlocks
Definition:
moduleAbilities.h:187
edm::HasAbilityToProduceInEndProcessBlocks
Definition:
moduleAbilities.h:192
edm::limited::EDProducer::hasAbilityToProduceInBeginProcessBlocks
bool hasAbilityToProduceInBeginProcessBlocks() const final
Definition:
EDProducer.h:57
edm::limited::producer::SpecializeAbilityToImplementor
Definition:
producerAbilityToImplementor.h:106
edm::WantsStreamRunTransitions
Definition:
moduleAbilities.h:175
edm::limited::EDProducer::hasAbilityToProduceInBeginRuns
bool hasAbilityToProduceInBeginRuns() const final
Definition:
EDProducer.h:64
T
long double T
Definition:
Basic3DVectorLD.h:48
relativeConstraints.value
value
Definition:
relativeConstraints.py:53
moduleAbilities.h
producerAbilityToImplementor.h
edm::limited::EDProducer::wantsGlobalLuminosityBlocks
bool wantsGlobalLuminosityBlocks() const final
Definition:
EDProducer.h:53
edm::HasAbilityToProduceInBeginRuns
Definition:
moduleAbilities.h:197
edm::limited::EDProducer
Definition:
EDProducer.h:32
Generated for CMSSW Reference Manual by
1.8.16