File indexing completed on 2023-03-17 10:49:13
0001 #ifndef CUDADataFormats_Vertex_ZVertexUtilities_h
0002 #define CUDADataFormats_Vertex_ZVertexUtilities_h
0003
0004 #include <cuda_runtime.h>
0005 #include "DataFormats/SoATemplate/interface/SoALayout.h"
0006
0007 GENERATE_SOA_LAYOUT(ZVertexSoAHeterogeneousLayout,
0008 SOA_COLUMN(int16_t, idv),
0009 SOA_COLUMN(float, zv),
0010 SOA_COLUMN(float, wv),
0011 SOA_COLUMN(float, chi2),
0012 SOA_COLUMN(float, ptv2),
0013 SOA_COLUMN(int32_t, ndof),
0014 SOA_COLUMN(uint16_t, sortInd),
0015 SOA_SCALAR(uint32_t, nvFinal))
0016
0017
0018
0019 namespace zVertex {
0020
0021 using ZVertexSoALayout = ZVertexSoAHeterogeneousLayout<>;
0022 using ZVertexSoAView = ZVertexSoAHeterogeneousLayout<>::View;
0023 using ZVertexSoAConstView = ZVertexSoAHeterogeneousLayout<>::ConstView;
0024
0025 namespace utilities {
0026
0027 static constexpr uint32_t MAXTRACKS = 128 * 1024;
0028 static constexpr uint32_t MAXVTX = 1024;
0029
0030 __host__ __device__ inline void init(ZVertexSoAView &vertices) { vertices.nvFinal() = 0; }
0031
0032 }
0033 }
0034
0035 #endif