CondFormats
EcalObjects
interface
EcalRechitChannelStatusGPU.h
Go to the documentation of this file.
1
#ifndef CondFormats_EcalObjects_interface_EcalRechitChannelStatusGPU_h
2
#define CondFormats_EcalObjects_interface_EcalRechitChannelStatusGPU_h
3
4
#include "
CondFormats/EcalObjects/interface/EcalChannelStatus.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
EcalRechitChannelStatusGPU
{
14
public
:
15
struct
Product
{
16
edm::propagate_const_array<cms::cuda::device::unique_ptr<uint16_t[]>
>
status
;
17
};
18
19
#ifndef __CUDACC__
20
21
//
22
EcalRechitChannelStatusGPU
(
EcalChannelStatus
const
&);
23
24
// will call dealloation for Product thru ~Product
25
~EcalRechitChannelStatusGPU
() =
default
;
26
27
// get device pointers
28
Product
const
&
getProduct
(cudaStream_t)
const
;
29
30
//
31
static
std::string
name
() {
return
std::string
{
"ecalRechitChannelStatusGPU"
}; }
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<uint16_t, cms::cuda::HostAllocator<uint16_t>>
status_
;
37
38
cms::cuda::ESProduct<Product>
product_
;
39
40
#endif // __CUDACC__
41
};
42
43
#endif // CondFormats_EcalObjects_interface_EcalRechitChannelStatusGPU_h
EcalRechitChannelStatusGPU::status_
std::vector< uint16_t, cms::cuda::HostAllocator< uint16_t > > status_
Definition:
EcalRechitChannelStatusGPU.h:36
HostAllocator.h
EcalRechitChannelStatusGPU::product_
cms::cuda::ESProduct< Product > product_
Definition:
EcalRechitChannelStatusGPU.h:38
device_unique_ptr.h
EcalCondObjectContainer
Definition:
EcalCondObjectContainer.h:13
EcalRechitChannelStatusGPU::~EcalRechitChannelStatusGPU
~EcalRechitChannelStatusGPU()=default
EcalRechitChannelStatusGPU::Product
Definition:
EcalRechitChannelStatusGPU.h:15
cms::cuda::ESProduct
Definition:
ESProduct.h:20
EcalRechitChannelStatusGPU::EcalRechitChannelStatusGPU
EcalRechitChannelStatusGPU(EcalChannelStatus const &)
Definition:
EcalRechitChannelStatusGPU.cc:6
EcalRechitChannelStatusGPU
Definition:
EcalRechitChannelStatusGPU.h:13
EcalRechitChannelStatusGPU::getProduct
Product const & getProduct(cudaStream_t) const
Definition:
EcalRechitChannelStatusGPU.cc:21
EcalRechitChannelStatusGPU::Product::status
edm::propagate_const_array< cms::cuda::device::unique_ptr< uint16_t[]> > status
Definition:
EcalRechitChannelStatusGPU.h:16
AlCaHLTBitMon_QueryRunRegistry.string
string string
Definition:
AlCaHLTBitMon_QueryRunRegistry.py:256
edm::propagate_const_array
Definition:
propagate_const_array.h:61
propagate_const_array.h
EcalChannelStatus.h
ESProduct.h
EcalRechitChannelStatusGPU::name
static std::string name()
Definition:
EcalRechitChannelStatusGPU.h:31
Generated for CMSSW Reference Manual by
1.8.16