CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
HcalPedestalsGPU.h
Go to the documentation of this file.
1 #ifndef CondFormats_HcalObjects_interface_HcalPedestalsGPU_h
2 #define CondFormats_HcalObjects_interface_HcalPedestalsGPU_h
3 
7 
8 #ifndef __CUDACC__
11 #endif
12 
14 public:
15  struct Product {
18  };
19 
20 #ifndef __CUDACC__
21  // rearrange reco params
23 
24  // will trigger deallocation of Product thru ~Product
25  ~HcalPedestalsGPU() = default;
26 
27  // get device pointers
28  Product const &getProduct(cudaStream_t) const;
29 
30  // as in cpu version
31  bool unitIsADC() const { return unitIsADC_; }
32 
33  uint32_t offsetForHashes() const { return offsetForHashes_; }
34 
35 private:
36  bool unitIsADC_;
38  uint32_t offsetForHashes_;
39  std::vector<float, cms::cuda::HostAllocator<float>> values_;
40  std::vector<float, cms::cuda::HostAllocator<float>> widths_;
41 
43 #endif
44 };
45 
46 #endif
uint32_t offsetForHashes() const
uint32_t offsetForHashes_
HcalPedestalsGPU(HcalPedestals const &)
Product const & getProduct(cudaStream_t) const
bool unitIsADC() const
cms::cuda::ESProduct< Product > product_
std::vector< float, cms::cuda::HostAllocator< float > > widths_
~HcalPedestalsGPU()=default
edm::propagate_const_array< cms::cuda::device::unique_ptr< float[]> > values
std::vector< float, cms::cuda::HostAllocator< float > > values_
unsigned long long uint64_t
Definition: Time.h:13
edm::propagate_const_array< cms::cuda::device::unique_ptr< float[]> > widths