| 0.8.2 API documentation

- Main Page
- Namespaces
- Classes
- Files

- File List

reduce.hpp
Go to the documentation of this file.
1
4 #pragma once
5
6 #include "texture1d.hpp"
7 #include "texture1d_array.hpp"
8 #include "texture2d.hpp"
9 #include "texture2d_array.hpp"
10 #include "texture3d.hpp"
11 #include "texture_cube.hpp"
12 #include "texture_cube_array.hpp"
13
14 namespace gli
15 {
16 template <typename vec_type>
17 struct reduce_func
18 {
19 typedef vec_type(*type)(vec_type const & A, vec_type const & B);
20 };
21
28 template <typename vec_type>
29 vec_type reduce(texture1d const & In0, texture1d const & In1, typename reduce_func<vec_type>::type TexelFunc, typename reduce_func<vec_type>::type ReduceFunc);
30
37 template <typename vec_type>
38 vec_type reduce(texture1d_array const & In0, texture1d_array const & In1, typename reduce_func<vec_type>::type TexelFunc, typename reduce_func<vec_type>::type ReduceFunc);
39
46 template <typename vec_type>
47 vec_type reduce(texture2d const & In0, texture2d const & In1, typename reduce_func<vec_type>::type TexelFunc, typename reduce_func<vec_type>::type ReduceFunc);
48
55 template <typename vec_type>
56 vec_type reduce(texture2d_array const & In0, texture2d_array const & In1, typename reduce_func<vec_type>::type TexelFunc, typename reduce_func<vec_type>::type ReduceFunc);
57
64 template <typename vec_type>
65 vec_type reduce(texture3d const & In0, texture3d const & In1, typename reduce_func<vec_type>::type TexelFunc, typename reduce_func<vec_type>::type ReduceFunc);
66
73 template <typename vec_type>
74 vec_type reduce(texture_cube const & In0, texture_cube const & In1, typename reduce_func<vec_type>::type TexelFunc, typename reduce_func<vec_type>::type ReduceFunc);
75
82 template <typename vec_type>
83 vec_type reduce(texture_cube_array const & In0, texture_cube_array const & In1, typename reduce_func<vec_type>::type TexelFunc, typename reduce_func<vec_type>::type ReduceFunc);
84
91 template <typename texture_type, typename vec_type>
92 vec_type reduce(texture_type const & In0, texture_type const & In1, typename reduce_func<vec_type>::type TexelFunc, typename reduce_func<vec_type>::type ReduceFunc);
93 }//namespace gli
94
95 #include "./core/reduce.inl"
texture_cube.hpp
Include to use cube map textures.
texture1d_array.hpp
Include to use 1d array textures.
texture3d.hpp
Include to use 3d textures.
texture1d.hpp
Include to use 1d textures.
texture2d_array.hpp
Include to use 2d array textures.
texture_cube_array.hpp
Include to use cube map array textures.
gli
Namespace where all the classes and functions provided by GLI are exposed.
Definition: clear.hpp:6
texture2d.hpp
Include to use 2d textures.
gli::reduce
vec_type reduce(texture1d const &In0, texture1d const &In1, typename reduce_func< vec_type >::type TexelFunc, typename reduce_func< vec_type >::type ReduceFunc)
Compute per-texel operations using a user defined function.