PICCANTE  0.4
The hottest HDR imaging library!
filter_color_conv.hpp
Go to the documentation of this file.
1 /*
2 
3 PICCANTE
4 The hottest HDR imaging library!
5 http://vcg.isti.cnr.it/piccante
6 
7 Copyright (C) 2014
8 Visual Computing Laboratory - ISTI CNR
9 http://vcg.isti.cnr.it
10 First author: Francesco Banterle
11 
12 This Source Code Form is subject to the terms of the Mozilla Public
13 License, v. 2.0. If a copy of the MPL was not distributed with this
14 file, You can obtain one at http://mozilla.org/MPL/2.0/.
15 
16 */
17 
18 #ifndef PIC_GL_FILTERING_FILTER_COLOR_CONV_HPP
19 #define PIC_GL_FILTERING_FILTER_COLOR_CONV_HPP
20 
21 #include "../../base.hpp"
22 #include "../../util/std_util.hpp"
23 #include "../../gl/filtering/filter.hpp"
24 
25 namespace pic {
26 
31 {
32 protected:
33 
35 
39  void initShaders()
40  {
42  }
43 
44 public:
49  {
50  this->color_conv = color_conv;
51 
52  initShaders();
53  setup(direct);
54  }
55 
57  {
58  release();
59  }
60 
61  void releaseAux()
62  {
64  }
65 
70  void setup(bool direct)
71  {
72  color_conv->setTransform(direct);
74  }
75 
84  void OutputSize(ImageGLVec imgIn, int &width, int &height, int &channels, int &frames)
85  {
86  width = imgIn[0]->width;
87  height = imgIn[0]->height;
88  channels = 3;
89  frames = imgIn[0]->frames;
90  }
91 
93  {
95  }
96 
98  {
100  }
101 };
102 
103 } // end namespace pic
104 
105 #endif /* PIC_GL_FILTERING_FILTER_COLOR_CONV_HPP */
106 
virtual void setUniforms()
setUniforms
Definition: color_conv.hpp:131
ColorConvGL * color_conv
Definition: filter_color_conv.hpp:34
void setup(bool direct)
setup
Definition: filter_color_conv.hpp:70
void generatePrograms(std::string vertex_source)
generatePrograms
Definition: color_conv.hpp:86
T * delete_s(T *data)
delete_s
Definition: std_util.hpp:123
void setTransform(bool direct)
setTransform
Definition: color_conv.hpp:107
The FilterGLColorConv class.
Definition: filter_color_conv.hpp:30
void bindProgram()
bindProgram
Definition: color_conv.hpp:115
void releaseAux()
releaseAux
Definition: filter_color_conv.hpp:61
void OutputSize(ImageGLVec imgIn, int &width, int &height, int &channels, int &frames)
OutputSize.
Definition: filter_color_conv.hpp:84
The FilterGL class.
Definition: filter.hpp:35
The ColorConvGL class.
Definition: color_conv.hpp:30
std::string vertex_source
Definition: display.hpp:57
Definition: bilateral_separation.hpp:25
void unbindTechnique()
Definition: filter_color_conv.hpp:97
void unbindProgram()
unbindProgram
Definition: color_conv.hpp:123
FilterGLColorConv(ColorConvGL *color_conv, bool direct)
FilterGLColorConv.
Definition: filter_color_conv.hpp:48
void bindTechnique()
Definition: filter_color_conv.hpp:92
std::vector< ImageGL * > ImageGLVec
ImageGLVec an std::vector of pic::ImageGL.
Definition: image_vec.hpp:32
void release()
release
Definition: display.hpp:85
~FilterGLColorConv()
Definition: filter_color_conv.hpp:56
void initShaders()
initShaders
Definition: filter_color_conv.hpp:39