Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:25:55

0001 #ifndef RecoLocalCalo_HGCalESProducers_KernelManagerHGCalCellPositions_h
0002 #define RecoLocalCalo_HGCalESProducers_KernelManagerHGCalCellPositions_h
0003 
0004 #include "FWCore/Utilities/interface/Exception.h"
0005 #include "HeterogeneousCore/CUDAUtilities/interface/MessageLogger.h"
0006 #include "DataFormats/DetId/interface/DetId.h"
0007 #include "HeterogeneousCore/CUDAUtilities/interface/cudaCompat.h"
0008 #include "HeterogeneousCore/CUDAUtilities/interface/cudaCheck.h"
0009 #include "RecoLocalCalo/HGCalRecProducers/plugins/HGCalCellPositionsKernelImpl.cuh"
0010 #include "CUDADataFormats/HGCal/interface/HGCConditions.h"
0011 
0012 #include <vector>
0013 #include <algorithm>  //std::swap
0014 #include <variant>
0015 #include <cuda.h>
0016 #include <cuda_runtime.h>
0017 
0018 /*
0019 #ifdef __CUDA_ARCH__
0020 extern __constant__ uint32_t calo_rechit_masks[];
0021 #endif
0022 */
0023 
0024 class KernelManagerHGCalCellPositions {
0025 public:
0026   KernelManagerHGCalCellPositions(const size_t&);
0027 
0028   void fill_positions(const hgcal_conditions::HeterogeneousHEFCellPositionsConditionsESProduct*);
0029   void test_cell_positions(unsigned, const hgcal_conditions::HeterogeneousHEFCellPositionsConditionsESProduct*);
0030 };
0031 
0032 #endif  //RecoLocalCalo_HGCalESProducers_KernelManagerHGCalCellPositions_h