src
CUDADataFormats
Vertex
interface
ZVertexSoAHeterogeneousDevice.h
Go to the documentation of this file.
1
#ifndef CUDADataFormats_Vertex_ZVertexHeterogeneousDevice_H
2
#define CUDADataFormats_Vertex_ZVertexHeterogeneousDevice_H
3
4
#include "
CUDADataFormats/Vertex/interface/ZVertexUtilities.h
"
5
#include "
CUDADataFormats/Common/interface/PortableDeviceCollection.h
"
6
7
// TODO: The class is created via inheritance of the PortableDeviceCollection.
8
// This is generally discouraged, and should be done via composition.
9
// See: https://github.com/cms-sw/cmssw/pull/40465#discussion_r1067364306
10
template
<
int
32_t S>
11
class
ZVertexSoAHeterogeneousDevice
:
public
cms::cuda::PortableDeviceCollection
<ZVertexSoAHeterogeneousLayout<>> {
12
public
:
13
ZVertexSoAHeterogeneousDevice
() =
default
;
// cms::cuda::Product needs this
14
15
// Constructor which specifies the SoA size
16
explicit
ZVertexSoAHeterogeneousDevice
(cudaStream_t
stream
)
17
:
PortableDeviceCollection
<
ZVertexSoAHeterogeneousLayout
<>>(
S
,
stream
) {}
18
};
19
20
using
ZVertexSoADevice
=
ZVertexSoAHeterogeneousDevice<zVertex::utilities::MAXTRACKS>
;
21
22
#endif // CUDADataFormats_Vertex_ZVertexHeterogeneousDevice_H
PortableDeviceCollection.h
cms::cuda::PortableDeviceCollection
Definition:
PortableDeviceCollection.h:13
cms::cuda::stream
uint32_t T const *__restrict__ uint32_t const *__restrict__ int32_t int Histo::index_type cudaStream_t stream
Definition:
HistoContainer.h:51
S
Definition:
CSCDBL1TPParametersExtended.h:16
ZVertexSoAHeterogeneousLayout
Definition:
ZVertexUtilities.h:15
ZVertexSoAHeterogeneousDevice::ZVertexSoAHeterogeneousDevice
ZVertexSoAHeterogeneousDevice(cudaStream_t stream)
Definition:
ZVertexSoAHeterogeneousDevice.h:16
ZVertexSoAHeterogeneousDevice
Definition:
ZVertexSoAHeterogeneousDevice.h:11
PortableDeviceCollection
Definition:
PortableDeviceCollection.h:16
ZVertexSoAHeterogeneousDevice::ZVertexSoAHeterogeneousDevice
ZVertexSoAHeterogeneousDevice()=default
ZVertexUtilities.h
Generated for CMSSW Reference Manual by
1.8.14