Main Page
Namespaces
Namespace List
Namespace 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
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Enumerations
a
b
c
d
e
f
g
h
i
j
k
l
m
o
p
q
r
s
t
u
v
w
z
Enumerator
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
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
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Enumerations
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
Enumerator
_
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
Properties
_
a
d
e
f
l
m
o
p
s
t
u
v
Related 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
Package Documentation
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Modules
Pages
CondFormats
EcalObjects
src
EcalRechitADCToGeVConstantGPU.cc
Go to the documentation of this file.
1
#include "
CondFormats/EcalObjects/interface/EcalRechitADCToGeVConstantGPU.h
"
2
3
#include "
FWCore/Utilities/interface/typelookup.h
"
4
#include "
HeterogeneousCore/CUDAUtilities/interface/copyAsync.h
"
5
6
EcalRechitADCToGeVConstantGPU::EcalRechitADCToGeVConstantGPU
(
EcalADCToGeVConstant
const
&
values
)
7
: adc2gev_(2)
// size is 2, one form EB and one for EE
8
{
9
adc2gev_
[0] =
values
.getEBValue();
10
adc2gev_
[1] =
values
.getEEValue();
11
}
12
13
EcalRechitADCToGeVConstantGPU::Product
const
&
EcalRechitADCToGeVConstantGPU::getProduct
(cudaStream_t cudaStream)
const
{
14
auto
const
& product =
product_
.dataForCurrentDeviceAsync(
15
cudaStream, [
this
](
EcalRechitADCToGeVConstantGPU::Product
& product, cudaStream_t cudaStream) {
16
// allocate
17
product.
adc2gev
= cms::cuda::make_device_unique<float[]>(
adc2gev_
.size(), cudaStream);
18
// transfer
19
cms::cuda::copyAsync
(product.
adc2gev
,
adc2gev_
, cudaStream);
20
});
21
22
return
product;
23
}
24
25
TYPELOOKUP_DATA_REG
(
EcalRechitADCToGeVConstantGPU
);
EcalRechitADCToGeVConstantGPU
Definition:
EcalRechitADCToGeVConstantGPU.h:13
EcalRechitADCToGeVConstantGPU::Product::adc2gev
edm::propagate_const_array< cms::cuda::device::unique_ptr< float[]> > adc2gev
Definition:
EcalRechitADCToGeVConstantGPU.h:16
typelookup.h
EcalADCToGeVConstant
Definition:
EcalADCToGeVConstant.h:13
EcalRechitADCToGeVConstantGPU::getProduct
Product const & getProduct(cudaStream_t) const
Definition:
EcalRechitADCToGeVConstantGPU.cc:13
EcalRechitADCToGeVConstantGPU.h
contentValuesCheck.values
values
Definition:
contentValuesCheck.py:38
EcalRechitADCToGeVConstantGPU::EcalRechitADCToGeVConstantGPU
EcalRechitADCToGeVConstantGPU(EcalADCToGeVConstant const &)
Definition:
EcalRechitADCToGeVConstantGPU.cc:6
EcalRechitADCToGeVConstantGPU::product_
cms::cuda::ESProduct< Product > product_
Definition:
EcalRechitADCToGeVConstantGPU.h:38
EcalRechitADCToGeVConstantGPU::adc2gev_
std::vector< float, cms::cuda::HostAllocator< float > > adc2gev_
Definition:
EcalRechitADCToGeVConstantGPU.h:36
copyAsync.h
TYPELOOKUP_DATA_REG
#define TYPELOOKUP_DATA_REG(_dataclass_)
Definition:
typelookup.h:102
EcalRechitADCToGeVConstantGPU::Product
Definition:
EcalRechitADCToGeVConstantGPU.h:15
cms::cuda::copyAsync
void copyAsync(device::unique_ptr< T > &dst, const host::unique_ptr< T > &src, cudaStream_t stream)
Definition:
copyAsync.h:20
Generated for CMSSW Reference Manual by
1.8.16