BOSS
7.0.7
BESIII Offline Software System
Toggle main menu visibility
Main Page
Related Pages
Namespaces
Namespace List
Namespace Members
All
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
r
s
t
u
v
w
x
z
Functions
a
b
c
d
e
f
g
i
l
m
n
o
p
r
s
t
u
v
w
z
Variables
a
b
c
d
e
f
g
h
i
l
m
n
o
p
r
s
t
v
w
x
z
Typedefs
b
c
d
e
g
h
i
l
m
n
o
p
r
s
t
v
Enumerations
Enumerator
a
b
c
d
e
f
i
k
l
m
n
o
p
r
s
t
u
w
x
z
Classes
Class List
Class Index
Class Hierarchy
Class Members
All
:
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
a
b
c
d
e
f
g
h
i
m
n
p
r
s
t
v
w
Enumerations
b
c
d
e
f
g
h
i
k
l
m
n
p
r
s
t
v
Enumerator
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
x
z
Related Functions
:
a
b
c
d
e
f
g
i
k
l
m
n
o
p
r
s
t
w
x
Files
File List
File Members
All
!
$
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
!
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
q
r
s
t
u
v
w
x
Variables
!
$
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
a
b
c
d
e
f
g
h
i
j
k
l
m
n
p
q
r
s
t
u
v
w
z
Enumerations
Enumerator
a
b
c
d
e
f
g
h
i
k
m
n
o
p
r
s
t
u
w
Macros
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
Loading...
Searching...
No Matches
MakerTrait.h
Go to the documentation of this file.
1
#ifndef DCHAIN_MAKERTRAIT_H
2
#define DCHAIN_MAKERTRAIT_H
3
// -*- C++ -*-
4
//
5
// Package: <DChain>
6
// Module: MakerTrait
7
//
8
/**\class MakerTrait MakerTrait.h DChain/MakerTrait.h
9
10
Description: <one line class summary>
11
12
Usage:
13
<usage>
14
15
*/
16
//
17
// Author: Chris D Jones
18
// Created: Thu Jan 5 15:37:46 EST 2006
19
// $Id: MakerTrait.h,v 1.1.1.1 2009/03/03 06:06:56 maqm Exp $
20
//
21
// Revision history
22
//
23
// $Log: MakerTrait.h,v $
24
// Revision 1.1.1.1 2009/03/03 06:06:56 maqm
25
// first import of DecayChain
26
//
27
// Revision 1.1 2006/01/11 20:28:09 cdj
28
// massive class renaming, addition of [] for selection and unit tests
29
//
30
31
// system include files
32
33
// user include files
34
35
// forward declarations
36
namespace
dchain
{
37
template
<
class
T>
38
struct
NewMaker
{
39
40
typedef
ReferenceHolderBase<T*, T&>
result_type
;
41
42
template
<
class
U>
43
result_type
operator()
(
const
U& iU)
const
{
44
return
result_type
(
new
T(iU));
45
}
46
};
47
48
template
<
class
T>
49
struct
MakerTrait
{
50
typedef
NewMaker<T>
maker_type
;
51
};
52
53
template
<
class
T>
54
struct
ResultTypeTrait
{
55
typedef
typename
T::result_type
type
;
56
};
57
58
template
<
class
TReturn,
class
TArg>
59
struct
ResultTypeTrait
< TReturn (*)(
const
TArg&)> {
60
typedef
TReturn
type
;
61
};
62
63
}
64
// inline function definitions
65
66
67
#endif
/* DCHAIN_MAKERTRAIT_H */
dchain::ReferenceHolderBase
Definition:
ReferenceHolderBase.h:41
dchain
Definition:
children.h:16
dchain::MakerTrait
Definition:
MakerTrait.h:49
dchain::MakerTrait::maker_type
NewMaker< T > maker_type
Definition:
MakerTrait.h:50
dchain::NewMaker
Definition:
MakerTrait.h:38
dchain::NewMaker::operator()
result_type operator()(const U &iU) const
Definition:
MakerTrait.h:43
dchain::NewMaker::result_type
ReferenceHolderBase< T *, T & > result_type
Definition:
MakerTrait.h:40
dchain::ResultTypeTrait< TReturn(*)(const TArg &)>::type
TReturn type
Definition:
MakerTrait.h:60
dchain::ResultTypeTrait
Definition:
MakerTrait.h:54
dchain::ResultTypeTrait::type
T::result_type type
Definition:
MakerTrait.h:55
source
Event
DecayChain
DecayChain-00-00-03-slc6tag
DecayChain
Element
MakerTrait.h
Generated by
1.9.6