1 #ifndef RecoLocalTracker_SiPixelClusterizer_plugins_SiPixelRawToClusterGPUKernel_h
2 #define RecoLocalTracker_SiPixelClusterizer_plugins_SiPixelRawToClusterGPUKernel_h
5 #include <cuda_runtime.h>
24 namespace pixelgpudetails {
26 inline namespace phase1geometry {
62 inline constexpr uint32_t
pack(uint32_t row, uint32_t
col, uint32_t
adc, uint32_t flag = 0) {
64 adc =
std::min(adc, uint32_t(thePacking.max_adc));
66 return (row << thePacking.row_shift) | (col << thePacking.column_shift) | (adc << thePacking.adc_shift);
71 return (row << thePacking.column_width) |
col;
84 const unsigned int*
word()
const {
return word_.get(); }
103 const unsigned char* modToUnp,
107 const uint32_t wordCounter,
108 const uint32_t fedCounter,
109 const uint32_t maxFedWords,
115 std::pair<SiPixelDigisCUDA, SiPixelClustersCUDA>
getResults() {
143 #endif // RecoLocalTracker_SiPixelClusterizer_plugins_SiPixelRawToClusterGPUKernel_h
void makeClustersAsync(bool isRun2, const SiPixelClusterThresholds clusterThresholds, const SiPixelROCsStatusAndMapping *cablingMap, const unsigned char *modToUnp, const SiPixelGainForHLTonGPU *gains, const WordFedAppender &wordFed, SiPixelFormatterErrors &&errors, const uint32_t wordCounter, const uint32_t fedCounter, const uint32_t maxFedWords, bool useQualityInfo, bool includeErrors, bool debug, cudaStream_t stream)
const uint32_t maxROCIndex
cms::cuda::host::noncached::unique_ptr< unsigned char[]> fedId_
const uint32_t diskStartBit
std::pair< SiPixelDigisCUDA, SiPixelClustersCUDA > getResults()
const uint32_t bladeStartBit
std::unique_ptr< T, impl::HostDeleter > unique_ptr
const uint32_t numRowsInRoc
~WordFedAppender()=default
uint32_t T const *__restrict__ uint32_t const *__restrict__ int32_t int Histo::index_type cudaStream_t stream
SiPixelClustersCUDA clusters_d
cms::cuda::host::noncached::unique_ptr< unsigned int[]> word_
const uint32_t panelStartBit
SiPixelDigiErrorsCUDA digiErrors_d
void initializeWordFed(int fedId, unsigned int wordCounterGPU, const cms_uint32_t *src, unsigned int length)
SiPixelRawToClusterGPUKernel()=default
static constexpr Packing thePacking
const uint32_t numColsInRoc
const uint32_t ladderMask
const uint32_t moduleMask
unsigned int cms_uint32_t
void setNClusters(uint32_t nClusters, int32_t offsetBPIX2)
~SiPixelRawToClusterGPUKernel()=default
const uint32_t ladderStartBit
const unsigned int * word() const
SiPixelRawToClusterGPUKernel & operator=(const SiPixelRawToClusterGPUKernel &)=delete
const uint32_t layerStartBit
constexpr pixelchannelidentifierimpl::Packing packing()
cms::cuda::host::unique_ptr< uint32_t[]> nModules_Clusters_h
constexpr uint32_t pack(uint32_t row, uint32_t col, uint32_t adc, uint32_t flag=0)
void setNModulesDigis(uint32_t nModules, uint32_t nDigis)
SiPixelDigiErrorsCUDA && getErrors()
const uint32_t moduleStartBit
std::unique_ptr< T, impl::HostDeleter > unique_ptr
constexpr uint32_t pixelToChannel(int row, int col)
uint16_t *__restrict__ uint16_t const *__restrict__ adc
const unsigned char * fedId() const