X-Git-Url: http://git.tdb.fi/?p=libs%2Fgl.git;a=blobdiff_plain;f=source%2Fpixelformat.h;h=2db894a78447ed0d6b7b2892f7c5e8a499509774;hp=d61788a630ecb702359605afb8b23ba42bf60c78;hb=a4549c55a6d47129bd9e42c6a49a671b759ce6d9;hpb=a5797c9babd17673285b3b15c7572c2d8fe1595c diff --git a/source/pixelformat.h b/source/pixelformat.h index d61788a6..2db894a7 100644 --- a/source/pixelformat.h +++ b/source/pixelformat.h @@ -1,40 +1,82 @@ -/* $Id$ - -This file is part of libmspgl -Copyright © 2007 Mikko Rasa, Mikkosoft Productions -Distributed under the LGPL -*/ - #ifndef MSP_GL_PIXELFORMAT_H_ #define MSP_GL_PIXELFORMAT_H_ -#include -#include +#include +#include #include "gl.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include namespace Msp { namespace GL { enum PixelFormat { - COLOR_INDEX = GL_COLOR_INDEX, 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, + DEPTH_COMPONENT32F = GL_DEPTH_COMPONENT32F, RED = GL_RED, - GREEN = GL_GREEN, - BLUE = GL_BLUE, - ALPHA = GL_ALPHA, + RG = GL_RG, RGB = GL_RGB, RGBA = GL_RGBA, + R8 = GL_R8, + R16F = GL_R16F, + R32F = GL_R32F, + RG8 = GL_RG8, + RG16F = GL_RG16F, + RG32F = GL_RG32F, + RGB8 = GL_RGB8, + RGB16F = GL_RGB16F, + RGB32F = GL_RGB32F, + RGBA8 = GL_RGBA8, + RGBA16F = GL_RGBA16F, + RGBA32F = GL_RGBA32F, + SRGB = GL_SRGB, + SRGB_ALPHA = GL_SRGB_ALPHA, + SRGB8 = GL_SRGB8, + SRGB8_ALPHA8 = GL_SRGB8_ALPHA8, BGR = GL_BGR, BGRA = GL_BGRA, LUMINANCE = GL_LUMINANCE, - LUMINANCE_ALPHA = GL_LUMINANCE_ALPHA + LUMINANCE8 = GL_LUMINANCE8, + LUMINANCE_ALPHA = GL_LUMINANCE_ALPHA, + LUMINANCE8_ALPHA8 = GL_LUMINANCE8_ALPHA8, + + // Deprecated + SLUMINANCE = GL_SLUMINANCE, + SLUMINANCE8 = GL_SLUMINANCE8, + SLUMINANCE_ALPHA = GL_SLUMINANCE_ALPHA, + SLUMINANCE8_ALPHA8 = GL_SLUMINANCE8_ALPHA8, + + // Typo, deprecated + LUMINANCE_ALPHA8 = GL_LUMINANCE8_ALPHA8 }; -std::istream &operator>>(std::istream &, PixelFormat &); +void operator>>(const LexicalConverter &, PixelFormat &); PixelFormat pixelformat_from_graphics(Graphics::PixelFormat); +PixelFormat storage_pixelformat_from_graphics(Graphics::PixelFormat, bool = false); + +PixelFormat get_base_pixelformat(PixelFormat); +PixelFormat get_unsized_pixelformat(PixelFormat); +PixelFormat get_sized_pixelformat(PixelFormat, unsigned = 1); +PixelFormat get_default_sized_pixelformat(PixelFormat); +PixelFormat get_srgb_pixelformat(PixelFormat); +unsigned get_component_count(PixelFormat); +unsigned get_component_size(PixelFormat); +unsigned get_pixel_size(PixelFormat); + +void require_pixelformat(PixelFormat); } // namespace GL } // namespace Msp