CondFormats
EcalObjects
interface
EcalLaserAlphasGPU.h
Go to the documentation of this file.
1
#ifndef CondFormats_EcalObjects_interface_EcalLaserAlphasGPU_h
2
#define CondFormats_EcalObjects_interface_EcalLaserAlphasGPU_h
3
4
#include "
CondFormats/EcalObjects/interface/EcalLaserAlphas.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
EcalLaserAlphasGPU
{
14
public
:
15
struct
Product
{
16
edm::propagate_const_array<cms::cuda::device::unique_ptr<float[]>
>
values
;
17
};
18
19
#ifndef __CUDACC__
20
//
21
EcalLaserAlphasGPU
(
EcalLaserAlphas
const
&);
22
23
// will call dealloation for Product thru ~Product
24
~EcalLaserAlphasGPU
() =
default
;
25
26
// get device pointers
27
Product
const
&
getProduct
(cudaStream_t)
const
;
28
29
// TODO: do this centrally
30
// get offset for hashes. equals number of barrel items
31
uint32_t
getOffset
()
const
{
return
offset_
; }
32
33
//
34
static
std::string
name
() {
return
std::string
{
"ecalLaserAlphasGPU"
}; }
35
36
private
:
37
std::vector<float, cms::cuda::HostAllocator<float>>
values_
;
38
uint32_t
offset_
;
39
40
cms::cuda::ESProduct<Product>
product_
;
41
#endif // __CUDACC__
42
};
43
44
#endif // CondFormats_EcalObjects_interface_EcalLaserAlphasGPU_h
EcalLaserAlphasGPU::getProduct
Product const & getProduct(cudaStream_t) const
Definition:
EcalLaserAlphasGPU.cc:13
HostAllocator.h
EcalLaserAlphasGPU::~EcalLaserAlphasGPU
~EcalLaserAlphasGPU()=default
EcalLaserAlphasGPU::EcalLaserAlphasGPU
EcalLaserAlphasGPU(EcalLaserAlphas const &)
Definition:
EcalLaserAlphasGPU.cc:6
device_unique_ptr.h
EcalCondObjectContainer
Definition:
EcalCondObjectContainer.h:13
cms::cuda::ESProduct
Definition:
ESProduct.h:19
EcalLaserAlphasGPU::name
static std::string name()
Definition:
EcalLaserAlphasGPU.h:34
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition:
AlCaHLTBitMon_QueryRunRegistry.py:256
EcalLaserAlphasGPU::offset_
uint32_t offset_
Definition:
EcalLaserAlphasGPU.h:38
EcalLaserAlphas.h
EcalLaserAlphasGPU::Product::values
edm::propagate_const_array< cms::cuda::device::unique_ptr< float[]> > values
Definition:
EcalLaserAlphasGPU.h:16
edm::propagate_const_array
Definition:
propagate_const_array.h:61
EcalLaserAlphasGPU
Definition:
EcalLaserAlphasGPU.h:13
EcalLaserAlphasGPU::product_
cms::cuda::ESProduct< Product > product_
Definition:
EcalLaserAlphasGPU.h:40
propagate_const_array.h
EcalLaserAlphasGPU::Product
Definition:
EcalLaserAlphasGPU.h:15
ESProduct.h
EcalLaserAlphasGPU::getOffset
uint32_t getOffset() const
Definition:
EcalLaserAlphasGPU.h:31
EcalLaserAlphasGPU::values_
std::vector< float, cms::cuda::HostAllocator< float > > values_
Definition:
EcalLaserAlphasGPU.h:37
Generated for CMSSW Reference Manual by
1.8.16