CMS 3D CMS Logo

EcalLaserAlphasGPU.h
Go to the documentation of this file.
1 #ifndef CondFormats_EcalObjects_interface_EcalLaserAlphasGPU_h
2 #define CondFormats_EcalObjects_interface_EcalLaserAlphasGPU_h
3 
7 
8 #ifndef __CUDACC__
11 #endif // __CUDACC__
12 
14 public:
15  struct Product {
17  };
18 
19 #ifndef __CUDACC__
20  //
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 
41 #endif // __CUDACC__
42 };
43 
44 #endif // CondFormats_EcalObjects_interface_EcalLaserAlphasGPU_h
~EcalLaserAlphasGPU()=default
uint32_t getOffset() const
EcalLaserAlphasGPU(EcalLaserAlphas const &)
cms::cuda::ESProduct< Product > product_
static std::string name()
std::vector< float, cms::cuda::HostAllocator< float > > values_
edm::propagate_const_array< cms::cuda::device::unique_ptr< float[]> > values
Product const & getProduct(cudaStream_t) const