]> git.sesse.net Git - movit/blobdiff - slice_effect.h
In ResampleEffect, precompute the Lanczos function into a table.
[movit] / slice_effect.h
index 31a13fd60a736c5f32154080b7de4022157d67fe..ef96dddcb1e8474a07f037862fd37afe4a41951a 100644 (file)
@@ -10,7 +10,7 @@
 // Note that vertical slices happen from the top, consistent with the rest of
 // Movit.
 
-#include <GL/glew.h>
+#include <epoxy/gl.h>
 #include <string>
 
 #include "effect.h"
@@ -24,6 +24,7 @@ public:
        std::string output_fragment_shader();
        virtual bool needs_texture_bounce() const { return true; }
        virtual bool changes_output_size() const { return true; }
+       virtual bool sets_virtual_output_size() const { return false; }
        virtual void inform_input_size(unsigned input_num, unsigned width, unsigned height);
        virtual void get_output_size(unsigned *width, unsigned *height,
                                     unsigned *virtual_width, unsigned *virtual_height) const;
@@ -37,7 +38,11 @@ private:
        EffectChain *chain;
        int input_width, input_height;
        int input_slice_size, output_slice_size;
+       int offset;
        Direction direction;
+
+       float uniform_output_coord_to_slice_num, uniform_slice_num_to_input_coord;
+       float uniform_slice_offset_to_input_coord, uniform_offset;
 };
 
 }  // namespace movit