JUCE: opengl

JUCE

Namespaces | Classes | Macros | Typedefs | Enumerations | Functions
opengl
juce_opengl

## Namespaces
namespace | gl

## Classes
class | OpenGLContext
| Creates an OpenGL context, which can be attached to a component. More...
class | OpenGLFrameBuffer
| Creates an openGL frame buffer. More...
struct | OpenGLGraphicsContextCustomShader
| Used to create custom shaders for use with an openGL 2D rendering context. More...
class | OpenGLHelpers
| A set of miscellaneous openGL helper functions. More...
class | OpenGLImageType
| A type of ImagePixelData that stores its image data in an OpenGL framebuffer, allowing a JUCE Image object to wrap a framebuffer. More...
class | OpenGLPixelFormat
| Represents the various properties of an OpenGL pixel format. More...
class | OpenGLRenderer
| A base class that should be implemented by classes which want to render openGL on a background thread. More...
class | OpenGLShaderProgram
| Manages an OpenGL shader program. More...
struct | OpenGLShaderProgram::Uniform
| Represents an openGL uniform value. More...
struct | OpenGLShaderProgram::Attribute
| Represents an openGL vertex attribute value. More...
class | OpenGLTexture
| Creates an openGL texture from an Image. More...

## Macros
#define | __gl_h_
#define | __gl2_h_
#define | __GL_H__
#define | _GL_H
#define | __gl_gl_h_
#define | __gltypes_h_
#define | __REGAL_H__
#define | __X_GL_H
#define | __glext_h_
#define | __gl_glext_h_
#define | __gl_ATI_h_
#define | ES1_GL_H_GUARD
#define | __gl_es20_h_
#define | __gl_es30_h_
#define | KHRONOS_APICALL
#define | KHRONOS_APIENTRY
#define | KHRONOS_APIATTRIBUTES
#define | KHRONOS_SUPPORT_INT64 1
#define | KHRONOS_SUPPORT_FLOAT 1
#define | KHRONOS_MAX_ENUM 0x7FFFFFFF

## Typedefs
typedef unsigned int | GLenum
typedef unsigned char | GLboolean
typedef unsigned int | GLbitfield
typedef void | GLvoid
typedef khronos_int8_t | GLbyte
typedef khronos_uint8_t | GLubyte
typedef khronos_int16_t | GLshort
typedef khronos_uint16_t | GLushort
typedef int | GLint
typedef unsigned int | GLuint
typedef khronos_int32_t | GLclampx
typedef int | GLsizei
typedef khronos_float_t | GLfloat
typedef khronos_float_t | GLclampf
typedef double | GLdouble
typedef double | GLclampd
typedef void * | GLeglClientBufferEXT
typedef void * | GLeglImageOES
typedef char | GLchar
typedef char | GLcharARB
typedef unsigned int | GLhandleARB
typedef khronos_uint16_t | GLhalf
typedef khronos_uint16_t | GLhalfARB
typedef khronos_int32_t | GLfixed
typedef khronos_intptr_t | GLintptr
typedef khronos_intptr_t | GLintptrARB
typedef khronos_ssize_t | GLsizeiptr
typedef khronos_ssize_t | GLsizeiptrARB
typedef khronos_int64_t | GLint64
typedef khronos_int64_t | GLint64EXT
typedef khronos_uint64_t | GLuint64
typedef khronos_uint64_t | GLuint64EXT
typedef struct __GLsync * | GLsync
typedef void(* | GLDEBUGPROC) (GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar *message, const void *userParam)
typedef void(* | GLDEBUGPROCARB) (GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar *message, const void *userParam)
typedef void(* | GLDEBUGPROCKHR) (GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar *message, const void *userParam)
typedef void(* | GLDEBUGPROCAMD) (GLuint id, GLenum category, GLenum severity, GLsizei length, const GLchar *message, void *userParam)
typedef unsigned short | GLhalfNV
typedef GLintptr | GLvdpauSurfaceNV
typedef void(* | GLVULKANPROCNV) (void)
typedef unsigned int | GLenum
typedef unsigned char | GLboolean
typedef unsigned int | GLbitfield
typedef void | GLvoid
typedef khronos_int8_t | GLbyte
typedef khronos_uint8_t | GLubyte
typedef khronos_int16_t | GLshort
typedef khronos_uint16_t | GLushort
typedef int | GLint
typedef unsigned int | GLuint
typedef khronos_int32_t | GLclampx
typedef int | GLsizei
typedef khronos_float_t | GLfloat
typedef khronos_float_t | GLclampf
typedef double | GLdouble
typedef double | GLclampd
typedef void * | GLeglClientBufferEXT
typedef void * | GLeglImageOES
typedef char | GLchar
typedef char | GLcharARB
typedef unsigned int | GLhandleARB
typedef khronos_uint16_t | GLhalf
typedef khronos_uint16_t | GLhalfARB
typedef khronos_int32_t | GLfixed
typedef khronos_intptr_t | GLintptr
typedef khronos_intptr_t | GLintptrARB
typedef khronos_ssize_t | GLsizeiptr
typedef khronos_ssize_t | GLsizeiptrARB
typedef khronos_int64_t | GLint64
typedef khronos_int64_t | GLint64EXT
typedef khronos_uint64_t | GLuint64
typedef khronos_uint64_t | GLuint64EXT
typedef struct __GLsync * | GLsync
typedef void(* | GLDEBUGPROC) (GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar *message, const void *userParam)
typedef void(* | GLDEBUGPROCARB) (GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar *message, const void *userParam)
typedef void(* | GLDEBUGPROCKHR) (GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar *message, const void *userParam)
typedef void(* | GLDEBUGPROCAMD) (GLuint id, GLenum category, GLenum severity, GLsizei length, const GLchar *message, void *userParam)
typedef unsigned short | GLhalfNV
typedef GLintptr | GLvdpauSurfaceNV
typedef void(* | GLVULKANPROCNV) (void)
typedef int32_t | khronos_int32_t
typedef uint32_t | khronos_uint32_t
typedef int64_t | khronos_int64_t
typedef uint64_t | khronos_uint64_t
typedef signed char | khronos_int8_t
typedef unsigned char | khronos_uint8_t
typedef signed short int | khronos_int16_t
typedef unsigned short int | khronos_uint16_t
typedef signed long int | khronos_intptr_t
typedef unsigned long int | khronos_uintptr_t
typedef signed long int | khronos_ssize_t
typedef unsigned long int | khronos_usize_t
typedef float | khronos_float_t
typedef khronos_uint64_t | khronos_utime_nanoseconds_t
typedef khronos_int64_t | khronos_stime_nanoseconds_t

## Enumerations
enum | khronos_boolean_enum_t { KHRONOS_FALSE = 0 , KHRONOS_TRUE = 1 , KHRONOS_BOOLEAN_ENUM_FORCE_SIZE = KHRONOS_MAX_ENUM }

## Functions
std::unique_ptr< LowLevelGraphicsContext > | createOpenGLGraphicsContext (OpenGLContext &, int width, int height)
| Creates a graphics context object that will render into the given OpenGL target. More...
std::unique_ptr< LowLevelGraphicsContext > | createOpenGLGraphicsContext (OpenGLContext &, OpenGLFrameBuffer &)
| Creates a graphics context object that will render into the given OpenGL framebuffer. More...
std::unique_ptr< LowLevelGraphicsContext > | createOpenGLGraphicsContext (OpenGLContext &, unsigned int frameBufferID, int width, int height)
| Creates a graphics context object that will render into the given OpenGL framebuffer, with the given size. More...

## Detailed Description

## Macro Definition Documentation

## ◆ __gl_h_

#define __gl_h_

## ◆ __gl2_h_

#define __gl2_h_

## ◆ __GL_H__

#define __GL_H__

## ◆ _GL_H

#define _GL_H

## ◆ __gl_gl_h_

#define __gl_gl_h_

## ◆ __gltypes_h_

#define __gltypes_h_

## ◆ __REGAL_H__

#define __REGAL_H__

## ◆ __X_GL_H

#define __X_GL_H

## ◆ __glext_h_

#define __glext_h_

## ◆ __GLEXT_H_

#define __GLEXT_H_

## ◆ __gl_glext_h_

#define __gl_glext_h_

## ◆ __gl_ATI_h_

#define __gl_ATI_h_

## ◆ ES1_GL_H_GUARD

#define ES1_GL_H_GUARD

## ◆ __gl_es20_h_

#define __gl_es20_h_

## ◆ __gl_es30_h_

#define __gl_es30_h_

## ◆ KHRONOS_APICALL

#define KHRONOS_APICALL

## ◆ KHRONOS_APIENTRY

#define KHRONOS_APIENTRY

## ◆ KHRONOS_APIATTRIBUTES

#define KHRONOS_APIATTRIBUTES

## ◆ KHRONOS_SUPPORT_INT64

#define KHRONOS_SUPPORT_INT64 1

## ◆ KHRONOS_SUPPORT_FLOAT

#define KHRONOS_SUPPORT_FLOAT 1

## ◆ KHRONOS_MAX_ENUM

#define KHRONOS_MAX_ENUM 0x7FFFFFFF

## Typedef Documentation

## ◆ GLenum [1/2]

typedef unsigned int GLenum

## ◆ GLboolean [1/2]

typedef unsigned char GLboolean

## ◆ GLbitfield [1/2]

typedef unsigned int GLbitfield

## ◆ GLvoid [1/2]

typedef void GLvoid

## ◆ GLbyte [1/2]

typedef khronos_int8_t GLbyte

## ◆ GLubyte [1/2]

typedef khronos_uint8_t GLubyte

## ◆ GLshort [1/2]

typedef khronos_int16_t GLshort

## ◆ GLushort [1/2]

typedef khronos_uint16_t GLushort

## ◆ GLint [1/2]

typedef int GLint

## ◆ GLuint [1/2]

typedef unsigned int GLuint

## ◆ GLclampx [1/2]

typedef khronos_int32_t GLclampx

## ◆ GLsizei [1/2]

typedef int GLsizei

## ◆ GLfloat [1/2]

typedef khronos_float_t GLfloat

## ◆ GLclampf [1/2]

typedef khronos_float_t GLclampf

## ◆ GLdouble [1/2]

typedef double GLdouble

## ◆ GLclampd [1/2]

typedef double GLclampd

## ◆ GLeglClientBufferEXT [1/2]

typedef void* GLeglClientBufferEXT

## ◆ GLeglImageOES [1/2]

typedef void* GLeglImageOES

## ◆ GLchar [1/2]

typedef char GLchar

## ◆ GLcharARB [1/2]

typedef char GLcharARB

## ◆ GLhandleARB [1/2]

typedef unsigned int GLhandleARB

## ◆ GLhalf [1/2]

typedef khronos_uint16_t GLhalf

## ◆ GLhalfARB [1/2]

typedef khronos_uint16_t GLhalfARB

## ◆ GLfixed [1/2]

typedef khronos_int32_t GLfixed

## ◆ GLintptr [1/2]

typedef khronos_intptr_t GLintptr

## ◆ GLintptrARB [1/2]

typedef khronos_intptr_t GLintptrARB

## ◆ GLsizeiptr [1/2]

typedef khronos_ssize_t GLsizeiptr

## ◆ GLsizeiptrARB [1/2]

typedef khronos_ssize_t GLsizeiptrARB

## ◆ GLint64 [1/2]

typedef khronos_int64_t GLint64

## ◆ GLint64EXT [1/2]

typedef khronos_int64_t GLint64EXT

## ◆ GLuint64 [1/2]

typedef khronos_uint64_t GLuint64

## ◆ GLuint64EXT [1/2]

typedef khronos_uint64_t GLuint64EXT

## ◆ GLsync [1/2]

typedef struct __GLsync* GLsync

## ◆ GLDEBUGPROC [1/2]

typedef void(* GLDEBUGPROC) (GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar *message, const void *userParam)

## ◆ GLDEBUGPROCARB [1/2]

typedef void(* GLDEBUGPROCARB) (GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar *message, const void *userParam)

## ◆ GLDEBUGPROCKHR [1/2]

typedef void(* GLDEBUGPROCKHR) (GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar *message, const void *userParam)

## ◆ GLDEBUGPROCAMD [1/2]

typedef void(* GLDEBUGPROCAMD) (GLuint id, GLenum category, GLenum severity, GLsizei length, const GLchar *message, void *userParam)

## ◆ GLhalfNV [1/2]

typedef unsigned short GLhalfNV

## ◆ GLvdpauSurfaceNV [1/2]

typedef GLintptr GLvdpauSurfaceNV

## ◆ GLVULKANPROCNV [1/2]

typedef void(* GLVULKANPROCNV) (void)

## ◆ GLenum [2/2]

typedef unsigned int GLenum

## ◆ GLboolean [2/2]

typedef unsigned char GLboolean

## ◆ GLbitfield [2/2]

typedef unsigned int GLbitfield

## ◆ GLvoid [2/2]

typedef void GLvoid

## ◆ GLbyte [2/2]

typedef khronos_int8_t GLbyte

## ◆ GLubyte [2/2]

typedef khronos_uint8_t GLubyte

## ◆ GLshort [2/2]

typedef khronos_int16_t GLshort

## ◆ GLushort [2/2]

typedef khronos_uint16_t GLushort

## ◆ GLint [2/2]

typedef int GLint

## ◆ GLuint [2/2]

typedef unsigned int GLuint

## ◆ GLclampx [2/2]

typedef khronos_int32_t GLclampx

## ◆ GLsizei [2/2]

typedef int GLsizei

## ◆ GLfloat [2/2]

typedef khronos_float_t GLfloat

## ◆ GLclampf [2/2]

typedef khronos_float_t GLclampf

## ◆ GLdouble [2/2]

typedef double GLdouble

## ◆ GLclampd [2/2]

typedef double GLclampd

## ◆ GLeglClientBufferEXT [2/2]

typedef void* GLeglClientBufferEXT

## ◆ GLeglImageOES [2/2]

typedef void* GLeglImageOES

## ◆ GLchar [2/2]

typedef char GLchar

## ◆ GLcharARB [2/2]

typedef char GLcharARB

## ◆ GLhandleARB [2/2]

typedef unsigned int GLhandleARB

## ◆ GLhalf [2/2]

typedef khronos_uint16_t GLhalf

## ◆ GLhalfARB [2/2]

typedef khronos_uint16_t GLhalfARB

## ◆ GLfixed [2/2]

typedef khronos_int32_t GLfixed

## ◆ GLintptr [2/2]

typedef khronos_intptr_t GLintptr

## ◆ GLintptrARB [2/2]

typedef khronos_intptr_t GLintptrARB

## ◆ GLsizeiptr [2/2]

typedef khronos_ssize_t GLsizeiptr

## ◆ GLsizeiptrARB [2/2]

typedef khronos_ssize_t GLsizeiptrARB

## ◆ GLint64 [2/2]

typedef khronos_int64_t GLint64

## ◆ GLint64EXT [2/2]

typedef khronos_int64_t GLint64EXT

## ◆ GLuint64 [2/2]

typedef khronos_uint64_t GLuint64

## ◆ GLuint64EXT [2/2]

typedef khronos_uint64_t GLuint64EXT

## ◆ GLsync [2/2]

typedef struct __GLsync* GLsync

## ◆ GLDEBUGPROC [2/2]

typedef void(* GLDEBUGPROC) (GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar *message, const void *userParam)

## ◆ GLDEBUGPROCARB [2/2]

typedef void(* GLDEBUGPROCARB) (GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar *message, const void *userParam)

## ◆ GLDEBUGPROCKHR [2/2]

typedef void(* GLDEBUGPROCKHR) (GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar *message, const void *userParam)

## ◆ GLDEBUGPROCAMD [2/2]

typedef void(* GLDEBUGPROCAMD) (GLuint id, GLenum category, GLenum severity, GLsizei length, const GLchar *message, void *userParam)

## ◆ GLhalfNV [2/2]

typedef unsigned short GLhalfNV

## ◆ GLvdpauSurfaceNV [2/2]

typedef GLintptr GLvdpauSurfaceNV

## ◆ GLVULKANPROCNV [2/2]

typedef void(* GLVULKANPROCNV) (void)

## ◆ khronos_int32_t

typedef int32_t khronos_int32_t

## ◆ khronos_uint32_t

typedef uint32_t khronos_uint32_t

## ◆ khronos_int64_t

typedef int64_t khronos_int64_t

## ◆ khronos_uint64_t

typedef uint64_t khronos_uint64_t

## ◆ khronos_int8_t

typedef signed char khronos_int8_t

## ◆ khronos_uint8_t

typedef unsigned char khronos_uint8_t

## ◆ khronos_int16_t

typedef signed short int khronos_int16_t

## ◆ khronos_uint16_t

typedef unsigned short int khronos_uint16_t

## ◆ khronos_intptr_t

typedef signed long int khronos_intptr_t

## ◆ khronos_uintptr_t

typedef unsigned long int khronos_uintptr_t

## ◆ khronos_ssize_t

typedef signed long int khronos_ssize_t

## ◆ khronos_usize_t

typedef unsigned long int khronos_usize_t

## ◆ khronos_float_t

typedef float khronos_float_t

## ◆ khronos_utime_nanoseconds_t

typedef khronos_uint64_t khronos_utime_nanoseconds_t

## ◆ khronos_stime_nanoseconds_t

typedef khronos_int64_t khronos_stime_nanoseconds_t

## Enumeration Type Documentation

## ◆ khronos_boolean_enum_t

enum khronos_boolean_enum_t

Enumerator
KHRONOS_FALSE |
KHRONOS_TRUE |
KHRONOS_BOOLEAN_ENUM_FORCE_SIZE |

## Function Documentation

## ◆ createOpenGLGraphicsContext() [1/3]

std::unique_ptr< LowLevelGraphicsContext > createOpenGLGraphicsContext | ( | OpenGLContext & | ,
|  | int | width,
|  | int | height
| ) |  |

Creates a graphics context object that will render into the given OpenGL target.

## ◆ createOpenGLGraphicsContext() [2/3]

std::unique_ptr< LowLevelGraphicsContext > createOpenGLGraphicsContext | ( | OpenGLContext & | ,
|  | OpenGLFrameBuffer & |
| ) |  |

Creates a graphics context object that will render into the given OpenGL framebuffer.

## ◆ createOpenGLGraphicsContext() [3/3]

std::unique_ptr< LowLevelGraphicsContext > createOpenGLGraphicsContext | ( | OpenGLContext & | ,
|  | unsigned int | frameBufferID,
|  | int | width,
|  | int | height
| ) |  |

Creates a graphics context object that will render into the given OpenGL framebuffer, with the given size.