CondFormats
EcalObjects
interface
EcalRechitADCToGeVConstantGPU.h
Go to the documentation of this file.
1
#ifndef CondFormats_EcalObjects_interface_EcalRechitADCToGeVConstantGPU_h
2
#define CondFormats_EcalObjects_interface_EcalRechitADCToGeVConstantGPU_h
3
4
#include "
CondFormats/EcalObjects/interface/EcalADCToGeVConstant.h
"
5
#include "
FWCore/Utilities/interface/propagate_const_array.h
"
6
#include "
HeterogeneousCore/CUDAUtilities/interface/device_unique_ptr.h
"
7
8
#ifndef __CUDACC__
9
#include "
HeterogeneousCore/CUDAUtilities/interface/HostAllocator.h
"
10
#include "
HeterogeneousCore/CUDACore/interface/ESProduct.h
"
11
#endif // __CUDACC__
12
13
class
EcalRechitADCToGeVConstantGPU
{
14
public
:
15
struct
Product
{
16
edm::propagate_const_array<cms::cuda::device::unique_ptr<float[]>
>
adc2gev
;
17
};
18
19
#ifndef __CUDACC__
20
21
//
22
EcalRechitADCToGeVConstantGPU
(
EcalADCToGeVConstant
const
&);
23
24
// will call dealloation for Product thru ~Product
25
~EcalRechitADCToGeVConstantGPU
() =
default
;
26
27
// get device pointers
28
Product
const
&
getProduct
(cudaStream_t)
const
;
29
30
//
31
static
std::string
name
() {
return
std::string
{
"ecalRechitADCToGeVConstantGPU"
}; }
32
33
private
:
34
// in the future, we need to arrange so to avoid this copy on the host
35
// store eb first then ee
36
std::vector<float, cms::cuda::HostAllocator<float>>
adc2gev_
;
37
38
cms::cuda::ESProduct<Product>
product_
;
39
40
#endif // __CUDACC__
41
};
42
43
#endif // CondFormats_EcalObjects_interface_EcalRechitADCToGeVConstantGPU_h
EcalRechitADCToGeVConstantGPU
Definition:
EcalRechitADCToGeVConstantGPU.h:13
EcalRechitADCToGeVConstantGPU::Product::adc2gev
edm::propagate_const_array< cms::cuda::device::unique_ptr< float[]> > adc2gev
Definition:
EcalRechitADCToGeVConstantGPU.h:16
HostAllocator.h
EcalADCToGeVConstant
Definition:
EcalADCToGeVConstant.h:13
device_unique_ptr.h
EcalRechitADCToGeVConstantGPU::getProduct
Product const & getProduct(cudaStream_t) const
Definition:
EcalRechitADCToGeVConstantGPU.cc:13
EcalRechitADCToGeVConstantGPU::name
static std::string name()
Definition:
EcalRechitADCToGeVConstantGPU.h:31
cms::cuda::ESProduct
Definition:
ESProduct.h:20
EcalRechitADCToGeVConstantGPU::EcalRechitADCToGeVConstantGPU
EcalRechitADCToGeVConstantGPU(EcalADCToGeVConstant const &)
Definition:
EcalRechitADCToGeVConstantGPU.cc:6
EcalRechitADCToGeVConstantGPU::product_
cms::cuda::ESProduct< Product > product_
Definition:
EcalRechitADCToGeVConstantGPU.h:38
EcalADCToGeVConstant.h
EcalRechitADCToGeVConstantGPU::adc2gev_
std::vector< float, cms::cuda::HostAllocator< float > > adc2gev_
Definition:
EcalRechitADCToGeVConstantGPU.h:36
AlCaHLTBitMon_QueryRunRegistry.string
string string
Definition:
AlCaHLTBitMon_QueryRunRegistry.py:256
edm::propagate_const_array
Definition:
propagate_const_array.h:61
propagate_const_array.h
EcalRechitADCToGeVConstantGPU::Product
Definition:
EcalRechitADCToGeVConstantGPU.h:15
ESProduct.h
EcalRechitADCToGeVConstantGPU::~EcalRechitADCToGeVConstantGPU
~EcalRechitADCToGeVConstantGPU()=default
Generated for CMSSW Reference Manual by
1.8.16