FWCore
Framework
interface
stream
AbilityToImplementor.h
Go to the documentation of this file.
1
#ifndef FWCore_Framework_stream_AbilityToImplementor_h
2
#define FWCore_Framework_stream_AbilityToImplementor_h
3
// -*- C++ -*-
4
//
5
// Package: FWCore/Framework
6
// File : AbilityToImplementor
7
//
16
//
17
// Original Author: Chris Jones
18
// Created: Thu, 18 Jul 2013 11:51:33 GMT
19
//
20
21
// system include files
22
23
// user include files
24
#include "
FWCore/Framework/interface/moduleAbilities.h
"
25
#include "
FWCore/Framework/interface/stream/implementors.h
"
26
27
// forward declarations
28
namespace
edm
{
29
namespace
stream
{
30
template
<
typename
T>
31
struct
AbilityToImplementor
;
32
33
template
<
typename
C>
34
struct
AbilityToImplementor
<
edm
::
GlobalCache
<C>> {
35
using
Type
=
edm::stream::impl::GlobalCacheHolder<C>
;
36
};
37
38
template
<
typename
... CacheTypes>
39
struct
AbilityToImplementor
<
edm
::
InputProcessBlockCache
<CacheTypes...>> {
40
using
Type
=
edm::stream::impl::InputProcessBlockCacheHolder
<CacheTypes...>;
41
};
42
43
template
<
typename
C>
44
struct
AbilityToImplementor
<
edm
::
RunCache
<C>> {
45
using
Type
=
edm::stream::impl::RunCacheHolder<C>
;
46
};
47
48
template
<
typename
C>
49
struct
AbilityToImplementor
<
edm
::
RunSummaryCache
<C>> {
50
using
Type
=
edm::stream::impl::RunSummaryCacheHolder<C>
;
51
};
52
53
template
<
typename
C>
54
struct
AbilityToImplementor
<
edm
::
LuminosityBlockCache
<C>> {
55
using
Type
=
edm::stream::impl::LuminosityBlockCacheHolder<C>
;
56
};
57
58
template
<
typename
C>
59
struct
AbilityToImplementor
<
edm
::
LuminosityBlockSummaryCache
<C>> {
60
using
Type
=
edm::stream::impl::LuminosityBlockSummaryCacheHolder<C>
;
61
};
62
63
template
<>
64
struct
AbilityToImplementor
<
edm
::
WatchProcessBlock
> {
65
using
Type
=
edm::stream::impl::WatchProcessBlock
;
66
};
67
68
template
<>
69
struct
AbilityToImplementor
<
edm
::
BeginProcessBlockProducer
> {
70
using
Type
=
edm::stream::impl::BeginProcessBlockProducer
;
71
};
72
73
template
<>
74
struct
AbilityToImplementor
<
edm
::
EndProcessBlockProducer
> {
75
using
Type
=
edm::stream::impl::EndProcessBlockProducer
;
76
};
77
78
template
<>
79
struct
AbilityToImplementor
<
edm
::
BeginRunProducer
> {
80
using
Type
=
edm::stream::impl::BeginRunProducer
;
81
};
82
83
template
<>
84
struct
AbilityToImplementor
<
edm
::
EndRunProducer
> {
85
using
Type
=
edm::stream::impl::EndRunProducer
;
86
};
87
88
template
<>
89
struct
AbilityToImplementor
<
edm
::
BeginLuminosityBlockProducer
> {
90
using
Type
=
edm::stream::impl::BeginLuminosityBlockProducer
;
91
};
92
93
template
<>
94
struct
AbilityToImplementor
<
edm
::
EndLuminosityBlockProducer
> {
95
using
Type
=
edm::stream::impl::EndLuminosityBlockProducer
;
96
};
97
98
template
<>
99
struct
AbilityToImplementor
<
edm
::
ExternalWork
> {
100
using
Type
=
edm::stream::impl::ExternalWork
;
101
};
102
103
// As currently implemented this ability only works
104
// with EDProducer, not with EDAnalyzers or EDFilters!
105
template
<>
106
struct
AbilityToImplementor
<
edm
::
Transformer
> {
107
using
Type
=
edm::stream::impl::Transformer
;
108
};
109
110
// As currently implemented this ability only works
111
// with EDProducer, not with EDAnalyzers or EDFilters!
112
template
<>
113
struct
AbilityToImplementor
<
edm
::
Accumulator
> {
114
using
Type
=
edm::stream::impl::Accumulator
;
115
};
116
}
// namespace stream
117
}
// namespace edm
118
119
#endif
edm::stream::impl::BeginRunProducer
Definition:
implementors.h:244
edm::stream::impl::ExternalWork
Definition:
implementors.h:284
edm::BeginRunProducer
Definition:
moduleAbilities.h:91
edm::ExternalWork
Definition:
moduleAbilities.h:116
edm::LuminosityBlockCache
Definition:
moduleAbilities.h:59
edm::stream::impl::InputProcessBlockCacheHolder
Definition:
implementors.h:69
edm::stream::impl::WatchProcessBlock
Definition:
implementors.h:214
edm::EndRunProducer
Definition:
moduleAbilities.h:96
edm::stream::impl::Transformer
Definition:
implementors.h:294
edm::Accumulator
Definition:
moduleAbilities.h:121
edm::RunSummaryCache
Definition:
moduleAbilities.h:65
edm::InputProcessBlockCache
Definition:
moduleAbilities.h:48
edm::stream::impl::LuminosityBlockSummaryCacheHolder
Definition:
implementors.h:203
edm::BeginProcessBlockProducer
Definition:
moduleAbilities.h:81
edm::LuminosityBlockSummaryCache
Definition:
moduleAbilities.h:71
moduleAbilities.h
edm::stream::impl::EndProcessBlockProducer
Definition:
implementors.h:234
edm::stream::impl::Accumulator
Definition:
implementors.h:366
cms::cuda::stream
uint32_t T const *__restrict__ uint32_t const *__restrict__ int32_t int Histo::index_type cudaStream_t stream
Definition:
HistoContainer.h:51
implementors.h
edm::RunCache
Definition:
moduleAbilities.h:53
edm::WatchProcessBlock
Definition:
moduleAbilities.h:76
edm::stream::impl::LuminosityBlockCacheHolder
Definition:
implementors.h:176
edm::stream::impl::EndLuminosityBlockProducer
Definition:
implementors.h:274
edm::stream::impl::RunSummaryCacheHolder
Definition:
implementors.h:191
edm::stream::AbilityToImplementor
Definition:
AbilityToImplementor.h:31
edm::BeginLuminosityBlockProducer
Definition:
moduleAbilities.h:101
edm::stream::impl::BeginLuminosityBlockProducer
Definition:
implementors.h:264
edm::EndProcessBlockProducer
Definition:
moduleAbilities.h:86
edm::GlobalCache
Definition:
moduleAbilities.h:36
edm
HLT enums.
Definition:
AlignableModifier.h:19
edm::stream::impl::RunCacheHolder
Definition:
implementors.h:161
edm::stream::impl::EndRunProducer
Definition:
implementors.h:254
edm::EndLuminosityBlockProducer
Definition:
moduleAbilities.h:106
edm::Transformer
Definition:
moduleAbilities.h:126
edm::stream::impl::BeginProcessBlockProducer
Definition:
implementors.h:224
edm::stream::impl::GlobalCacheHolder
Definition:
implementors.h:53
Generated for CMSSW Reference Manual by
1.8.14