X-Git-Url: https://git.sesse.net/?p=movit;a=blobdiff_plain;f=resize_effect.h;h=77dfdd48e1932c63bdb99110045e8b4263b6a290;hp=c11f4bc9ea6dd9fd4e52241e5e16b8c46b73da21;hb=8e9f58fec54a4c879035b214fd7411f6ff7b3a32;hpb=2322070a3dbeb6b46b39cca07a0fbf20e95f5468 diff --git a/resize_effect.h b/resize_effect.h index c11f4bc..77dfdd4 100644 --- a/resize_effect.h +++ b/resize_effect.h @@ -1,12 +1,16 @@ -#ifndef _RESIZE_EFFECT_H -#define _RESIZE_EFFECT_H 1 +#ifndef _MOVIT_RESIZE_EFFECT_H +#define _MOVIT_RESIZE_EFFECT_H 1 // An effect that simply resizes the picture to a given output size // (set by the two integer parameters "width" and "height"). // Mostly useful as part of other algorithms. +#include + #include "effect.h" +namespace movit { + class ResizeEffect : public Effect { public: ResizeEffect(); @@ -17,12 +21,16 @@ public: // in case we need to scale down a lot. virtual bool need_texture_bounce() const { return true; } virtual bool needs_mipmaps() const { return true; } + virtual AlphaHandling alpha_handling() const { return INPUT_PREMULTIPLIED_ALPHA_KEEP_BLANK; } virtual bool changes_output_size() const { return true; } + virtual bool sets_virtual_output_size() const { return false; } virtual void get_output_size(unsigned *width, unsigned *height, unsigned *virtual_width, unsigned *virtual_height) const; private: int width, height; }; -#endif // !defined(_RESIZE_EFFECT_H) +} // namespace movit + +#endif // !defined(_MOVIT_RESIZE_EFFECT_H)