3 #include "raytracer/cl/reflection.h" 5 #include "core/cl/representation.h" 6 #include "core/cl/scene_structs.h" 7 #include "core/cl/traits.h" 13 core::bands_type volume;
20 return std::tie(x.volume, x.position, x.distance);
25 return to_tuple(a) == to_tuple(b);
37 template <
size_t channels>
39 detail::cl_vector_constructor_t<float, channels>
47 constexpr
auto make_impulse(T volume, cl_float3 position, cl_float distance) {
51 template <
size_t channels>
53 return std::tie(x.volume, x.position, x.distance);
56 template <
size_t channels>
59 return to_tuple(a) == to_tuple(b);
62 template <
size_t channels>
70 template <
size_t channels>
72 detail::cl_vector_constructor_t<float, channels> volume;
77 constexpr
auto make_attenuated_impulse(T volume, cl_float distance) {
81 template <
size_t channels>
83 return std::tie(x.volume, x.distance);
86 template <
size_t channels>
89 return to_tuple(a) == to_tuple(b);
92 template <
size_t channels>
102 static constexpr
auto value = R
"( 107 char receiver_visible; 114 static constexpr
auto value = R
"( 119 } stochastic_path_info; 125 static constexpr
auto value = R
"( 136 static constexpr
auto value = R
"( 140 } attenuated_impulse; Definition: representation.h:7
Definition: pressure.h:22
Definition: capsule_base.h:9