-- This file was automatically generated.
{-# LANGUAGE CPP, ScopedTypeVariables, PatternSynonyms #-}
module Graphics.GL.Ext.EXT.GeometryShader (
  -- * Extension Support
    gl_EXT_geometry_shader

  -- * GL_EXT_geometry_shader
  , glFramebufferTextureEXT
  , pattern GL_FIRST_VERTEX_CONVENTION_EXT
  , pattern GL_FRAMEBUFFER_ATTACHMENT_LAYERED_EXT
  , pattern GL_FRAMEBUFFER_DEFAULT_LAYERS_EXT
  , pattern GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_EXT
  , pattern GL_GEOMETRY_LINKED_INPUT_TYPE_EXT
  , pattern GL_GEOMETRY_LINKED_OUTPUT_TYPE_EXT
  , pattern GL_GEOMETRY_LINKED_VERTICES_OUT_EXT
  , pattern GL_GEOMETRY_SHADER_BIT_EXT
  , pattern GL_GEOMETRY_SHADER_EXT
  , pattern GL_GEOMETRY_SHADER_INVOCATIONS_EXT
  , pattern GL_LAST_VERTEX_CONVENTION_EXT
  , pattern GL_LAYER_PROVOKING_VERTEX_EXT
  , pattern GL_LINES_ADJACENCY_EXT
  , pattern GL_LINE_STRIP_ADJACENCY_EXT
  , pattern GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS_EXT
  , pattern GL_MAX_FRAMEBUFFER_LAYERS_EXT
  , pattern GL_MAX_GEOMETRY_ATOMIC_COUNTERS_EXT
  , pattern GL_MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS_EXT
  , pattern GL_MAX_GEOMETRY_IMAGE_UNIFORMS_EXT
  , pattern GL_MAX_GEOMETRY_INPUT_COMPONENTS_EXT
  , pattern GL_MAX_GEOMETRY_OUTPUT_COMPONENTS_EXT
  , pattern GL_MAX_GEOMETRY_OUTPUT_VERTICES_EXT
  , pattern GL_MAX_GEOMETRY_SHADER_INVOCATIONS_EXT
  , pattern GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS_EXT
  , pattern GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_EXT
  , pattern GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_EXT
  , pattern GL_MAX_GEOMETRY_UNIFORM_BLOCKS_EXT
  , pattern GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_EXT
  , pattern GL_PRIMITIVES_GENERATED_EXT
  , pattern GL_REFERENCED_BY_GEOMETRY_SHADER_EXT
  , pattern GL_TRIANGLES_ADJACENCY_EXT
  , pattern GL_TRIANGLE_STRIP_ADJACENCY_EXT
  , pattern GL_UNDEFINED_VERTEX_EXT
) where

import Data.Set
import Graphics.GL.Internal.Proc
import Graphics.GL.Internal.Shared

-- | Checks that the <https://www.khronos.org/registry/gles/extensions/EXT/EXT_geometry_shader.txt GL_EXT_geometry_shader> extension is available.

gl_EXT_geometry_shader :: Bool
gl_EXT_geometry_shader = member "GL_EXT_geometry_shader" extensions
{-# NOINLINE gl_EXT_geometry_shader #-}

pattern GL_FRAMEBUFFER_DEFAULT_LAYERS_EXT = 0x9312

pattern GL_GEOMETRY_LINKED_INPUT_TYPE_EXT = 0x8917

pattern GL_GEOMETRY_LINKED_OUTPUT_TYPE_EXT = 0x8918

pattern GL_GEOMETRY_LINKED_VERTICES_OUT_EXT = 0x8916

pattern GL_GEOMETRY_SHADER_BIT_EXT = 0x00000004

pattern GL_GEOMETRY_SHADER_INVOCATIONS_EXT = 0x887F

pattern GL_LAYER_PROVOKING_VERTEX_EXT = 0x825E

pattern GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS_EXT = 0x8A32

pattern GL_MAX_FRAMEBUFFER_LAYERS_EXT = 0x9317

pattern GL_MAX_GEOMETRY_ATOMIC_COUNTERS_EXT = 0x92D5

pattern GL_MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS_EXT = 0x92CF

pattern GL_MAX_GEOMETRY_IMAGE_UNIFORMS_EXT = 0x90CD

pattern GL_MAX_GEOMETRY_INPUT_COMPONENTS_EXT = 0x9123

pattern GL_MAX_GEOMETRY_OUTPUT_COMPONENTS_EXT = 0x9124

pattern GL_MAX_GEOMETRY_SHADER_INVOCATIONS_EXT = 0x8E5A

pattern GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS_EXT = 0x90D7

pattern GL_MAX_GEOMETRY_UNIFORM_BLOCKS_EXT = 0x8A2C

pattern GL_REFERENCED_BY_GEOMETRY_SHADER_EXT = 0x9309

pattern GL_UNDEFINED_VERTEX_EXT = 0x8260