CondFormats
HcalObjects
interface
HcalChannelQualityGPU.h
Go to the documentation of this file.
1
#ifndef CondFormats_HcalObjects_interface_HcalChannelQualityGPU_h
2
#define CondFormats_HcalObjects_interface_HcalChannelQualityGPU_h
3
4
#include "
CondFormats/HcalObjects/interface/HcalChannelQuality.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
12
13
class
HcalChannelQualityGPU
{
14
public
:
15
struct
Product
{
16
edm::propagate_const_array<cms::cuda::device::unique_ptr<uint32_t[]>
>
status
;
17
};
18
19
#ifndef __CUDACC__
20
// rearrange reco params
21
HcalChannelQualityGPU
(
HcalChannelQuality
const
&);
22
23
// will trigger deallocation of Product thru ~Product
24
~HcalChannelQualityGPU
() =
default
;
25
26
// get device pointers
27
Product
const
&
getProduct
(cudaStream_t)
const
;
28
29
private
:
30
uint64_t
totalChannels_
;
31
std::vector<uint32_t, cms::cuda::HostAllocator<uint32_t>>
status_
;
32
33
cms::cuda::ESProduct<Product>
product_
;
34
#endif // __CUDACC__
35
};
36
37
38
#endif // RecoLocalCalo_HcalRecAlgos_interface_HcalChannelQualityGPU_h
HcalChannelQualityGPU::Product
Definition:
HcalChannelQualityGPU.h:15
HostAllocator.h
HcalChannelQualityGPU::~HcalChannelQualityGPU
~HcalChannelQualityGPU()=default
HcalChannelQualityGPU
Definition:
HcalChannelQualityGPU.h:13
HcalChannelQualityGPU::Product::status
edm::propagate_const_array< cms::cuda::device::unique_ptr< uint32_t[]> > status
Definition:
HcalChannelQualityGPU.h:16
HcalChannelQuality
Definition:
HcalChannelQuality.h:17
device_unique_ptr.h
HcalChannelQualityGPU::HcalChannelQualityGPU
HcalChannelQualityGPU(HcalChannelQuality const &)
Definition:
HcalChannelQualityGPU.cc:7
HcalChannelQualityGPU::totalChannels_
uint64_t totalChannels_
Definition:
HcalChannelQualityGPU.h:30
cms::cuda::ESProduct
Definition:
ESProduct.h:20
edm::propagate_const_array
Definition:
propagate_const_array.h:61
HcalChannelQuality.h
propagate_const_array.h
HcalChannelQualityGPU::getProduct
const Product & getProduct(cudaStream_t) const
Definition:
HcalChannelQualityGPU.cc:26
HcalChannelQualityGPU::status_
std::vector< uint32_t, cms::cuda::HostAllocator< uint32_t > > status_
Definition:
HcalChannelQualityGPU.h:31
HcalChannelQualityGPU::product_
cms::cuda::ESProduct< Product > product_
Definition:
HcalChannelQualityGPU.h:33
cond::uint64_t
unsigned long long uint64_t
Definition:
Time.h:13
ESProduct.h
Generated for CMSSW Reference Manual by
1.8.16