Beatmup
Beatmup::GL Namespace Reference

Low-level API providing access to GPU. More...

Classes

class  GLException
 GPU exception. More...
 
class  Unsupported
 Exception communicating the use of an unsupported feature on GPU. More...
 
class  ComputeProgram
 GLSL compute program. More...
 
class  Float16
 16 bit floating point representation. More...
 
class  Vector
 Real-valued vector usable by GPU. More...
 
class  LinearMapping
 Evaluates expression A*x + b = y for a matrix A and vectors x and b using GPU. More...
 
class  Shader
 GLSL shader base class. More...
 
class  VertexShader
 GLSL vertex shader. More...
 
class  FragmentShader
 GLSL fragment shader. More...
 
class  AtomicCounter
 
class  AbstractProgram
 Basic GLSL program. More...
 
class  Program
 Regular OpenGL program. More...
 
class  RenderingProgram
 GLSL program to render images Makes use of default vertex attributes to pass the texture coordinates and the image position to the GPU. More...
 
class  ProgramBank
 Stores linked GLSL programs and their associated fragment shader codes. More...
 
class  RecycleBin
 Stores references to GPU resources that will not be used anymore and needed to be recycled in a thread having access to the GPU. More...
 
class  RenderingPrograms
 Handles a collection of common rendering programs of predefined types and shared operations among these programs. More...
 
class  StorageBuffer
 
class  StorageBufferFetcher
 
class  TextureHandler
 
class  VariablesBundle
 

Typedefs

typedef unsigned int handle_t
 A reference to a GPU resource. More...
 

Enumerations

enum  Extensions { NONE = 0 , BEATMUP_DIALECT = 1 << 0 , EXTERNAL_TEXTURE = 1 << 1 }
 Supported OpenGL estensions. More...
 

Functions

Extensions operator-= (Extensions &set, Extensions entry)
 
Extensions operator+ (Extensions lhs, Extensions rhs)
 

Variables

const GLuint BITMAP_PIXELFORMATS []
 Mapping of bitmap pixel formats to GL pixel formats. More...
 
const GLuint TEXTUREHANDLER_INTERNALFORMATS []
 
const GLuint BITMAP_INTERNALFORMATS []
 
const GLuint BITMAP_PIXELTYPES []
 Mapping of bitmap pixel formats to GL pixel types. More...
 

Detailed Description

Low-level API providing access to GPU.

Used internally.

Typedef Documentation

◆ handle_t

typedef unsigned int Beatmup::GL::handle_t

A reference to a GPU resource.

Definition at line 61 of file basic_types.h.

Enumeration Type Documentation

◆ Extensions

Supported OpenGL estensions.

Used to communicate to a shader/program specific extensions used in the GLSL code. This defines Beatmup GLSL dialect interpretation.

Enumerator
NONE 

no extension

BEATMUP_DIALECT 

pseudo-extension enabling Beatmup GLSL dialect

EXTERNAL_TEXTURE 

GL_OES_EGL_image_external_essl3 if available or GL_OES_EGL_image_external.

Definition at line 63 of file program.h.

63  {
64  NONE = 0, //!< no extension
65  BEATMUP_DIALECT = 1 << 0, //!< pseudo-extension enabling Beatmup GLSL dialect
66  EXTERNAL_TEXTURE = 1 << 1 //!< GL_OES_EGL_image_external_essl3 if available or GL_OES_EGL_image_external
67  };
@ NONE
no extension
Definition: program.h:64
@ BEATMUP_DIALECT
pseudo-extension enabling Beatmup GLSL dialect
Definition: program.h:65
@ EXTERNAL_TEXTURE
GL_OES_EGL_image_external_essl3 if available or GL_OES_EGL_image_external.
Definition: program.h:66

Function Documentation

◆ operator-=()

Extensions Beatmup::GL::operator-= ( Extensions set,
Extensions  entry 
)

Definition at line 30 of file program.cpp.

30  {
31  set = static_cast<Extensions>(set & ~entry);
32  return set;
33 }
Extensions
Supported OpenGL estensions.
Definition: program.h:63

◆ operator+()

Extensions Beatmup::GL::operator+ ( Extensions  lhs,
Extensions  rhs 
)

Definition at line 35 of file program.cpp.

35  {
36  return static_cast<Extensions>(lhs | rhs);
37 }

Variable Documentation

◆ BITMAP_PIXELFORMATS

const GLuint Beatmup::GL::BITMAP_PIXELFORMATS[]

Mapping of bitmap pixel formats to GL pixel formats.

Definition at line 80 of file bgl.h.

◆ TEXTUREHANDLER_INTERNALFORMATS

const GLuint Beatmup::GL::TEXTUREHANDLER_INTERNALFORMATS[]
Initial value:
= {
GL_R8,
GL_RGB8,
GL_RGBA8,
GL_R32F,
GL_RGB32F,
GL_RGBA32F,
0
}

Definition at line 128 of file bgl.h.

◆ BITMAP_INTERNALFORMATS

const GLuint Beatmup::GL::BITMAP_INTERNALFORMATS[]

◆ BITMAP_PIXELTYPES

const GLuint Beatmup::GL::BITMAP_PIXELTYPES[]
Initial value:
= {
GL_UNSIGNED_BYTE,
GL_UNSIGNED_BYTE,
GL_UNSIGNED_BYTE,
GL_FLOAT,
GL_FLOAT,
GL_FLOAT
}

Mapping of bitmap pixel formats to GL pixel types.

Definition at line 160 of file bgl.h.