Wayverb
mesh_setup_program.h
1 #pragma once
2 
3 #include "waveguide/mesh_descriptor.h"
4 
5 #include "core/cl/voxel_structs.h"
6 #include "core/program_wrapper.h"
7 
8 namespace wayverb {
9 namespace waveguide {
10 
11 class setup_program final {
12 public:
14 
15  auto get_node_inside_kernel() const {
16  return wrapper_.get_kernel<cl::Buffer,
18  cl::Buffer,
19  core::aabb,
20  cl_uint,
21  cl::Buffer,
22  cl::Buffer
23  >("set_node_inside");
24  }
25 
26  auto get_node_boundary_kernel() const {
27  return wrapper_.get_kernel<cl::Buffer,
29  >("set_node_boundary_type");
30  }
31 
32 private:
33  core::program_wrapper wrapper_;
34 };
35 
36 } // namespace waveguide
37 } // namespace wayverb
Definition: voxel_structs.h:9
auto get_node_boundary_kernel() const
Definition: mesh_setup_program.h:26
Definition: program_wrapper.h:8
Definition: mesh_setup_program.h:11
Definition: capsule_base.h:9
auto get_node_inside_kernel() const
Definition: mesh_setup_program.h:15
invariant: device is a valid device for the context
Definition: common.h:13
Definition: mesh_descriptor.h:14