CMS 3D CMS Logo

HcalMahiPulseOffsetsGPU.h
Go to the documentation of this file.
1 #ifndef RecoLocalCalo_HcalRecAlgos_interface_HcalMahiPulseOffsetsGPU_h
2 #define RecoLocalCalo_HcalRecAlgos_interface_HcalMahiPulseOffsetsGPU_h
3 
4 #ifndef __CUDACC__
7 #endif
8 
10 public:
11  struct Product {
12  ~Product();
13  int* values;
14  };
15 
16 #ifndef __CUDACC__
17  // rearrange reco params
18  HcalMahiPulseOffsetsGPU(std::vector<int> const& values);
19 
20  // will trigger deallocation of Product thru ~Product
21  ~HcalMahiPulseOffsetsGPU() = default;
22 
23  std::vector<int, cms::cuda::HostAllocator<int>> const& getValues() const { return values_; }
24 
25  // get device pointers
26  Product const& getProduct(cudaStream_t) const;
27 
28 private:
29  std::vector<int, cms::cuda::HostAllocator<int>> values_;
30 
32 #endif
33 };
34 
35 #endif
std::vector< int, cms::cuda::HostAllocator< int > > const & getValues() const
HcalMahiPulseOffsetsGPU(std::vector< int > const &values)
cms::cuda::ESProduct< Product > product_
~HcalMahiPulseOffsetsGPU()=default
Product const & getProduct(cudaStream_t) const
std::vector< int, cms::cuda::HostAllocator< int > > values_