|
| 1 | +{-# LANGUAGE ForeignFunctionInterface, CPP #-} |
| 2 | +-------------------------------------------------------------------------------- |
| 3 | +-- | |
| 4 | +-- Module : Graphics.Rendering.OpenGL.Raw.ARB.TessellationShader |
| 5 | +-- Copyright : (c) Sven Panne 2013 |
| 6 | +-- License : BSD3 |
| 7 | +-- |
| 8 | +-- Maintainer : Sven Panne <svenpanne@gmail.com> |
| 9 | +-- Stability : stable |
| 10 | +-- Portability : portable |
| 11 | +-- |
| 12 | +-- All raw functions and tokens from the ARB_tessellation_shader extension, see |
| 13 | +-- <http://www.opengl.org/registry/specs/ARB/tessellation_shader.txt>. |
| 14 | +-- |
| 15 | +-------------------------------------------------------------------------------- |
| 16 | + |
| 17 | +module Graphics.Rendering.OpenGL.Raw.ARB.TessellationShader ( |
| 18 | + -- * Functions |
| 19 | + glPatchParameteri, |
| 20 | + glPatchParameterfv, |
| 21 | + |
| 22 | + -- * Tokens |
| 23 | + gl_PATCHES, |
| 24 | + gl_PATCH_VERTICES, |
| 25 | + gl_PATCH_DEFAULT_INNER_LEVEL, |
| 26 | + gl_PATCH_DEFAULT_OUTER_LEVEL, |
| 27 | + gl_TESS_CONTROL_OUTPUT_VERTICES, |
| 28 | + gl_TESS_GEN_MODE, |
| 29 | + gl_TESS_GEN_SPACING, |
| 30 | + gl_TESS_GEN_VERTEX_ORDER, |
| 31 | + gl_TESS_GEN_POINT_MODE, |
| 32 | + gl_TRIANGLES, |
| 33 | + gl_ISOLINES, |
| 34 | + gl_EQUAL, |
| 35 | + gl_FRACTIONAL_ODD, |
| 36 | + gl_FRACTIONAL_EVEN, |
| 37 | + gl_CCW, |
| 38 | + gl_CW, |
| 39 | + gl_MAX_PATCH_VERTICES, |
| 40 | + gl_MAX_TESS_GEN_LEVEL, |
| 41 | + gl_MAX_TESS_CONTROL_UNIFORM_COMPONENTS, |
| 42 | + gl_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS, |
| 43 | + gl_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS, |
| 44 | + gl_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS, |
| 45 | + gl_MAX_TESS_CONTROL_OUTPUT_COMPONENTS, |
| 46 | + gl_MAX_TESS_PATCH_COMPONENTS, |
| 47 | + gl_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS, |
| 48 | + gl_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS, |
| 49 | + gl_MAX_TESS_CONTROL_UNIFORM_BLOCKS, |
| 50 | + gl_MAX_TESS_EVALUATION_UNIFORM_BLOCKS, |
| 51 | + gl_MAX_TESS_CONTROL_INPUT_COMPONENTS, |
| 52 | + gl_MAX_TESS_EVALUATION_INPUT_COMPONENTS, |
| 53 | + gl_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS, |
| 54 | + gl_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS, |
| 55 | + gl_UNIFORM_BLOCK_REFERENCED_BY_TESS_CONTROL_SHADER, |
| 56 | + gl_UNIFORM_BLOCK_REFERENCED_BY_TESS_EVALUATION_SHADER, |
| 57 | + gl_TESS_EVALUATION_SHADER, |
| 58 | + gl_TESS_CONTROL_SHADER |
| 59 | +) where |
| 60 | + |
| 61 | +import Foreign.C.Types |
| 62 | +import Foreign.Ptr |
| 63 | +import Graphics.Rendering.OpenGL.Raw.Extensions |
| 64 | +import Graphics.Rendering.OpenGL.Raw.Core31.Tokens |
| 65 | +import Graphics.Rendering.OpenGL.Raw.Core31.Types |
| 66 | + |
| 67 | +#include "HsOpenGLRaw.h" |
| 68 | + |
| 69 | +extensionNameString :: String |
| 70 | +extensionNameString = "GL_ARB_ARB_tessellation_shader" |
| 71 | + |
| 72 | +EXTENSION_ENTRY(glPatchParameteri,GLenum -> GLint -> IO ()) |
| 73 | +EXTENSION_ENTRY(glPatchParameterfv,GLenum -> Ptr GLfloat -> IO ()) |
| 74 | + |
| 75 | +gl_PATCHES :: GLenum |
| 76 | +gl_PATCHES = 0x000E |
| 77 | + |
| 78 | +gl_PATCH_VERTICES :: GLenum |
| 79 | +gl_PATCH_VERTICES = 0x8E72 |
| 80 | + |
| 81 | +gl_PATCH_DEFAULT_INNER_LEVEL :: GLenum |
| 82 | +gl_PATCH_DEFAULT_INNER_LEVEL = 0x8E73 |
| 83 | + |
| 84 | +gl_PATCH_DEFAULT_OUTER_LEVEL :: GLenum |
| 85 | +gl_PATCH_DEFAULT_OUTER_LEVEL = 0x8E74 |
| 86 | + |
| 87 | +gl_TESS_CONTROL_OUTPUT_VERTICES :: GLenum |
| 88 | +gl_TESS_CONTROL_OUTPUT_VERTICES = 0x8E75 |
| 89 | + |
| 90 | +gl_TESS_GEN_MODE :: GLenum |
| 91 | +gl_TESS_GEN_MODE = 0x8E76 |
| 92 | + |
| 93 | +gl_TESS_GEN_SPACING :: GLenum |
| 94 | +gl_TESS_GEN_SPACING = 0x8E77 |
| 95 | + |
| 96 | +gl_TESS_GEN_VERTEX_ORDER :: GLenum |
| 97 | +gl_TESS_GEN_VERTEX_ORDER = 0x8E78 |
| 98 | + |
| 99 | +gl_TESS_GEN_POINT_MODE :: GLenum |
| 100 | +gl_TESS_GEN_POINT_MODE = 0x8E79 |
| 101 | + |
| 102 | +gl_ISOLINES :: GLenum |
| 103 | +gl_ISOLINES = 0x8E7A |
| 104 | + |
| 105 | +gl_FRACTIONAL_ODD :: GLenum |
| 106 | +gl_FRACTIONAL_ODD = 0x8E7B |
| 107 | + |
| 108 | +gl_FRACTIONAL_EVEN :: GLenum |
| 109 | +gl_FRACTIONAL_EVEN = 0x8E7C |
| 110 | + |
| 111 | +gl_MAX_PATCH_VERTICES :: GLenum |
| 112 | +gl_MAX_PATCH_VERTICES = 0x8E7D |
| 113 | + |
| 114 | +gl_MAX_TESS_GEN_LEVEL :: GLenum |
| 115 | +gl_MAX_TESS_GEN_LEVEL = 0x8E7E |
| 116 | + |
| 117 | +gl_MAX_TESS_CONTROL_UNIFORM_COMPONENTS :: GLenum |
| 118 | +gl_MAX_TESS_CONTROL_UNIFORM_COMPONENTS = 0x8E7F |
| 119 | + |
| 120 | +gl_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS :: GLenum |
| 121 | +gl_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS = 0x8E80 |
| 122 | + |
| 123 | +gl_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS :: GLenum |
| 124 | +gl_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS = 0x8E81 |
| 125 | + |
| 126 | +gl_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS :: GLenum |
| 127 | +gl_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS = 0x8E82 |
| 128 | + |
| 129 | +gl_MAX_TESS_CONTROL_OUTPUT_COMPONENTS :: GLenum |
| 130 | +gl_MAX_TESS_CONTROL_OUTPUT_COMPONENTS = 0x8E83 |
| 131 | + |
| 132 | +gl_MAX_TESS_PATCH_COMPONENTS :: GLenum |
| 133 | +gl_MAX_TESS_PATCH_COMPONENTS = 0x8E84 |
| 134 | + |
| 135 | +gl_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS :: GLenum |
| 136 | +gl_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS = 0x8E85 |
| 137 | + |
| 138 | +gl_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS :: GLenum |
| 139 | +gl_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS = 0x8E86 |
| 140 | + |
| 141 | +gl_MAX_TESS_CONTROL_UNIFORM_BLOCKS :: GLenum |
| 142 | +gl_MAX_TESS_CONTROL_UNIFORM_BLOCKS = 0x8E89 |
| 143 | + |
| 144 | +gl_MAX_TESS_EVALUATION_UNIFORM_BLOCKS :: GLenum |
| 145 | +gl_MAX_TESS_EVALUATION_UNIFORM_BLOCKS = 0x8E8A |
| 146 | + |
| 147 | +gl_MAX_TESS_CONTROL_INPUT_COMPONENTS :: GLenum |
| 148 | +gl_MAX_TESS_CONTROL_INPUT_COMPONENTS = 0x886C |
| 149 | + |
| 150 | +gl_MAX_TESS_EVALUATION_INPUT_COMPONENTS :: GLenum |
| 151 | +gl_MAX_TESS_EVALUATION_INPUT_COMPONENTS = 0x886D |
| 152 | + |
| 153 | +gl_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS :: GLenum |
| 154 | +gl_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS = 0x8E1E |
| 155 | + |
| 156 | +gl_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS :: GLenum |
| 157 | +gl_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS = 0x8E1F |
| 158 | + |
| 159 | +gl_UNIFORM_BLOCK_REFERENCED_BY_TESS_CONTROL_SHADER :: GLenum |
| 160 | +gl_UNIFORM_BLOCK_REFERENCED_BY_TESS_CONTROL_SHADER = 0x84F0 |
| 161 | + |
| 162 | +gl_UNIFORM_BLOCK_REFERENCED_BY_TESS_EVALUATION_SHADER :: GLenum |
| 163 | +gl_UNIFORM_BLOCK_REFERENCED_BY_TESS_EVALUATION_SHADER = 0x84F1 |
| 164 | + |
| 165 | +gl_TESS_EVALUATION_SHADER :: GLenum |
| 166 | +gl_TESS_EVALUATION_SHADER = 0x8E87 |
| 167 | + |
| 168 | +gl_TESS_CONTROL_SHADER :: GLenum |
| 169 | +gl_TESS_CONTROL_SHADER = 0x8E88 |
0 commit comments