LArSoft
v07_13_02
Liquid Argon Software toolkit - http://larsoft.org/
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
ModuleTypeDeducer.h
Go to the documentation of this file.
1
#ifndef art_Framework_Core_detail_ModuleTypeDeducer_h
2
#define art_Framework_Core_detail_ModuleTypeDeducer_h
3
5
// ModuleTypeDeducer
6
//
7
// Used by ModuleMacros.h to ascertain the correct ModuleType for a
8
// module.
10
11
#include "
art/Framework/Core/ModuleType.h
"
12
13
namespace
art
{
14
namespace
detail {
15
// ModuleTypeDeducer.
16
template
<
typename
T>
17
struct
ModuleTypeDeducer
;
18
template
<>
19
struct
ModuleTypeDeducer
<
art
::
EDAnalyzer
>;
20
template <>
21
struct
ModuleTypeDeducer
<art::EDFilter>;
22
template <>
23
struct
ModuleTypeDeducer
<art::OutputModule>;
24
template <>
25
struct
ModuleTypeDeducer
<art::EDProducer>;
26
}
27
}
28
29
template <typename T>
30
struct
art::detail::ModuleTypeDeducer
{
31
static
constexpr
ModuleType
value
=
ModuleType::NON_ART
;
32
};
33
34
template
<>
35
struct
art::detail::ModuleTypeDeducer
<
art
::
EDAnalyzer
> {
36
static
constexpr
ModuleType
value
=
ModuleType::ANALYZER
;
37
};
38
39
template
<>
40
struct
art::detail::ModuleTypeDeducer
<
art
::
EDFilter
> {
41
static
constexpr
ModuleType
value
=
ModuleType::FILTER
;
42
};
43
44
template
<>
45
struct
art::detail::ModuleTypeDeducer
<
art
::
OutputModule
> {
46
static
constexpr
ModuleType
value
=
ModuleType::OUTPUT
;
47
};
48
49
template
<>
50
struct
art::detail::ModuleTypeDeducer
<
art
::
EDProducer
> {
51
static
constexpr
ModuleType
value
=
ModuleType::PRODUCER
;
52
};
53
#endif
/* art_Framework_Core_detail_ModuleTypeDeducer_h */
54
55
// Local Variables:
56
// mode: c++
57
// End:
art::ModuleType::PRODUCER
art::EDFilter
Definition:
EDFilter.h:30
art::ModuleType::FILTER
art::detail::ModuleTypeDeducer::value
static constexpr ModuleType value
Definition:
ModuleTypeDeducer.h:31
art::ModuleType::ANALYZER
art::OutputModule
Definition:
OutputModule.h:53
art::EDProducer
Definition:
EDProducer.h:28
art::detail::ModuleTypeDeducer
Definition:
ModuleTypeDeducer.h:17
art::EDAnalyzer
Definition:
EDAnalyzer.h:31
art
HLT enums.
Definition:
ServiceProviderWrappers.h:36
ModuleType.h
art::ModuleType::NON_ART
art::ModuleType::OUTPUT
art::ModuleType
ModuleType
Definition:
ModuleType.h:22
art
Framework
Core
detail
ModuleTypeDeducer.h
Generated on Wed Dec 12 2018 14:42:31 for LArSoft by
1.8.11