summaryrefslogtreecommitdiffstats
path: root/tools/gfx/cuda/cuda-shader-program.h
blob: 3f611725483fedaacfbf34c8d7a86c14b34d6865 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
// cuda-shader-program.h
#pragma once
#include "cuda-base.h"
#include "cuda-context.h"
#include "cuda-shader-object-layout.h"

namespace gfx
{
#ifdef GFX_ENABLE_CUDA
using namespace Slang;

namespace cuda
{

class ShaderProgramImpl : public ShaderProgramBase
{
public:
    CUmodule cudaModule = nullptr;
    CUfunction cudaKernel;
    String kernelName;
    RefPtr<RootShaderObjectLayoutImpl> layout;
    RefPtr<CUDAContext> cudaContext;
    ~ShaderProgramImpl();
};

} // namespace cuda
#endif
} // namespace gfx