LArSoft
v07_13_02
Liquid Argon Software toolkit - http://larsoft.org/
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
WrappedTypeID.h
Go to the documentation of this file.
1
#ifndef canvas_Utilities_WrappedTypeID_h
2
#define canvas_Utilities_WrappedTypeID_h
3
// vim: set sw=2:
4
//
5
// WrappedTypeID: A unique identifier for a C++ type.
6
//
7
// The identifier is unique within an entire program, but cannot be
8
// persisted across invocations of the program.
9
10
#include "
canvas/Utilities/TypeID.h
"
11
12
namespace
art
{
13
template
<
typename
T>
14
class
Wrapper;
15
16
struct
WrappedTypeID;
17
}
18
19
struct
art::WrappedTypeID
{
20
template
<
typename
T>
21
static
WrappedTypeID
make
();
22
TypeID
product_type
;
23
TypeID
wrapped_product_type
;
24
25
private
:
26
WrappedTypeID
(std::type_info
const
& product_type,
27
std::type_info
const
& wrapped_product_type);
28
};
29
30
inline
art::WrappedTypeID::WrappedTypeID
(
31
std::type_info
const
& prod_type,
32
std::type_info
const
& wrapped_prod_type)
33
:
product_type
{prod_type},
wrapped_product_type
{wrapped_prod_type}
34
{}
35
36
template
<
typename
T>
37
art::WrappedTypeID
38
art::WrappedTypeID::make
()
39
{
40
return
WrappedTypeID
{
typeid
(T),
typeid
(
Wrapper<T>
)};
41
}
42
43
// Local Variables:
44
// mode: c++
45
// End:
46
#endif
/* canvas_Utilities_WrappedTypeID_h */
art::WrappedTypeID::product_type
TypeID product_type
Definition:
WrappedTypeID.h:22
art::WrappedTypeID::make
static WrappedTypeID make()
art::WrappedTypeID::wrapped_product_type
TypeID wrapped_product_type
Definition:
WrappedTypeID.h:23
art::WrappedTypeID
Definition:
WrappedTypeID.h:19
TypeID.h
art::Wrapper
Definition:
Handle.h:59
art
HLT enums.
Definition:
ServiceProviderWrappers.h:36
art::WrappedTypeID::WrappedTypeID
WrappedTypeID(std::type_info const &product_type, std::type_info const &wrapped_product_type)
Definition:
WrappedTypeID.h:30
art::TypeID
Definition:
TypeID.h:39
canvas
Utilities
WrappedTypeID.h
Generated on Wed Dec 12 2018 14:42:35 for LArSoft by
1.8.11