FWCore
Framework
interface
one
EDAnalyzer.h
Go to the documentation of this file.
1
#ifndef FWCore_Framework_one_EDAnalyzer_h
2
#define FWCore_Framework_one_EDAnalyzer_h
3
// -*- C++ -*-
4
//
5
// Package: FWCore/Framework
6
// Class : edm::one::EDAnalyzer
7
//
16
//
17
// Original Author: Chris Jones
18
// Created: Thu, 01 Aug 2013 19:53:55 GMT
19
//
20
21
// system include files
22
23
// user include files
24
#include "
FWCore/Framework/interface/one/analyzerAbilityToImplementor.h
"
25
26
// forward declarations
27
namespace
edm
{
28
namespace
one
{
29
template
<
typename
...
T
>
30
class
EDAnalyzer
:
public
virtual
EDAnalyzerBase
,
public
analyzer::AbilityToImplementor
<T>
::Type
... {
31
public
:
32
static_assert(not(
CheckAbility<module::Abilities::kRunCache, T...>::kHasIt
and
33
CheckAbility<module::Abilities::kOneWatchRuns, T...>::kHasIt
),
34
"Cannot use both WatchRuns and RunCache"
);
35
static_assert(not(
CheckAbility<module::Abilities::kLuminosityBlockCache, T...>::kHasIt
and
36
CheckAbility<module::Abilities::kOneWatchLuminosityBlocks, T...>::kHasIt
),
37
"Cannot use both WatchLuminosityBlocks and LuminosityBLockCache"
);
38
39
EDAnalyzer
() =
default
;
40
#ifdef __INTEL_COMPILER
41
virtual
~
EDAnalyzer
() =
default
;
42
#endif
43
44
// ---------- const member functions ---------------------
45
bool
wantsProcessBlocks
()
const
final {
return
WantsProcessBlockTransitions
<
T
...>
::value
; }
46
bool
wantsInputProcessBlocks
()
const
final {
return
WantsInputProcessBlockTransitions
<
T
...>
::value
; }
47
bool
wantsGlobalRuns
()
const
final {
return
WantsGlobalRunTransitions
<
T
...>
::value
; }
48
bool
wantsGlobalLuminosityBlocks
()
const
final {
return
WantsGlobalLuminosityBlockTransitions
<
T
...>
::value
; }
49
50
// ---------- static member functions --------------------
51
52
// ---------- member functions ---------------------------
53
SerialTaskQueue
*
globalRunsQueue
() final {
return
globalRunsQueue_
.queue(); }
54
SerialTaskQueue
*
globalLuminosityBlocksQueue
() final {
return
globalLuminosityBlocksQueue_
.queue(); }
55
56
private
:
57
EDAnalyzer
(
const
EDAnalyzer
&) =
delete
;
58
const
EDAnalyzer
&
operator=
(
const
EDAnalyzer
&) =
delete
;
59
60
// ---------- member data --------------------------------
61
impl::OptionalSerialTaskQueueHolder
<
WantsSerialGlobalRunTransitions
<
T
...>
::value
>
globalRunsQueue_
;
62
impl::OptionalSerialTaskQueueHolder
<
WantsSerialGlobalLuminosityBlockTransitions
<
T
...>
::value
>
63
globalLuminosityBlocksQueue_
;
64
};
65
66
}
// namespace one
67
}
// namespace edm
68
69
#endif
SiPixelPI::one
Definition:
SiPixelPayloadInspectorHelper.h:39
edm
HLT enums.
Definition:
AlignableModifier.h:19
edm::CheckAbility
Definition:
moduleAbilities.h:129
edm::one::WantsSerialGlobalRunTransitions
Definition:
moduleAbilities.h:64
edm::SerialTaskQueue
Definition:
SerialTaskQueue.h:67
edm::one::EDAnalyzer::operator=
const EDAnalyzer & operator=(const EDAnalyzer &)=delete
edm::one::EDAnalyzer::globalRunsQueue
SerialTaskQueue * globalRunsQueue() final
Definition:
EDAnalyzer.h:53
edm::one::EDAnalyzer
Definition:
EDAnalyzer.h:30
watchdog.const
const
Definition:
watchdog.py:83
susybsm::HSCParticleType::Type
Type
Definition:
HSCParticle.h:20
edm::one::WantsGlobalLuminosityBlockTransitions
Definition:
moduleAbilities.h:54
edm::one::EDAnalyzer::globalLuminosityBlocksQueue
SerialTaskQueue * globalLuminosityBlocksQueue() final
Definition:
EDAnalyzer.h:54
edm::WantsInputProcessBlockTransitions
Definition:
moduleAbilities.h:154
analyzerAbilityToImplementor.h
edm::WantsProcessBlockTransitions
Definition:
moduleAbilities.h:147
edm::one::EDAnalyzer::wantsGlobalRuns
bool wantsGlobalRuns() const final
Definition:
EDAnalyzer.h:47
edm::one::EDAnalyzer::wantsGlobalLuminosityBlocks
bool wantsGlobalLuminosityBlocks() const final
Definition:
EDAnalyzer.h:48
edm::one::analyzer::AbilityToImplementor
Definition:
analyzerAbilityToImplementor.h:35
edm::one::EDAnalyzer::wantsInputProcessBlocks
bool wantsInputProcessBlocks() const final
Definition:
EDAnalyzer.h:46
edm::one::WantsGlobalRunTransitions
Definition:
moduleAbilities.h:46
edm::one::EDAnalyzer::EDAnalyzer
EDAnalyzer()=default
edm::one::WantsSerialGlobalLuminosityBlockTransitions
Definition:
moduleAbilities.h:70
T
long double T
Definition:
Basic3DVectorLD.h:48
relativeConstraints.value
value
Definition:
relativeConstraints.py:53
edm::one::EDAnalyzer::globalRunsQueue_
impl::OptionalSerialTaskQueueHolder< WantsSerialGlobalRunTransitions< T... >::value > globalRunsQueue_
Definition:
EDAnalyzer.h:61
edm::one::EDAnalyzer::wantsProcessBlocks
bool wantsProcessBlocks() const final
Definition:
EDAnalyzer.h:45
edm::one::impl::OptionalSerialTaskQueueHolder
Definition:
implementors.h:42
edm::one::EDAnalyzer::globalLuminosityBlocksQueue_
impl::OptionalSerialTaskQueueHolder< WantsSerialGlobalLuminosityBlockTransitions< T... >::value > globalLuminosityBlocksQueue_
Definition:
EDAnalyzer.h:63
edm::one::EDAnalyzerBase
Definition:
EDAnalyzerBase.h:46
Generated for CMSSW Reference Manual by
1.8.16