#define _FLAT_INPUT_H 1
#include "input.h"
+#include "init.h"
// A FlatInput is the normal, “classic” case of an input, where everything
// comes from a single 2D array with chunky pixels.
class FlatInput : public Input {
public:
FlatInput(ImageFormat format, MovitPixelFormat pixel_format, GLenum type, unsigned width, unsigned height);
+ ~FlatInput();
virtual std::string effect_type_id() const { return "FlatInput"; }
// mipmap generation) at that point.
void finalize();
- // TODO: Check that we actually have the required extension.
virtual bool can_output_linear_gamma() const {
- return (type == GL_UNSIGNED_BYTE &&
+ return (movit_srgb_textures_supported &&
+ type == GL_UNSIGNED_BYTE &&
(image_format.gamma_curve == GAMMA_LINEAR ||
image_format.gamma_curve == GAMMA_sRGB));
}
unsigned get_width() const { return width; }
unsigned get_height() const { return height; }
- ColorSpace get_color_space() const { return image_format.color_space; }
+ Colorspace get_color_space() const { return image_format.color_space; }
GammaCurve get_gamma_curve() const { return image_format.gamma_curve; }
// Tells the input where to fetch the actual pixel data. Note that if you change