JASPL  0.2
Just Another Signal Processing Library
nonlinearconvolution.h
1 #ifndef NONLINEARCONVOLUTION_H
2 #define NONLINEARCONVOLUTION_H
3 
4 //Header for this file
5 //
6 //C System-Headers
7 //
8 //C++ System headers
9 //
10 //OpenCL Headers
11 //
12 //Boost Headers
13 //
14 //Project specific headers
15 #include "../JASPL/jTypeTraits/jtypetraits.h"
16 #include "../JASPL/TaskItem/taskitem.h"
17 
18 namespace jaspl {
19 
20 namespace ocl {
21 
22 template <class T>
24 
25  public:
26  NonLinearConvolution( T& convolution_kernel );
27  NonLinearConvolution( T* convolution_kernel );
29 
30  private:
31  void Trigger();
32  void SetSignal(cl::Buffer& signal_buff , uint sig_size);
33 
34  cl::Buffer& ProcessedSignal();
35  size_t ProcessedSignalBytes();
36  size_t ProcessedSignalSize();
37 
38  cl::Buffer kernel_buff;
39  cl::Buffer scratch_buff;
40 
41 };
42 
43 }
44 
45 }
46 
47 #include "TaskItems/NonLinearConvolution/nonlinearconvolution.tpp"
48 
49 #endif // NONLINEARCONVOLUTION_H