--------------------------------------------------------------------------------
-- |
-- Module      :  Graphics.Rendering.OpenGL.Raw.NV.TextureShader
-- Copyright   :  (c) Sven Panne 2009
-- License     :  BSD-style (see the file LICENSE)
--
-- Maintainer  :  sven.panne@aedion.de
-- Stability   :  stable
-- Portability :  portable
--
-- All raw functions and tokens from the NV_texture_shader extension not
-- already in the OpenGL 3.1 core, see
-- <http://www.opengl.org/registry/specs/NV/texture_shader.txt>.
--
--------------------------------------------------------------------------------

module Graphics.Rendering.OpenGL.Raw.NV.TextureShader (
   -- * Tokens
   gl_TEXTURE_SHADER,
   gl_RGBA_UNSIGNED_DOT_PRODUCT_MAPPING,
   gl_SHADER_OPERATION,
   gl_OFFSET_TEXTURE_SCALE,
   gl_OFFSET_TEXTURE_BIAS,
   gl_OFFSET_TEXTURE_2D_SCALE,
   gl_OFFSET_TEXTURE_2D_BIAS,
   gl_PREVIOUS_TEXTURE_INPUT,
   gl_CULL_MODES,
   gl_OFFSET_TEXTURE_MATRIX,
   gl_OFFSET_TEXTURE_2D_MATRIX,
   gl_CONST_EYE,
   gl_SHADER_CONSISTENT,
   gl_PASS_THROUGH,
   gl_CULL_FRAGMENT,
   gl_OFFSET_TEXTURE_2D,
   gl_OFFSET_TEXTURE_2D_SCALE,
   gl_OFFSET_TEXTURE_RECTANGLE,
   gl_OFFSET_TEXTURE_RECTANGLE_SCALE,
   gl_DEPENDENT_AR_TEXTURE_2D,
   gl_DEPENDENT_GB_TEXTURE_2D,
   gl_DOT_PRODUCT,
   gl_DOT_PRODUCT_DEPTH_REPLACE,
   gl_DOT_PRODUCT_TEXTURE_2D,
   gl_DOT_PRODUCT_TEXTURE_RECTANGLE,
   gl_DOT_PRODUCT_TEXTURE_CUBE_MAP,
   gl_DOT_PRODUCT_DIFFUSE_CUBE_MAP,
   gl_DOT_PRODUCT_REFLECT_CUBE_MAP,
   gl_DOT_PRODUCT_CONST_EYE_REFLECT_CUBE_MAP,
   gl_UNSIGNED_IDENTITY,
   gl_EXPAND_NORMAL,
   gl_HILO,
   gl_DSDT,
   gl_DSDT_MAG,
   gl_DSDT_MAG_VIB,
   gl_UNSIGNED_INT_S8_S8_8_8,
   gl_UNSIGNED_INT_8_8_S8_S8_REV,
   gl_SIGNED_RGBA,
   gl_SIGNED_RGBA8,
   gl_SIGNED_RGB,
   gl_SIGNED_RGB8,
   gl_SIGNED_LUMINANCE,
   gl_SIGNED_LUMINANCE8,
   gl_SIGNED_LUMINANCE_ALPHA,
   gl_SIGNED_LUMINANCE8_ALPHA8,
   gl_SIGNED_ALPHA,
   gl_SIGNED_ALPHA8,
   gl_SIGNED_INTENSITY,
   gl_SIGNED_INTENSITY8,
   gl_SIGNED_RGB_UNSIGNED_ALPHA,
   gl_SIGNED_RGB8_UNSIGNED_ALPHA8,
   gl_HILO,
   gl_HILO16,
   gl_SIGNED_HILO,
   gl_SIGNED_HILO16,
   gl_DSDT,
   gl_DSDT8,
   gl_DSDT_MAG,
   gl_DSDT8_MAG8,
   gl_DSDT_MAG_INTENSITY,
   gl_DSDT8_MAG8_INTENSITY8,
   gl_HI_SCALE,
   gl_LO_SCALE,
   gl_DS_SCALE,
   gl_DT_SCALE,
   gl_MAGNITUDE_SCALE,
   gl_VIBRANCE_SCALE,
   gl_HI_BIAS,
   gl_LO_BIAS,
   gl_DS_BIAS,
   gl_DT_BIAS,
   gl_MAGNITUDE_BIAS,
   gl_VIBRANCE_BIAS,
   gl_TEXTURE_BORDER_VALUES,
   gl_TEXTURE_HI_SIZE,
   gl_TEXTURE_LO_SIZE,
   gl_TEXTURE_DS_SIZE,
   gl_TEXTURE_DT_SIZE,
   gl_TEXTURE_MAG_SIZE
) where

import Graphics.Rendering.OpenGL.Raw.Core32
import Graphics.Rendering.OpenGL.Raw.NV.RegisterCombiners

gl_TEXTURE_SHADER :: GLenum
gl_TEXTURE_SHADER = 0x86DE

gl_RGBA_UNSIGNED_DOT_PRODUCT_MAPPING :: GLenum
gl_RGBA_UNSIGNED_DOT_PRODUCT_MAPPING = 0x86D9

gl_SHADER_OPERATION :: GLenum
gl_SHADER_OPERATION = 0x86DF

gl_OFFSET_TEXTURE_SCALE :: GLenum
gl_OFFSET_TEXTURE_SCALE = 0x86E2

gl_OFFSET_TEXTURE_BIAS :: GLenum
gl_OFFSET_TEXTURE_BIAS = 0x86E3

gl_OFFSET_TEXTURE_2D_SCALE :: GLenum
gl_OFFSET_TEXTURE_2D_SCALE = gl_OFFSET_TEXTURE_SCALE

gl_OFFSET_TEXTURE_2D_BIAS :: GLenum
gl_OFFSET_TEXTURE_2D_BIAS = gl_OFFSET_TEXTURE_BIAS

gl_PREVIOUS_TEXTURE_INPUT :: GLenum
gl_PREVIOUS_TEXTURE_INPUT = 0x86E4

gl_CULL_MODES :: GLenum
gl_CULL_MODES = 0x86E0

gl_OFFSET_TEXTURE_MATRIX :: GLenum
gl_OFFSET_TEXTURE_MATRIX = 0x86E1

gl_OFFSET_TEXTURE_2D_MATRIX :: GLenum
gl_OFFSET_TEXTURE_2D_MATRIX = gl_OFFSET_TEXTURE_MATRIX

gl_CONST_EYE :: GLenum
gl_CONST_EYE = 0x86E5

gl_SHADER_CONSISTENT :: GLenum
gl_SHADER_CONSISTENT = 0x86DD

gl_PASS_THROUGH :: GLenum
gl_PASS_THROUGH = 0x86E6

gl_CULL_FRAGMENT :: GLenum
gl_CULL_FRAGMENT = 0x86E7

gl_OFFSET_TEXTURE_2D :: GLenum
gl_OFFSET_TEXTURE_2D = 0x86E8

gl_OFFSET_TEXTURE_RECTANGLE :: GLenum
gl_OFFSET_TEXTURE_RECTANGLE = 0x864C

gl_OFFSET_TEXTURE_RECTANGLE_SCALE :: GLenum
gl_OFFSET_TEXTURE_RECTANGLE_SCALE = 0x864D

gl_DEPENDENT_AR_TEXTURE_2D :: GLenum
gl_DEPENDENT_AR_TEXTURE_2D = 0x86E9

gl_DEPENDENT_GB_TEXTURE_2D :: GLenum
gl_DEPENDENT_GB_TEXTURE_2D = 0x86EA

gl_DOT_PRODUCT :: GLenum
gl_DOT_PRODUCT = 0x86EC

gl_DOT_PRODUCT_DEPTH_REPLACE :: GLenum
gl_DOT_PRODUCT_DEPTH_REPLACE = 0x86ED

gl_DOT_PRODUCT_TEXTURE_2D :: GLenum
gl_DOT_PRODUCT_TEXTURE_2D = 0x86EE

gl_DOT_PRODUCT_TEXTURE_RECTANGLE :: GLenum
gl_DOT_PRODUCT_TEXTURE_RECTANGLE = 0x864E

gl_DOT_PRODUCT_TEXTURE_CUBE_MAP :: GLenum
gl_DOT_PRODUCT_TEXTURE_CUBE_MAP = 0x86F0

gl_DOT_PRODUCT_DIFFUSE_CUBE_MAP :: GLenum
gl_DOT_PRODUCT_DIFFUSE_CUBE_MAP = 0x86F1

gl_DOT_PRODUCT_REFLECT_CUBE_MAP :: GLenum
gl_DOT_PRODUCT_REFLECT_CUBE_MAP = 0x86F2

gl_DOT_PRODUCT_CONST_EYE_REFLECT_CUBE_MAP :: GLenum
gl_DOT_PRODUCT_CONST_EYE_REFLECT_CUBE_MAP = 0x86F3

gl_HILO :: GLenum
gl_HILO = 0x86F4

gl_DSDT :: GLenum
gl_DSDT = 0x86F5

gl_DSDT_MAG :: GLenum
gl_DSDT_MAG = 0x86F6

gl_DSDT_MAG_VIB :: GLenum
gl_DSDT_MAG_VIB = 0x86F7

gl_UNSIGNED_INT_S8_S8_8_8 :: GLenum
gl_UNSIGNED_INT_S8_S8_8_8 = 0x86DA 

gl_UNSIGNED_INT_8_8_S8_S8_REV :: GLenum
gl_UNSIGNED_INT_8_8_S8_S8_REV = 0x86DB 

gl_SIGNED_RGBA :: GLenum
gl_SIGNED_RGBA = 0x86FB

gl_SIGNED_RGBA8 :: GLenum
gl_SIGNED_RGBA8 = 0x86FC

gl_SIGNED_RGB :: GLenum
gl_SIGNED_RGB = 0x86FE

gl_SIGNED_RGB8 :: GLenum
gl_SIGNED_RGB8 = 0x86FF

gl_SIGNED_LUMINANCE :: GLenum
gl_SIGNED_LUMINANCE = 0x8701

gl_SIGNED_LUMINANCE8 :: GLenum
gl_SIGNED_LUMINANCE8 = 0x8702

gl_SIGNED_LUMINANCE_ALPHA :: GLenum
gl_SIGNED_LUMINANCE_ALPHA = 0x8703

gl_SIGNED_LUMINANCE8_ALPHA8 :: GLenum
gl_SIGNED_LUMINANCE8_ALPHA8 = 0x8704

gl_SIGNED_ALPHA :: GLenum
gl_SIGNED_ALPHA = 0x8705

gl_SIGNED_ALPHA8 :: GLenum
gl_SIGNED_ALPHA8 = 0x8706

gl_SIGNED_INTENSITY :: GLenum
gl_SIGNED_INTENSITY = 0x8707

gl_SIGNED_INTENSITY8 :: GLenum
gl_SIGNED_INTENSITY8 = 0x8708

gl_SIGNED_RGB_UNSIGNED_ALPHA :: GLenum
gl_SIGNED_RGB_UNSIGNED_ALPHA = 0x870C

gl_SIGNED_RGB8_UNSIGNED_ALPHA8 :: GLenum
gl_SIGNED_RGB8_UNSIGNED_ALPHA8 = 0x870D

gl_HILO16 :: GLenum
gl_HILO16 = 0x86F8

gl_SIGNED_HILO :: GLenum
gl_SIGNED_HILO = 0x86F9

gl_SIGNED_HILO16 :: GLenum
gl_SIGNED_HILO16 = 0x86FA

gl_DSDT8 :: GLenum
gl_DSDT8 = 0x8709

gl_DSDT8_MAG8 :: GLenum
gl_DSDT8_MAG8 = 0x870A

gl_DSDT_MAG_INTENSITY :: GLenum
gl_DSDT_MAG_INTENSITY = 0x86DC

gl_DSDT8_MAG8_INTENSITY8 :: GLenum
gl_DSDT8_MAG8_INTENSITY8 = 0x870B

gl_HI_SCALE :: GLenum
gl_HI_SCALE = 0x870E

gl_LO_SCALE :: GLenum
gl_LO_SCALE = 0x870F

gl_DS_SCALE :: GLenum
gl_DS_SCALE = 0x8710

gl_DT_SCALE :: GLenum
gl_DT_SCALE = 0x8711

gl_MAGNITUDE_SCALE :: GLenum
gl_MAGNITUDE_SCALE = 0x8712

gl_VIBRANCE_SCALE :: GLenum
gl_VIBRANCE_SCALE = 0x8713

gl_HI_BIAS :: GLenum
gl_HI_BIAS = 0x8714

gl_LO_BIAS :: GLenum
gl_LO_BIAS = 0x8715

gl_DS_BIAS :: GLenum
gl_DS_BIAS = 0x8716

gl_DT_BIAS :: GLenum
gl_DT_BIAS = 0x8717

gl_MAGNITUDE_BIAS :: GLenum
gl_MAGNITUDE_BIAS = 0x8718

gl_VIBRANCE_BIAS :: GLenum
gl_VIBRANCE_BIAS = 0x8719

gl_TEXTURE_BORDER_VALUES :: GLenum
gl_TEXTURE_BORDER_VALUES = 0x871A

gl_TEXTURE_HI_SIZE :: GLenum
gl_TEXTURE_HI_SIZE = 0x871B

gl_TEXTURE_LO_SIZE :: GLenum
gl_TEXTURE_LO_SIZE = 0x871C

gl_TEXTURE_DS_SIZE :: GLenum
gl_TEXTURE_DS_SIZE = 0x871D

gl_TEXTURE_DT_SIZE :: GLenum
gl_TEXTURE_DT_SIZE = 0x871E

gl_TEXTURE_MAG_SIZE :: GLenum
gl_TEXTURE_MAG_SIZE = 0x871F