]> git.tdb.fi Git - libs/gl.git/blobdiff - source/pixelformat.h
Implement sub_image for TextureCube also
[libs/gl.git] / source / pixelformat.h
index 6d68bbc170d0b9f2228087567ef0984bb951aa3d..b69ad499c59c6f77ad3ae737e9c257601544996a 100644 (file)
@@ -4,9 +4,12 @@
 #include <msp/graphics/pixelformat.h>
 #include <msp/strings/lexicalcast.h>
 #include "gl.h"
+#include <msp/gl/extensions/arb_depth_texture.h>
 #include <msp/gl/extensions/arb_texture_float.h>
 #include <msp/gl/extensions/ext_bgra.h>
 #include <msp/gl/extensions/ext_texture_srgb.h>
+#include <msp/gl/extensions/msp_legacy_features.h>
+#include <msp/gl/extensions/msp_sized_internal_formats.h>
 
 namespace Msp {
 namespace GL {
@@ -15,6 +18,9 @@ enum PixelFormat
 {
        STENCIL_INDEX   = GL_STENCIL_INDEX,
        DEPTH_COMPONENT = GL_DEPTH_COMPONENT,
+       DEPTH_COMPONENT16 = GL_DEPTH_COMPONENT16,
+       DEPTH_COMPONENT24 = GL_DEPTH_COMPONENT24,
+       DEPTH_COMPONENT32 = GL_DEPTH_COMPONENT32,
        RGB             = GL_RGB,
        RGBA            = GL_RGBA,
        RGB8            = GL_RGB8,
@@ -35,21 +41,25 @@ enum PixelFormat
        LUMINANCE16F    = GL_LUMINANCE16F_ARB,
        LUMINANCE32F    = GL_LUMINANCE32F_ARB,
        LUMINANCE_ALPHA    = GL_LUMINANCE_ALPHA,
-       LUMINANCE_ALPHA8   = GL_LUMINANCE8_ALPHA8,
+       LUMINANCE8_ALPHA8  = GL_LUMINANCE8_ALPHA8,
        LUMINANCE_ALPHA16F = GL_LUMINANCE_ALPHA16F_ARB,
        LUMINANCE_ALPHA32F = GL_LUMINANCE_ALPHA32F_ARB,
        SLUMINANCE         = GL_SLUMINANCE,
        SLUMINANCE8        = GL_SLUMINANCE8,
        SLUMINANCE_ALPHA   = GL_SLUMINANCE_ALPHA,
-       SLUMINANCE8_ALPHA8 = GL_SLUMINANCE8_ALPHA8
+       SLUMINANCE8_ALPHA8 = GL_SLUMINANCE8_ALPHA8,
+
+       // Typo, deprecated
+       LUMINANCE_ALPHA8   = GL_LUMINANCE8_ALPHA8
 };
 
 void operator>>(const LexicalConverter &, PixelFormat &);
 
 PixelFormat pixelformat_from_graphics(Graphics::PixelFormat);
-PixelFormat storage_pixelformat_from_graphics(Graphics::PixelFormat);
+PixelFormat storage_pixelformat_from_graphics(Graphics::PixelFormat, bool = false);
 
 PixelFormat get_base_pixelformat(PixelFormat);
+PixelFormat get_sized_pixelformat(PixelFormat);
 PixelFormat get_srgb_pixelformat(PixelFormat);
 unsigned get_component_count(PixelFormat);
 unsigned get_component_size(PixelFormat);