Blender V4.3
bgl.cc File Reference
#include <Python.h>
#include "BLI_string.h"
#include "BLI_utildefines.h"
#include "MEM_guardedalloc.h"
#include "GPU_context.hh"
#include "GPU_state.hh"
#include "py_capi_utils.hh"
#include "BKE_global.hh"
#include <epoxy/gl.h>
#include "bgl.h"
#include "CLG_log.h"

Go to the source code of this file.

Classes

struct  BufferOrOffset
 

Macros

Local utility defines for wrapping OpenGL
#define void_str   ""
 
#define void_var(num)
 
#define void_ref(num)   &bgl_var##num
 
#define void_def(num)   char bgl_var##num
 
#define GLbooleanP_str   "O!"
 
#define GLbooleanP_var(number)   (bgl_buffer##number)->buf.asvoid
 
#define GLbooleanP_ref(number)   &BGL_bufferType, &bgl_buffer##number
 
#define GLbooleanP_def(number)   Buffer *bgl_buffer##number
 
#define GLbyteP_str   "O!"
 
#define GLbyteP_var(number)   (bgl_buffer##number)->buf.asvoid
 
#define GLbyteP_ref(number)   &BGL_bufferType, &bgl_buffer##number
 
#define GLbyteP_def(number)   Buffer *bgl_buffer##number
 
#define GLubyteP_str   "O!"
 
#define GLubyteP_var(number)   (bgl_buffer##number)->buf.asvoid
 
#define GLubyteP_ref(number)   &BGL_bufferType, &bgl_buffer##number
 
#define GLubyteP_def(number)   Buffer *bgl_buffer##number
 
#define GLintP_str   "O!"
 
#define GLintP_var(number)   (bgl_buffer##number)->buf.asvoid
 
#define GLintP_ref(number)   &BGL_bufferType, &bgl_buffer##number
 
#define GLintP_def(number)   Buffer *bgl_buffer##number
 
#define GLint64P_str   "O!"
 
#define GLint64P_var(number)   (bgl_buffer##number)->buf.asvoid
 
#define GLint64P_ref(number)   &BGL_bufferType, &bgl_buffer##number
 
#define GLint64P_def(number)   Buffer *bgl_buffer##number
 
#define GLenumP_str   "O!"
 
#define GLenumP_var(number)   (bgl_buffer##number)->buf.asvoid
 
#define GLenumP_ref(number)   &BGL_bufferType, &bgl_buffer##number
 
#define GLenumP_def(number)   Buffer *bgl_buffer##number
 
#define GLuintP_str   "O!"
 
#define GLuintP_var(number)   (bgl_buffer##number)->buf.asvoid
 
#define GLuintP_ref(number)   &BGL_bufferType, &bgl_buffer##number
 
#define GLuintP_def(number)   Buffer *bgl_buffer##number
 
#define GLshortP_str   "O!"
 
#define GLshortP_var(number)   (bgl_buffer##number)->buf.asvoid
 
#define GLshortP_ref(number)   &BGL_bufferType, &bgl_buffer##number
 
#define GLshortP_def(number)   Buffer *bgl_buffer##number
 
#define GLushortP_str   "O!"
 
#define GLushortP_var(number)   (bgl_buffer##number)->buf.asvoid
 
#define GLushortP_ref(number)   &BGL_bufferType, &bgl_buffer##number
 
#define GLushortP_def(number)   Buffer *bgl_buffer##number
 
#define GLfloatP_str   "O!"
 
#define GLfloatP_var(number)   (bgl_buffer##number)->buf.asvoid
 
#define GLfloatP_ref(number)   &BGL_bufferType, &bgl_buffer##number
 
#define GLfloatP_def(number)   Buffer *bgl_buffer##number
 
#define GLdoubleP_str   "O!"
 
#define GLdoubleP_var(number)   (bgl_buffer##number)->buf.asvoid
 
#define GLdoubleP_ref(number)   &BGL_bufferType, &bgl_buffer##number
 
#define GLdoubleP_def(number)   Buffer *bgl_buffer##number
 
#define GLvoidP_str   "O&"
 
#define GLvoidP_var(number)
 
#define GLvoidP_ref(number)   BGL_BufferOrOffsetConverter, &bgl_buffer##number
 
#define GLvoidP_def(number)   BufferOrOffset bgl_buffer##number
 
#define GLsizeiP_str   "O!"
 
#define GLsizeiP_var(number)   (bgl_buffer##number)->buf.asvoid
 
#define GLsizeiP_ref(number)   &BGL_bufferType, &bgl_buffer##number
 
#define GLsizeiP_def(number)   Buffer *bgl_buffer##number
 
#define GLcharP_str   "O!"
 
#define GLcharP_var(number)   (bgl_buffer##number)->buf.asvoid
 
#define GLcharP_ref(number)   &BGL_bufferType, &bgl_buffer##number
 
#define GLcharP_def(number)   Buffer *bgl_buffer##number
 
#define GLenum_str   "i"
 
#define GLenum_var(num)   bgl_var##num
 
#define GLenum_ref(num)   &bgl_var##num
 
#define GLenum_def(num)   /*unsigned*/ int GLenum_var(num)
 
#define GLboolean_str   "b"
 
#define GLboolean_var(num)   bgl_var##num
 
#define GLboolean_ref(num)   &bgl_var##num
 
#define GLboolean_def(num)   /*unsigned*/ char GLboolean_var(num)
 
#define GLbitfield_str   "i"
 
#define GLbitfield_var(num)   bgl_var##num
 
#define GLbitfield_ref(num)   &bgl_var##num
 
#define GLbitfield_def(num)   /*unsigned*/ int GLbitfield_var(num)
 
#define GLshort_str   "h"
 
#define GLshort_var(num)   bgl_var##num
 
#define GLshort_ref(num)   &bgl_var##num
 
#define GLshort_def(num)   short GLshort_var(num)
 
#define GLint_str   "i"
 
#define GLint_var(num)   bgl_var##num
 
#define GLint_ref(num)   &bgl_var##num
 
#define GLint_def(num)   int GLint_var(num)
 
#define GLsizei_str   "n"
 
#define GLsizei_var(num)   bgl_var##num
 
#define GLsizei_ref(num)   &bgl_var##num
 
#define GLsizei_def(num)   size_t GLsizei_var(num)
 
#define GLsizeiptr_str   "n"
 
#define GLsizeiptr_var(num)   bgl_var##num
 
#define GLsizeiptr_ref(num)   &bgl_var##num
 
#define GLsizeiptr_def(num)   size_t GLsizeiptr_var(num)
 
#define GLintptr_str   "n"
 
#define GLintptr_var(num)   bgl_var##num
 
#define GLintptr_ref(num)   &bgl_var##num
 
#define GLintptr_def(num)   size_t GLintptr_var(num)
 
#define GLubyte_str   "B"
 
#define GLubyte_var(num)   bgl_var##num
 
#define GLubyte_ref(num)   &bgl_var##num
 
#define GLubyte_def(num)   /*unsigned*/ char GLubyte_var(num)
 
#define GLuint_str   "I"
 
#define GLuint_var(num)   bgl_var##num
 
#define GLuint_ref(num)   &bgl_var##num
 
#define GLuint_def(num)   /*unsigned*/ int GLuint_var(num)
 
#define GLfloat_str   "f"
 
#define GLfloat_var(num)   bgl_var##num
 
#define GLfloat_ref(num)   &bgl_var##num
 
#define GLfloat_def(num)   float GLfloat_var(num)
 
#define GLstring_str   "s"
 
#define GLstring_var(number)   bgl_var##number
 
#define GLstring_ref(number)   &bgl_var##number
 
#define GLstring_def(number)   char *GLstring_var(number)
 
#define GLdouble_str   "d"
 
#define GLdouble_var(num)   bgl_var##num
 
#define GLdouble_ref(num)   &bgl_var##num
 
#define GLdouble_def(num)   double GLdouble_var(num)
 
#define _arg_def1(a1)   a1##_def(1)
 
#define _arg_def2(a1, a2)
 
#define _arg_def3(a1, a2, a3)
 
#define _arg_def4(a1, a2, a3, a4)
 
#define _arg_def5(a1, a2, a3, a4, a5)
 
#define _arg_def6(a1, a2, a3, a4, a5, a6)
 
#define _arg_def7(a1, a2, a3, a4, a5, a6, a7)
 
#define _arg_def8(a1, a2, a3, a4, a5, a6, a7, a8)
 
#define _arg_def9(a1, a2, a3, a4, a5, a6, a7, a8, a9)
 
#define _arg_def10(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10)
 
#define _arg_def11(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11)
 
#define arg_def(...)   VA_NARGS_CALL_OVERLOAD(_arg_def, __VA_ARGS__)
 
#define _arg_var1(a1)   a1##_var(1)
 
#define _arg_var2(a1, a2)   _arg_var1(a1), a2##_var(2)
 
#define _arg_var3(a1, a2, a3)   _arg_var2(a1, a2), a3##_var(3)
 
#define _arg_var4(a1, a2, a3, a4)   _arg_var3(a1, a2, a3), a4##_var(4)
 
#define _arg_var5(a1, a2, a3, a4, a5)   _arg_var4(a1, a2, a3, a4), a5##_var(5)
 
#define _arg_var6(a1, a2, a3, a4, a5, a6)   _arg_var5(a1, a2, a3, a4, a5), a6##_var(6)
 
#define _arg_var7(a1, a2, a3, a4, a5, a6, a7)   _arg_var6(a1, a2, a3, a4, a5, a6), a7##_var(7)
 
#define _arg_var8(a1, a2, a3, a4, a5, a6, a7, a8)    _arg_var7(a1, a2, a3, a4, a5, a6, a7), a8##_var(8)
 
#define _arg_var9(a1, a2, a3, a4, a5, a6, a7, a8, a9)    _arg_var8(a1, a2, a3, a4, a5, a6, a7, a8), a9##_var(9)
 
#define _arg_var10(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10)    _arg_var9(a1, a2, a3, a4, a5, a6, a7, a8, a9), a10##_var(10)
 
#define _arg_var11(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11)    _arg_var10(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10), a11##_var(11)
 
#define arg_var(...)   VA_NARGS_CALL_OVERLOAD(_arg_var, __VA_ARGS__)
 
#define _arg_ref1(a1)   a1##_ref(1)
 
#define _arg_ref2(a1, a2)   _arg_ref1(a1), a2##_ref(2)
 
#define _arg_ref3(a1, a2, a3)   _arg_ref2(a1, a2), a3##_ref(3)
 
#define _arg_ref4(a1, a2, a3, a4)   _arg_ref3(a1, a2, a3), a4##_ref(4)
 
#define _arg_ref5(a1, a2, a3, a4, a5)   _arg_ref4(a1, a2, a3, a4), a5##_ref(5)
 
#define _arg_ref6(a1, a2, a3, a4, a5, a6)   _arg_ref5(a1, a2, a3, a4, a5), a6##_ref(6)
 
#define _arg_ref7(a1, a2, a3, a4, a5, a6, a7)   _arg_ref6(a1, a2, a3, a4, a5, a6), a7##_ref(7)
 
#define _arg_ref8(a1, a2, a3, a4, a5, a6, a7, a8)    _arg_ref7(a1, a2, a3, a4, a5, a6, a7), a8##_ref(8)
 
#define _arg_ref9(a1, a2, a3, a4, a5, a6, a7, a8, a9)    _arg_ref8(a1, a2, a3, a4, a5, a6, a7, a8), a9##_ref(9)
 
#define _arg_ref10(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10)    _arg_ref9(a1, a2, a3, a4, a5, a6, a7, a8, a9), a10##_ref(10)
 
#define _arg_ref11(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11)    _arg_ref10(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10), a11##_ref(11)
 
#define arg_ref(...)   VA_NARGS_CALL_OVERLOAD(_arg_ref, __VA_ARGS__)
 
#define _arg_str1(a1)   a1##_str
 
#define _arg_str2(a1, a2)   _arg_str1(a1) a2##_str
 
#define _arg_str3(a1, a2, a3)   _arg_str2(a1, a2) a3##_str
 
#define _arg_str4(a1, a2, a3, a4)   _arg_str3(a1, a2, a3) a4##_str
 
#define _arg_str5(a1, a2, a3, a4, a5)   _arg_str4(a1, a2, a3, a4) a5##_str
 
#define _arg_str6(a1, a2, a3, a4, a5, a6)   _arg_str5(a1, a2, a3, a4, a5) a6##_str
 
#define _arg_str7(a1, a2, a3, a4, a5, a6, a7)   _arg_str6(a1, a2, a3, a4, a5, a6) a7##_str
 
#define _arg_str8(a1, a2, a3, a4, a5, a6, a7, a8)   _arg_str7(a1, a2, a3, a4, a5, a6, a7) a8##_str
 
#define _arg_str9(a1, a2, a3, a4, a5, a6, a7, a8, a9)    _arg_str8(a1, a2, a3, a4, a5, a6, a7, a8) a9##_str
 
#define _arg_str10(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10)    _arg_str9(a1, a2, a3, a4, a5, a6, a7, a8, a9) a10##_str
 
#define _arg_str11(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11)    _arg_str10(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) a11##_str
 
#define arg_str(...)   VA_NARGS_CALL_OVERLOAD(_arg_str, __VA_ARGS__)
 
#define ret_def_void
 
#define ret_set_void
 
#define ret_default_void
 
#define ret_ret_void   return Py_INCREF(Py_None), Py_None
 
#define ret_def_GLint   int ret_int
 
#define ret_set_GLint   ret_int =
 
#define ret_default_GLint   -1
 
#define ret_ret_GLint   return PyLong_FromLong(ret_int)
 
#define ret_def_GLuint   uint ret_uint
 
#define ret_set_GLuint   ret_uint =
 
#define ret_default_GLuint   0
 
#define ret_ret_GLuint   return PyLong_FromLong(long(ret_uint))
 
#define ret_def_GLenum   uint ret_uint
 
#define ret_set_GLenum   ret_uint =
 
#define ret_default_GLenum   0
 
#define ret_ret_GLenum   return PyLong_FromLong(long(ret_uint))
 
#define ret_def_GLboolean   uchar ret_bool
 
#define ret_set_GLboolean   ret_bool =
 
#define ret_default_GLboolean   GL_FALSE
 
#define ret_ret_GLboolean   return PyLong_FromLong(long(ret_bool))
 
#define ret_def_GLstring
 
#define ret_set_GLstring   ret_str =
 
#define ret_default_GLstring   (const uchar *)default_GLstring
 
#define ret_ret_GLstring
 

Functions

Utility Functions
int BGL_typeSize (int type)
 
static int gl_buffer_type_from_py_buffer (Py_buffer *pybuffer)
 
static bool compare_dimensions (int ndim, const int *dim1, const Py_ssize_t *dim2)
 

Variables

static CLG_LogRef LOG = {"bgl"}
 

Buffer API

#define MAX_DIMENSIONS   256
 
static PySequenceMethods Buffer_SeqMethods
 
static PyMappingMethods Buffer_AsMapping
 
static PyMethodDef Buffer_methods []
 
static PyGetSetDef Buffer_getseters []
 
PyTypeObject BGL_bufferType
 
static PyObject * Buffer_new (PyTypeObject *type, PyObject *args, PyObject *kwds)
 
static Py_ssize_t Buffer_len (Buffer *self)
 
static PyObject * Buffer_item (Buffer *self, Py_ssize_t i)
 
static PyObject * Buffer_slice (Buffer *self, Py_ssize_t begin, Py_ssize_t end)
 
static int Buffer_ass_item (Buffer *self, Py_ssize_t i, PyObject *v)
 
static int Buffer_ass_slice (Buffer *self, Py_ssize_t begin, Py_ssize_t end, PyObject *seq)
 
static PyObject * Buffer_subscript (Buffer *self, PyObject *item)
 
static int Buffer_ass_subscript (Buffer *self, PyObject *item, PyObject *value)
 
static void Buffer_dealloc (Buffer *self)
 
static PyObject * Buffer_repr (Buffer *self)
 
static PyObject * Buffer_to_list (Buffer *self)
 
static PyObject * Buffer_to_list_recursive (Buffer *self)
 
static PyObject * Buffer_dimensions (Buffer *self, void *)
 
static BufferBGL_MakeBuffer_FromData (PyObject *parent, int type, int ndimensions, const int *dimensions, void *buf)
 
BufferBGL_MakeBuffer (int type, int ndimensions, const int *dimensions, const void *initbuffer)
 

OpenGL API Wrapping

#define BGL_Wrap(funcname, ret, arg_list)
 
static void bgl_no_opengl_error ()
 
 BGL_Wrap (BlendFunc, void,(GLenum, GLenum))
 
 BGL_Wrap (Clear, void,(GLbitfield))
 
 BGL_Wrap (ClearColor, void,(GLfloat, GLfloat, GLfloat, GLfloat))
 
 BGL_Wrap (ClearDepth, void,(GLdouble))
 
 BGL_Wrap (ClearStencil, void,(GLint))
 
 BGL_Wrap (ColorMask, void,(GLboolean, GLboolean, GLboolean, GLboolean))
 
 BGL_Wrap (CullFace, void,(GLenum))
 
 BGL_Wrap (DepthFunc, void,(GLenum))
 
 BGL_Wrap (DepthMask, void,(GLboolean))
 
 BGL_Wrap (DepthRange, void,(GLdouble, GLdouble))
 
 BGL_Wrap (Disable, void,(GLenum))
 
 BGL_Wrap (DrawBuffer, void,(GLenum))
 
 BGL_Wrap (Enable, void,(GLenum))
 
 BGL_Wrap (Finish, void,(void))
 
 BGL_Wrap (Flush, void,(void))
 
 BGL_Wrap (FrontFace, void,(GLenum))
 
 BGL_Wrap (GetBooleanv, void,(GLenum, GLbooleanP))
 
 BGL_Wrap (GetDoublev, void,(GLenum, GLdoubleP))
 
 BGL_Wrap (GetError, GLenum,(void))
 
 BGL_Wrap (GetFloatv, void,(GLenum, GLfloatP))
 
 BGL_Wrap (GetIntegerv, void,(GLenum, GLintP))
 
 BGL_Wrap (GetString, GLstring,(GLenum))
 
 BGL_Wrap (GetTexImage, void,(GLenum, GLint, GLenum, GLenum, GLvoidP))
 
 BGL_Wrap (GetTexLevelParameterfv, void,(GLenum, GLint, GLenum, GLfloatP))
 
 BGL_Wrap (GetTexLevelParameteriv, void,(GLenum, GLint, GLenum, GLintP))
 
 BGL_Wrap (GetTexParameterfv, void,(GLenum, GLenum, GLfloatP))
 
 BGL_Wrap (GetTexParameteriv, void,(GLenum, GLenum, GLintP))
 
 BGL_Wrap (Hint, void,(GLenum, GLenum))
 
 BGL_Wrap (IsEnabled, GLboolean,(GLenum))
 
 BGL_Wrap (LineWidth, void,(GLfloat))
 
 BGL_Wrap (LogicOp, void,(GLenum))
 
 BGL_Wrap (PixelStoref, void,(GLenum, GLfloat))
 
 BGL_Wrap (PixelStorei, void,(GLenum, GLint))
 
 BGL_Wrap (PointSize, void,(GLfloat))
 
 BGL_Wrap (PolygonMode, void,(GLenum, GLenum))
 
 BGL_Wrap (ReadBuffer, void,(GLenum))
 
 BGL_Wrap (ReadPixels, void,(GLint, GLint, GLsizei, GLsizei, GLenum, GLenum, GLvoidP))
 
 BGL_Wrap (Scissor, void,(GLint, GLint, GLsizei, GLsizei))
 
 BGL_Wrap (StencilFunc, void,(GLenum, GLint, GLuint))
 
 BGL_Wrap (StencilMask, void,(GLuint))
 
 BGL_Wrap (StencilOp, void,(GLenum, GLenum, GLenum))
 
 BGL_Wrap (TexImage1D, void,(GLenum, GLint, GLint, GLsizei, GLint, GLenum, GLenum, GLvoidP))
 
 BGL_Wrap (TexImage2D, void,(GLenum, GLint, GLint, GLsizei, GLsizei, GLint, GLenum, GLenum, GLvoidP))
 
 BGL_Wrap (TexParameterf, void,(GLenum, GLenum, GLfloat))
 
 BGL_Wrap (TexParameterfv, void,(GLenum, GLenum, GLfloatP))
 
 BGL_Wrap (TexParameteri, void,(GLenum, GLenum, GLint))
 
 BGL_Wrap (TexParameteriv, void,(GLenum, GLenum, GLintP))
 
 BGL_Wrap (Viewport, void,(GLint, GLint, GLsizei, GLsizei))
 
 BGL_Wrap (BindTexture, void,(GLenum, GLuint))
 
 BGL_Wrap (CopyTexImage1D, void,(GLenum, GLint, GLenum, GLint, GLint, GLsizei, GLint))
 
 BGL_Wrap (CopyTexImage2D, void,(GLenum, GLint, GLenum, GLint, GLint, GLsizei, GLsizei, GLint))
 
 BGL_Wrap (CopyTexSubImage1D, void,(GLenum, GLint, GLint, GLint, GLint, GLsizei))
 
 BGL_Wrap (CopyTexSubImage2D, void,(GLenum, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei))
 
 BGL_Wrap (DeleteTextures, void,(GLsizei, GLuintP))
 
 BGL_Wrap (DrawArrays, void,(GLenum, GLint, GLsizei))
 
 BGL_Wrap (DrawElements, void,(GLenum, GLsizei, GLenum, GLvoidP))
 
 BGL_Wrap (GenTextures, void,(GLsizei, GLuintP))
 
 BGL_Wrap (IsTexture, GLboolean,(GLuint))
 
 BGL_Wrap (PolygonOffset, void,(GLfloat, GLfloat))
 
 BGL_Wrap (TexSubImage1D, void,(GLenum, GLint, GLint, GLsizei, GLenum, GLenum, GLvoidP))
 
 BGL_Wrap (TexSubImage2D, void,(GLenum, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLenum, GLvoidP))
 
 BGL_Wrap (CopyTexSubImage3D, void,(GLenum, GLint, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei))
 
 BGL_Wrap (DrawRangeElements, void,(GLenum, GLuint, GLuint, GLsizei, GLenum, GLvoidP))
 
 BGL_Wrap (TexImage3D, void,(GLenum, GLint, GLint, GLsizei, GLsizei, GLsizei, GLint, GLenum, GLenum, GLvoidP))
 
 BGL_Wrap (TexSubImage3D, void,(GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLenum, GLvoidP))
 
 BGL_Wrap (ActiveTexture, void,(GLenum))
 
 BGL_Wrap (CompressedTexImage1D, void,(GLenum, GLint, GLenum, GLsizei, GLint, GLsizei, GLvoidP))
 
 BGL_Wrap (CompressedTexImage2D, void,(GLenum, GLint, GLenum, GLsizei, GLsizei, GLint, GLsizei, GLvoidP))
 
 BGL_Wrap (CompressedTexImage3D, void,(GLenum, GLint, GLenum, GLsizei, GLsizei, GLsizei, GLint, GLsizei, GLvoidP))
 
 BGL_Wrap (CompressedTexSubImage1D, void,(GLenum, GLint, GLint, GLsizei, GLenum, GLsizei, GLvoidP))
 
 BGL_Wrap (CompressedTexSubImage2D, void,(GLenum, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLsizei, GLvoidP))
 
 BGL_Wrap (CompressedTexSubImage3D, void,(GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLsizei, GLvoidP))
 
 BGL_Wrap (GetCompressedTexImage, void,(GLenum, GLint, GLvoidP))
 
 BGL_Wrap (SampleCoverage, void,(GLfloat, GLboolean))
 
 BGL_Wrap (BlendColor, void,(GLfloat, GLfloat, GLfloat, GLfloat))
 
 BGL_Wrap (BlendEquation, void,(GLenum))
 
 BGL_Wrap (BeginQuery, void,(GLenum, GLuint))
 
 BGL_Wrap (BindBuffer, void,(GLenum, GLuint))
 
 BGL_Wrap (BufferData, void,(GLenum, GLsizeiptr, GLvoidP, GLenum))
 
 BGL_Wrap (BufferSubData, void,(GLenum, GLintptr, GLsizeiptr, GLvoidP))
 
 BGL_Wrap (DeleteBuffers, void,(GLsizei, GLuintP))
 
 BGL_Wrap (DeleteQueries, void,(GLsizei, GLuintP))
 
 BGL_Wrap (EndQuery, void,(GLenum))
 
 BGL_Wrap (GenBuffers, void,(GLsizei, GLuintP))
 
 BGL_Wrap (GenQueries, void,(GLsizei, GLuintP))
 
 BGL_Wrap (GetBufferParameteriv, void,(GLenum, GLenum, GLintP))
 
 BGL_Wrap (GetBufferPointerv, void,(GLenum, GLenum, GLvoidP))
 
 BGL_Wrap (GetBufferSubData, void,(GLenum, GLintptr, GLsizeiptr, GLvoidP))
 
 BGL_Wrap (GetQueryObjectiv, void,(GLuint, GLenum, GLintP))
 
 BGL_Wrap (GetQueryObjectuiv, void,(GLuint, GLenum, GLuintP))
 
 BGL_Wrap (GetQueryiv, void,(GLenum, GLenum, GLintP))
 
 BGL_Wrap (IsBuffer, GLboolean,(GLuint))
 
 BGL_Wrap (IsQuery, GLboolean,(GLuint))
 
 BGL_Wrap (MapBuffer, void,(GLenum, GLenum))
 
 BGL_Wrap (UnmapBuffer, GLboolean,(GLenum))
 
 BGL_Wrap (AttachShader, void,(GLuint, GLuint))
 
 BGL_Wrap (BindAttribLocation, void,(GLuint, GLuint, GLstring))
 
 BGL_Wrap (BlendEquationSeparate, void,(GLenum, GLenum))
 
 BGL_Wrap (CompileShader, void,(GLuint))
 
 BGL_Wrap (CreateProgram, GLuint,(void))
 
 BGL_Wrap (CreateShader, GLuint,(GLenum))
 
 BGL_Wrap (DeleteProgram, void,(GLuint))
 
 BGL_Wrap (DeleteShader, void,(GLuint))
 
 BGL_Wrap (DetachShader, void,(GLuint, GLuint))
 
 BGL_Wrap (DisableVertexAttribArray, void,(GLuint))
 
 BGL_Wrap (DrawBuffers, void,(GLsizei, GLenumP))
 
 BGL_Wrap (EnableVertexAttribArray, void,(GLuint))
 
 BGL_Wrap (GetActiveAttrib, void,(GLuint, GLuint, GLsizei, GLsizeiP, GLintP, GLenumP, GLcharP))
 
 BGL_Wrap (GetActiveUniform, void,(GLuint, GLuint, GLsizei, GLsizeiP, GLintP, GLenumP, GLcharP))
 
 BGL_Wrap (GetAttachedShaders, void,(GLuint, GLsizei, GLsizeiP, GLuintP))
 
 BGL_Wrap (GetAttribLocation, GLint,(GLuint, GLstring))
 
 BGL_Wrap (GetProgramInfoLog, void,(GLuint, GLsizei, GLsizeiP, GLcharP))
 
 BGL_Wrap (GetProgramiv, void,(GLuint, GLenum, GLintP))
 
 BGL_Wrap (GetShaderInfoLog, void,(GLuint, GLsizei, GLsizeiP, GLcharP))
 
 BGL_Wrap (GetShaderSource, void,(GLuint, GLsizei, GLsizeiP, GLcharP))
 
 BGL_Wrap (GetShaderiv, void,(GLuint, GLenum, GLintP))
 
 BGL_Wrap (GetUniformLocation, GLint,(GLuint, GLstring))
 
 BGL_Wrap (GetUniformfv, void,(GLuint, GLint, GLfloatP))
 
 BGL_Wrap (GetUniformiv, void,(GLuint, GLint, GLintP))
 
 BGL_Wrap (GetVertexAttribPointerv, void,(GLuint, GLenum, GLvoidP))
 
 BGL_Wrap (GetVertexAttribdv, void,(GLuint, GLenum, GLdoubleP))
 
 BGL_Wrap (GetVertexAttribfv, void,(GLuint, GLenum, GLfloatP))
 
 BGL_Wrap (GetVertexAttribiv, void,(GLuint, GLenum, GLintP))
 
 BGL_Wrap (IsProgram, GLboolean,(GLuint))
 
 BGL_Wrap (IsShader, GLboolean,(GLuint))
 
 BGL_Wrap (LinkProgram, void,(GLuint))
 
 BGL_Wrap (StencilFuncSeparate, void,(GLenum, GLenum, GLint, GLuint))
 
 BGL_Wrap (StencilMaskSeparate, void,(GLenum, GLuint))
 
 BGL_Wrap (StencilOpSeparate, void,(GLenum, GLenum, GLenum, GLenum))
 
 BGL_Wrap (Uniform1f, void,(GLint, GLfloat))
 
 BGL_Wrap (Uniform1fv, void,(GLint, GLsizei, GLfloatP))
 
 BGL_Wrap (Uniform1i, void,(GLint, GLint))
 
 BGL_Wrap (Uniform1iv, void,(GLint, GLsizei, GLintP))
 
 BGL_Wrap (Uniform2f, void,(GLint, GLfloat, GLfloat))
 
 BGL_Wrap (Uniform2fv, void,(GLint, GLsizei, GLfloatP))
 
 BGL_Wrap (Uniform2i, void,(GLint, GLint, GLint))
 
 BGL_Wrap (Uniform2iv, void,(GLint, GLsizei, GLintP))
 
 BGL_Wrap (Uniform3f, void,(GLint, GLfloat, GLfloat, GLfloat))
 
 BGL_Wrap (Uniform3fv, void,(GLint, GLsizei, GLfloatP))
 
 BGL_Wrap (Uniform3i, void,(GLint, GLint, GLint, GLint))
 
 BGL_Wrap (Uniform3iv, void,(GLint, GLsizei, GLintP))
 
 BGL_Wrap (Uniform4f, void,(GLint, GLfloat, GLfloat, GLfloat, GLfloat))
 
 BGL_Wrap (Uniform4fv, void,(GLint, GLsizei, GLfloatP))
 
 BGL_Wrap (Uniform4i, void,(GLint, GLint, GLint, GLint, GLint))
 
 BGL_Wrap (Uniform4iv, void,(GLint, GLsizei, GLintP))
 
 BGL_Wrap (UniformMatrix2fv, void,(GLint, GLsizei, GLboolean, GLfloatP))
 
 BGL_Wrap (UniformMatrix3fv, void,(GLint, GLsizei, GLboolean, GLfloatP))
 
 BGL_Wrap (UniformMatrix4fv, void,(GLint, GLsizei, GLboolean, GLfloatP))
 
 BGL_Wrap (UseProgram, void,(GLuint))
 
 BGL_Wrap (ValidateProgram, void,(GLuint))
 
 BGL_Wrap (VertexAttrib1d, void,(GLuint, GLdouble))
 
 BGL_Wrap (VertexAttrib1dv, void,(GLuint, GLdoubleP))
 
 BGL_Wrap (VertexAttrib1f, void,(GLuint, GLfloat))
 
 BGL_Wrap (VertexAttrib1fv, void,(GLuint, GLfloatP))
 
 BGL_Wrap (VertexAttrib1s, void,(GLuint, GLshort))
 
 BGL_Wrap (VertexAttrib1sv, void,(GLuint, GLshortP))
 
 BGL_Wrap (VertexAttrib2d, void,(GLuint, GLdouble, GLdouble))
 
 BGL_Wrap (VertexAttrib2dv, void,(GLuint, GLdoubleP))
 
 BGL_Wrap (VertexAttrib2f, void,(GLuint, GLfloat, GLfloat))
 
 BGL_Wrap (VertexAttrib2fv, void,(GLuint, GLfloatP))
 
 BGL_Wrap (VertexAttrib2s, void,(GLuint, GLshort, GLshort))
 
 BGL_Wrap (VertexAttrib2sv, void,(GLuint, GLshortP))
 
 BGL_Wrap (VertexAttrib3d, void,(GLuint, GLdouble, GLdouble, GLdouble))
 
 BGL_Wrap (VertexAttrib3dv, void,(GLuint, GLdoubleP))
 
 BGL_Wrap (VertexAttrib3f, void,(GLuint, GLfloat, GLfloat, GLfloat))
 
 BGL_Wrap (VertexAttrib3fv, void,(GLuint, GLfloatP))
 
 BGL_Wrap (VertexAttrib3s, void,(GLuint, GLshort, GLshort, GLshort))
 
 BGL_Wrap (VertexAttrib3sv, void,(GLuint, GLshortP))
 
 BGL_Wrap (VertexAttrib4Nbv, void,(GLuint, GLbyteP))
 
 BGL_Wrap (VertexAttrib4Niv, void,(GLuint, GLintP))
 
 BGL_Wrap (VertexAttrib4Nsv, void,(GLuint, GLshortP))
 
 BGL_Wrap (VertexAttrib4Nub, void,(GLuint, GLubyte, GLubyte, GLubyte, GLubyte))
 
 BGL_Wrap (VertexAttrib4Nubv, void,(GLuint, GLubyteP))
 
 BGL_Wrap (VertexAttrib4Nuiv, void,(GLuint, GLuintP))
 
 BGL_Wrap (VertexAttrib4Nusv, void,(GLuint, GLushortP))
 
 BGL_Wrap (VertexAttrib4bv, void,(GLuint, GLbyteP))
 
 BGL_Wrap (VertexAttrib4d, void,(GLuint, GLdouble, GLdouble, GLdouble, GLdouble))
 
 BGL_Wrap (VertexAttrib4dv, void,(GLuint, GLdoubleP))
 
 BGL_Wrap (VertexAttrib4f, void,(GLuint, GLfloat, GLfloat, GLfloat, GLfloat))
 
 BGL_Wrap (VertexAttrib4fv, void,(GLuint, GLfloatP))
 
 BGL_Wrap (VertexAttrib4iv, void,(GLuint, GLintP))
 
 BGL_Wrap (VertexAttrib4s, void,(GLuint, GLshort, GLshort, GLshort, GLshort))
 
 BGL_Wrap (VertexAttrib4sv, void,(GLuint, GLshortP))
 
 BGL_Wrap (VertexAttrib4ubv, void,(GLuint, GLubyteP))
 
 BGL_Wrap (VertexAttrib4uiv, void,(GLuint, GLuintP))
 
 BGL_Wrap (VertexAttrib4usv, void,(GLuint, GLushortP))
 
 BGL_Wrap (VertexAttribPointer, void,(GLuint, GLint, GLenum, GLboolean, GLsizei, GLvoidP))
 
 BGL_Wrap (UniformMatrix2x3fv, void,(GLint, GLsizei, GLboolean, GLfloatP))
 
 BGL_Wrap (UniformMatrix2x4fv, void,(GLint, GLsizei, GLboolean, GLfloatP))
 
 BGL_Wrap (UniformMatrix3x2fv, void,(GLint, GLsizei, GLboolean, GLfloatP))
 
 BGL_Wrap (UniformMatrix3x4fv, void,(GLint, GLsizei, GLboolean, GLfloatP))
 
 BGL_Wrap (UniformMatrix4x2fv, void,(GLint, GLsizei, GLboolean, GLfloatP))
 
 BGL_Wrap (UniformMatrix4x3fv, void,(GLint, GLsizei, GLboolean, GLfloatP))
 
 BGL_Wrap (BindFramebuffer, void,(GLenum, GLuint))
 
 BGL_Wrap (BindRenderbuffer, void,(GLenum, GLuint))
 
 BGL_Wrap (BindVertexArray, void,(GLuint))
 
 BGL_Wrap (BlitFramebuffer, void,(GLint, GLint, GLint, GLint, GLint, GLint, GLint, GLint, GLbitfield, GLenum))
 
 BGL_Wrap (CheckFramebufferStatus, GLenum,(GLenum))
 
 BGL_Wrap (DeleteFramebuffers, void,(GLsizei, GLuintP))
 
 BGL_Wrap (DeleteRenderbuffers, void,(GLsizei, GLuintP))
 
 BGL_Wrap (DeleteVertexArrays, void,(GLsizei, GLuintP))
 
 BGL_Wrap (FramebufferRenderbuffer, void,(GLenum, GLenum, GLenum, GLuint))
 
 BGL_Wrap (GenFramebuffers, void,(GLsizei, GLuintP))
 
 BGL_Wrap (GenRenderbuffers, void,(GLsizei, GLuintP))
 
 BGL_Wrap (GenVertexArrays, void,(GLsizei, GLuintP))
 
 BGL_Wrap (GetStringi, GLstring,(GLenum, GLuint))
 
 BGL_Wrap (IsVertexArray, GLboolean,(GLuint))
 
 BGL_Wrap (RenderbufferStorage, void,(GLenum, GLenum, GLsizei, GLsizei))
 
 BGL_Wrap (VertexAttribIPointer, void,(GLuint, GLint, GLenum, GLsizei, GLvoidP))
 
 BGL_Wrap (BindBufferBase, void,(GLenum, GLuint, GLuint))
 
 BGL_Wrap (BindBufferRange, void,(GLenum, GLuint, GLuint, GLintptr, GLsizeiptr))
 
 BGL_Wrap (GetActiveUniformBlockName, void,(GLuint, GLuint, GLsizei, GLsizeiP, GLcharP))
 
 BGL_Wrap (GetActiveUniformBlockiv, void,(GLuint, GLuint, GLenum, GLintP))
 
 BGL_Wrap (GetActiveUniformName, void,(GLuint, GLuint, GLsizei, GLsizeiP, GLcharP))
 
 BGL_Wrap (GetActiveUniformsiv, void,(GLuint, GLsizei, GLuintP, GLenum, GLintP))
 
 BGL_Wrap (GetIntegeri_v, void,(GLenum, GLuint, GLintP))
 
 BGL_Wrap (GetUniformBlockIndex, GLuint,(GLuint, GLstring))
 
 BGL_Wrap (GetUniformIndices, void,(GLuint, GLsizei, GLcharP, GLuintP))
 
 BGL_Wrap (UniformBlockBinding, void,(GLuint, GLuint, GLuint))
 
 BGL_Wrap (FramebufferTexture, void,(GLenum, GLenum, GLuint, GLint))
 
 BGL_Wrap (GetBufferParameteri64v, void,(GLenum, GLenum, GLint64P))
 
 BGL_Wrap (GetInteger64i_v, void,(GLenum, GLuint, GLint64P))
 
 BGL_Wrap (GetMultisamplefv, void,(GLenum, GLuint, GLfloatP))
 
 BGL_Wrap (SampleMaski, void,(GLuint, GLbitfield))
 
 BGL_Wrap (TexImage2DMultisample, void,(GLenum, GLsizei, GLenum, GLsizei, GLsizei, GLboolean))
 
 BGL_Wrap (TexImage3DMultisample, void,(GLenum, GLsizei, GLenum, GLsizei, GLsizei, GLsizei, GLboolean))
 

Module Definition

#define PY_MOD_ADD_METHOD(func)
 
#define PY_DICT_ADD_INT(x)   py_module_dict_add_int(dict, #x, x)
 
#define PY_DICT_ADD_INT64(x)   py_module_dict_add_int64(dict, #x, x)
 
static PyModuleDef BGL_module_def
 
static PyObject * Method_ShaderSource (PyObject *self, PyObject *args)
 
static void py_module_dict_add_int (PyObject *dict, const char *name, int value)
 
static void py_module_dict_add_int64 (PyObject *dict, const char *name, int64_t value)
 
static void py_module_dict_add_method (PyObject *submodule, PyObject *dict, PyMethodDef *method_def, bool is_valid)
 
static void init_bgl_version_1_0_methods (PyObject *submodule, PyObject *dict)
 
static void init_bgl_version_1_1_methods (PyObject *submodule, PyObject *dict)
 
static void init_bgl_version_1_2_methods (PyObject *submodule, PyObject *dict)
 
static void init_bgl_version_1_3_methods (PyObject *submodule, PyObject *dict)
 
static void init_bgl_version_1_4_methods (PyObject *submodule, PyObject *dict)
 
static void init_bgl_version_1_5_methods (PyObject *submodule, PyObject *dict)
 
static void init_bgl_version_2_0_methods (PyObject *submodule, PyObject *dict)
 
static void init_bgl_version_2_1_methods (PyObject *submodule, PyObject *dict)
 
static void init_bgl_version_3_0_methods (PyObject *submodule, PyObject *dict)
 
static void init_bgl_version_3_1_methods (PyObject *submodule, PyObject *dict)
 
static void init_bgl_version_3_2_methods (PyObject *submodule, PyObject *dict)
 
static void init_bgl_version_3_3_methods (PyObject *, PyObject *)
 
static void init_bgl_version_1_1_constants (PyObject *dict)
 
static void init_bgl_version_1_2_constants (PyObject *dict)
 
static void init_bgl_version_1_3_constants (PyObject *dict)
 
static void init_bgl_version_1_4_constants (PyObject *dict)
 
static void init_bgl_version_1_5_constants (PyObject *dict)
 
static void init_bgl_version_2_0_constants (PyObject *dict)
 
static void init_bgl_version_2_1_constants (PyObject *dict)
 
static void init_bgl_version_3_0_constants (PyObject *dict)
 
static void init_bgl_version_3_1_constants (PyObject *dict)
 
static void init_bgl_version_3_2_constants (PyObject *dict)
 
static void init_bgl_version_3_3_constants (PyObject *dict)
 
PyObject * BPyInit_bgl ()
 

Detailed Description

This file is the 'bgl' module which wraps OpenGL functions and constants, allowing script writers to make OpenGL calls in their Python scripts.

Note
This module is very similar to 'PyOpenGL' which could replace 'bgl' one day.

Definition in file bgl.cc.

Macro Definition Documentation

◆ _arg_def1

#define _arg_def1 ( a1)    a1##_def(1)

Definition at line 331 of file bgl.cc.

◆ _arg_def10

#define _arg_def10 ( a1,
a2,
a3,
a4,
a5,
a6,
a7,
a8,
a9,
a10 )
Value:
_arg_def9(a1, a2, a3, a4, a5, a6, a7, a8, a9); \
a10##_def(10)
#define _arg_def9(a1, a2, a3, a4, a5, a6, a7, a8, a9)
Definition bgl.cc:353

Definition at line 356 of file bgl.cc.

◆ _arg_def11

#define _arg_def11 ( a1,
a2,
a3,
a4,
a5,
a6,
a7,
a8,
a9,
a10,
a11 )
Value:
_arg_def10(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10); \
a11##_def(11)
#define _arg_def10(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10)
Definition bgl.cc:356

Definition at line 359 of file bgl.cc.

◆ _arg_def2

#define _arg_def2 ( a1,
a2 )
Value:
_arg_def1(a1); \
a2##_def(2)
#define _arg_def1(a1)
Definition bgl.cc:331

Definition at line 332 of file bgl.cc.

◆ _arg_def3

#define _arg_def3 ( a1,
a2,
a3 )
Value:
_arg_def2(a1, a2); \
a3##_def(3)
#define _arg_def2(a1, a2)
Definition bgl.cc:332

Definition at line 335 of file bgl.cc.

◆ _arg_def4

#define _arg_def4 ( a1,
a2,
a3,
a4 )
Value:
_arg_def3(a1, a2, a3); \
a4##_def(4)
#define _arg_def3(a1, a2, a3)
Definition bgl.cc:335

Definition at line 338 of file bgl.cc.

◆ _arg_def5

#define _arg_def5 ( a1,
a2,
a3,
a4,
a5 )
Value:
_arg_def4(a1, a2, a3, a4); \
a5##_def(5)
#define _arg_def4(a1, a2, a3, a4)
Definition bgl.cc:338

Definition at line 341 of file bgl.cc.

◆ _arg_def6

#define _arg_def6 ( a1,
a2,
a3,
a4,
a5,
a6 )
Value:
_arg_def5(a1, a2, a3, a4, a5); \
a6##_def(6)
#define _arg_def5(a1, a2, a3, a4, a5)
Definition bgl.cc:341

Definition at line 344 of file bgl.cc.

◆ _arg_def7

#define _arg_def7 ( a1,
a2,
a3,
a4,
a5,
a6,
a7 )
Value:
_arg_def6(a1, a2, a3, a4, a5, a6); \
a7##_def(7)
#define _arg_def6(a1, a2, a3, a4, a5, a6)
Definition bgl.cc:344

Definition at line 347 of file bgl.cc.

◆ _arg_def8

#define _arg_def8 ( a1,
a2,
a3,
a4,
a5,
a6,
a7,
a8 )
Value:
_arg_def7(a1, a2, a3, a4, a5, a6, a7); \
a8##_def(8)
#define _arg_def7(a1, a2, a3, a4, a5, a6, a7)
Definition bgl.cc:347

Definition at line 350 of file bgl.cc.

◆ _arg_def9

#define _arg_def9 ( a1,
a2,
a3,
a4,
a5,
a6,
a7,
a8,
a9 )
Value:
_arg_def8(a1, a2, a3, a4, a5, a6, a7, a8); \
a9##_def(9)
#define _arg_def8(a1, a2, a3, a4, a5, a6, a7, a8)
Definition bgl.cc:350

Definition at line 353 of file bgl.cc.

◆ _arg_ref1

#define _arg_ref1 ( a1)    a1##_ref(1)

Definition at line 381 of file bgl.cc.

◆ _arg_ref10

#define _arg_ref10 ( a1,
a2,
a3,
a4,
a5,
a6,
a7,
a8,
a9,
a10 )    _arg_ref9(a1, a2, a3, a4, a5, a6, a7, a8, a9), a10##_ref(10)

Definition at line 392 of file bgl.cc.

◆ _arg_ref11

#define _arg_ref11 ( a1,
a2,
a3,
a4,
a5,
a6,
a7,
a8,
a9,
a10,
a11 )    _arg_ref10(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10), a11##_ref(11)

Definition at line 394 of file bgl.cc.

◆ _arg_ref2

#define _arg_ref2 ( a1,
a2 )   _arg_ref1(a1), a2##_ref(2)

Definition at line 382 of file bgl.cc.

◆ _arg_ref3

#define _arg_ref3 ( a1,
a2,
a3 )   _arg_ref2(a1, a2), a3##_ref(3)

Definition at line 383 of file bgl.cc.

◆ _arg_ref4

#define _arg_ref4 ( a1,
a2,
a3,
a4 )   _arg_ref3(a1, a2, a3), a4##_ref(4)

Definition at line 384 of file bgl.cc.

◆ _arg_ref5

#define _arg_ref5 ( a1,
a2,
a3,
a4,
a5 )   _arg_ref4(a1, a2, a3, a4), a5##_ref(5)

Definition at line 385 of file bgl.cc.

◆ _arg_ref6

#define _arg_ref6 ( a1,
a2,
a3,
a4,
a5,
a6 )   _arg_ref5(a1, a2, a3, a4, a5), a6##_ref(6)

Definition at line 386 of file bgl.cc.

◆ _arg_ref7

#define _arg_ref7 ( a1,
a2,
a3,
a4,
a5,
a6,
a7 )   _arg_ref6(a1, a2, a3, a4, a5, a6), a7##_ref(7)

Definition at line 387 of file bgl.cc.

◆ _arg_ref8

#define _arg_ref8 ( a1,
a2,
a3,
a4,
a5,
a6,
a7,
a8 )    _arg_ref7(a1, a2, a3, a4, a5, a6, a7), a8##_ref(8)

Definition at line 388 of file bgl.cc.

◆ _arg_ref9

#define _arg_ref9 ( a1,
a2,
a3,
a4,
a5,
a6,
a7,
a8,
a9 )    _arg_ref8(a1, a2, a3, a4, a5, a6, a7, a8), a9##_ref(9)

Definition at line 390 of file bgl.cc.

◆ _arg_str1

#define _arg_str1 ( a1)    a1##_str

Definition at line 398 of file bgl.cc.

◆ _arg_str10

#define _arg_str10 ( a1,
a2,
a3,
a4,
a5,
a6,
a7,
a8,
a9,
a10 )    _arg_str9(a1, a2, a3, a4, a5, a6, a7, a8, a9) a10##_str

Definition at line 408 of file bgl.cc.

◆ _arg_str11

#define _arg_str11 ( a1,
a2,
a3,
a4,
a5,
a6,
a7,
a8,
a9,
a10,
a11 )    _arg_str10(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) a11##_str

Definition at line 410 of file bgl.cc.

◆ _arg_str2

#define _arg_str2 ( a1,
a2 )   _arg_str1(a1) a2##_str

Definition at line 399 of file bgl.cc.

◆ _arg_str3

#define _arg_str3 ( a1,
a2,
a3 )   _arg_str2(a1, a2) a3##_str

Definition at line 400 of file bgl.cc.

◆ _arg_str4

#define _arg_str4 ( a1,
a2,
a3,
a4 )   _arg_str3(a1, a2, a3) a4##_str

Definition at line 401 of file bgl.cc.

◆ _arg_str5

#define _arg_str5 ( a1,
a2,
a3,
a4,
a5 )   _arg_str4(a1, a2, a3, a4) a5##_str

Definition at line 402 of file bgl.cc.

◆ _arg_str6

#define _arg_str6 ( a1,
a2,
a3,
a4,
a5,
a6 )   _arg_str5(a1, a2, a3, a4, a5) a6##_str

Definition at line 403 of file bgl.cc.

◆ _arg_str7

#define _arg_str7 ( a1,
a2,
a3,
a4,
a5,
a6,
a7 )   _arg_str6(a1, a2, a3, a4, a5, a6) a7##_str

Definition at line 404 of file bgl.cc.

◆ _arg_str8

#define _arg_str8 ( a1,
a2,
a3,
a4,
a5,
a6,
a7,
a8 )   _arg_str7(a1, a2, a3, a4, a5, a6, a7) a8##_str

Definition at line 405 of file bgl.cc.

◆ _arg_str9

#define _arg_str9 ( a1,
a2,
a3,
a4,
a5,
a6,
a7,
a8,
a9 )    _arg_str8(a1, a2, a3, a4, a5, a6, a7, a8) a9##_str

Definition at line 406 of file bgl.cc.

◆ _arg_var1

#define _arg_var1 ( a1)    a1##_var(1)

Definition at line 364 of file bgl.cc.

◆ _arg_var10

#define _arg_var10 ( a1,
a2,
a3,
a4,
a5,
a6,
a7,
a8,
a9,
a10 )    _arg_var9(a1, a2, a3, a4, a5, a6, a7, a8, a9), a10##_var(10)

Definition at line 375 of file bgl.cc.

◆ _arg_var11

#define _arg_var11 ( a1,
a2,
a3,
a4,
a5,
a6,
a7,
a8,
a9,
a10,
a11 )    _arg_var10(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10), a11##_var(11)

Definition at line 377 of file bgl.cc.

◆ _arg_var2

#define _arg_var2 ( a1,
a2 )   _arg_var1(a1), a2##_var(2)

Definition at line 365 of file bgl.cc.

◆ _arg_var3

#define _arg_var3 ( a1,
a2,
a3 )   _arg_var2(a1, a2), a3##_var(3)

Definition at line 366 of file bgl.cc.

◆ _arg_var4

#define _arg_var4 ( a1,
a2,
a3,
a4 )   _arg_var3(a1, a2, a3), a4##_var(4)

Definition at line 367 of file bgl.cc.

◆ _arg_var5

#define _arg_var5 ( a1,
a2,
a3,
a4,
a5 )   _arg_var4(a1, a2, a3, a4), a5##_var(5)

Definition at line 368 of file bgl.cc.

◆ _arg_var6

#define _arg_var6 ( a1,
a2,
a3,
a4,
a5,
a6 )   _arg_var5(a1, a2, a3, a4, a5), a6##_var(6)

Definition at line 369 of file bgl.cc.

◆ _arg_var7

#define _arg_var7 ( a1,
a2,
a3,
a4,
a5,
a6,
a7 )   _arg_var6(a1, a2, a3, a4, a5, a6), a7##_var(7)

Definition at line 370 of file bgl.cc.

◆ _arg_var8

#define _arg_var8 ( a1,
a2,
a3,
a4,
a5,
a6,
a7,
a8 )    _arg_var7(a1, a2, a3, a4, a5, a6, a7), a8##_var(8)

Definition at line 371 of file bgl.cc.

◆ _arg_var9

#define _arg_var9 ( a1,
a2,
a3,
a4,
a5,
a6,
a7,
a8,
a9 )    _arg_var8(a1, a2, a3, a4, a5, a6, a7, a8), a9##_var(9)

Definition at line 373 of file bgl.cc.

◆ arg_def

#define arg_def ( ...)    VA_NARGS_CALL_OVERLOAD(_arg_def, __VA_ARGS__)

Definition at line 362 of file bgl.cc.

◆ arg_ref

#define arg_ref ( ...)    VA_NARGS_CALL_OVERLOAD(_arg_ref, __VA_ARGS__)

Definition at line 396 of file bgl.cc.

◆ arg_str

#define arg_str ( ...)    VA_NARGS_CALL_OVERLOAD(_arg_str, __VA_ARGS__)

Definition at line 412 of file bgl.cc.

Referenced by bpy_pydriver_create_dict().

◆ arg_var

#define arg_var ( ...)    VA_NARGS_CALL_OVERLOAD(_arg_var, __VA_ARGS__)

Definition at line 379 of file bgl.cc.

◆ BGL_Wrap

#define BGL_Wrap ( funcname,
ret,
arg_list )
Value:
static PyObject *Method_##funcname(PyObject * /*self*/, PyObject *args) \
{ \
(void)args; \
bgl_no_opengl_error(); \
return nullptr; \
}

Definition at line 1164 of file bgl.cc.

◆ GLbitfield_def

#define GLbitfield_def ( num)    /*unsigned*/ int GLbitfield_var(num)

Definition at line 221 of file bgl.cc.

◆ GLbitfield_ref

#define GLbitfield_ref ( num)    &bgl_var##num

Definition at line 220 of file bgl.cc.

◆ GLbitfield_str

#define GLbitfield_str   "i"

Definition at line 218 of file bgl.cc.

◆ GLbitfield_var

#define GLbitfield_var ( num)    bgl_var##num

Definition at line 219 of file bgl.cc.

◆ GLboolean_def

#define GLboolean_def ( num)    /*unsigned*/ char GLboolean_var(num)

Definition at line 215 of file bgl.cc.

◆ GLboolean_ref

#define GLboolean_ref ( num)    &bgl_var##num

Definition at line 214 of file bgl.cc.

◆ GLboolean_str

#define GLboolean_str   "b"

Definition at line 212 of file bgl.cc.

◆ GLboolean_var

#define GLboolean_var ( num)    bgl_var##num

Definition at line 213 of file bgl.cc.

◆ GLbooleanP_def

#define GLbooleanP_def ( number)    Buffer *bgl_buffer##number

Definition at line 102 of file bgl.cc.

◆ GLbooleanP_ref

#define GLbooleanP_ref ( number)    &BGL_bufferType, &bgl_buffer##number

Definition at line 101 of file bgl.cc.

◆ GLbooleanP_str

#define GLbooleanP_str   "O!"

Definition at line 99 of file bgl.cc.

◆ GLbooleanP_var

#define GLbooleanP_var ( number)    (bgl_buffer##number)->buf.asvoid

Definition at line 100 of file bgl.cc.

◆ GLbyteP_def

#define GLbyteP_def ( number)    Buffer *bgl_buffer##number

Definition at line 107 of file bgl.cc.

◆ GLbyteP_ref

#define GLbyteP_ref ( number)    &BGL_bufferType, &bgl_buffer##number

Definition at line 106 of file bgl.cc.

◆ GLbyteP_str

#define GLbyteP_str   "O!"

Definition at line 104 of file bgl.cc.

◆ GLbyteP_var

#define GLbyteP_var ( number)    (bgl_buffer##number)->buf.asvoid

Definition at line 105 of file bgl.cc.

◆ GLcharP_def

#define GLcharP_def ( number)    Buffer *bgl_buffer##number

Definition at line 188 of file bgl.cc.

◆ GLcharP_ref

#define GLcharP_ref ( number)    &BGL_bufferType, &bgl_buffer##number

Definition at line 187 of file bgl.cc.

◆ GLcharP_str

#define GLcharP_str   "O!"

Definition at line 185 of file bgl.cc.

◆ GLcharP_var

#define GLcharP_var ( number)    (bgl_buffer##number)->buf.asvoid

Definition at line 186 of file bgl.cc.

◆ GLdouble_def

#define GLdouble_def ( num)    double GLdouble_var(num)

Definition at line 321 of file bgl.cc.

◆ GLdouble_ref

#define GLdouble_ref ( num)    &bgl_var##num

Definition at line 320 of file bgl.cc.

◆ GLdouble_str

#define GLdouble_str   "d"

Definition at line 318 of file bgl.cc.

◆ GLdouble_var

#define GLdouble_var ( num)    bgl_var##num

Definition at line 319 of file bgl.cc.

◆ GLdoubleP_def

#define GLdoubleP_def ( number)    Buffer *bgl_buffer##number

Definition at line 159 of file bgl.cc.

◆ GLdoubleP_ref

#define GLdoubleP_ref ( number)    &BGL_bufferType, &bgl_buffer##number

Definition at line 158 of file bgl.cc.

◆ GLdoubleP_str

#define GLdoubleP_str   "O!"

Definition at line 156 of file bgl.cc.

◆ GLdoubleP_var

#define GLdoubleP_var ( number)    (bgl_buffer##number)->buf.asvoid

Definition at line 157 of file bgl.cc.

◆ GLenum_def

#define GLenum_def ( num)    /*unsigned*/ int GLenum_var(num)

Definition at line 209 of file bgl.cc.

◆ GLenum_ref

#define GLenum_ref ( num)    &bgl_var##num

Definition at line 208 of file bgl.cc.

◆ GLenum_str

#define GLenum_str   "i"

Definition at line 206 of file bgl.cc.

◆ GLenum_var

#define GLenum_var ( num)    bgl_var##num

Definition at line 207 of file bgl.cc.

◆ GLenumP_def

#define GLenumP_def ( number)    Buffer *bgl_buffer##number

Definition at line 127 of file bgl.cc.

◆ GLenumP_ref

#define GLenumP_ref ( number)    &BGL_bufferType, &bgl_buffer##number

Definition at line 126 of file bgl.cc.

◆ GLenumP_str

#define GLenumP_str   "O!"

Definition at line 124 of file bgl.cc.

◆ GLenumP_var

#define GLenumP_var ( number)    (bgl_buffer##number)->buf.asvoid

Definition at line 125 of file bgl.cc.

◆ GLfloat_def

#define GLfloat_def ( num)    float GLfloat_var(num)

Definition at line 301 of file bgl.cc.

◆ GLfloat_ref

#define GLfloat_ref ( num)    &bgl_var##num

Definition at line 300 of file bgl.cc.

◆ GLfloat_str

#define GLfloat_str   "f"

Definition at line 298 of file bgl.cc.

◆ GLfloat_var

#define GLfloat_var ( num)    bgl_var##num

Definition at line 299 of file bgl.cc.

◆ GLfloatP_def

#define GLfloatP_def ( number)    Buffer *bgl_buffer##number

Definition at line 154 of file bgl.cc.

◆ GLfloatP_ref

#define GLfloatP_ref ( number)    &BGL_bufferType, &bgl_buffer##number

Definition at line 153 of file bgl.cc.

◆ GLfloatP_str

#define GLfloatP_str   "O!"

Definition at line 151 of file bgl.cc.

◆ GLfloatP_var

#define GLfloatP_var ( number)    (bgl_buffer##number)->buf.asvoid

Definition at line 152 of file bgl.cc.

◆ GLint64P_def

#define GLint64P_def ( number)    Buffer *bgl_buffer##number

Definition at line 122 of file bgl.cc.

◆ GLint64P_ref

#define GLint64P_ref ( number)    &BGL_bufferType, &bgl_buffer##number

Definition at line 121 of file bgl.cc.

◆ GLint64P_str

#define GLint64P_str   "O!"

Definition at line 119 of file bgl.cc.

◆ GLint64P_var

#define GLint64P_var ( number)    (bgl_buffer##number)->buf.asvoid

Definition at line 120 of file bgl.cc.

◆ GLint_def

#define GLint_def ( num)    int GLint_var(num)

Definition at line 241 of file bgl.cc.

◆ GLint_ref

#define GLint_ref ( num)    &bgl_var##num

Definition at line 240 of file bgl.cc.

◆ GLint_str

#define GLint_str   "i"

Definition at line 238 of file bgl.cc.

◆ GLint_var

#define GLint_var ( num)    bgl_var##num

Definition at line 239 of file bgl.cc.

◆ GLintP_def

#define GLintP_def ( number)    Buffer *bgl_buffer##number

Definition at line 117 of file bgl.cc.

◆ GLintP_ref

#define GLintP_ref ( number)    &BGL_bufferType, &bgl_buffer##number

Definition at line 116 of file bgl.cc.

◆ GLintP_str

#define GLintP_str   "O!"

Definition at line 114 of file bgl.cc.

◆ GLintP_var

#define GLintP_var ( number)    (bgl_buffer##number)->buf.asvoid

Definition at line 115 of file bgl.cc.

◆ GLintptr_def

#define GLintptr_def ( num)    size_t GLintptr_var(num)

Definition at line 259 of file bgl.cc.

◆ GLintptr_ref

#define GLintptr_ref ( num)    &bgl_var##num

Definition at line 258 of file bgl.cc.

◆ GLintptr_str

#define GLintptr_str   "n"

Definition at line 256 of file bgl.cc.

◆ GLintptr_var

#define GLintptr_var ( num)    bgl_var##num

Definition at line 257 of file bgl.cc.

◆ GLshort_def

#define GLshort_def ( num)    short GLshort_var(num)

Definition at line 235 of file bgl.cc.

◆ GLshort_ref

#define GLshort_ref ( num)    &bgl_var##num

Definition at line 234 of file bgl.cc.

◆ GLshort_str

#define GLshort_str   "h"

Definition at line 232 of file bgl.cc.

◆ GLshort_var

#define GLshort_var ( num)    bgl_var##num

Definition at line 233 of file bgl.cc.

◆ GLshortP_def

#define GLshortP_def ( number)    Buffer *bgl_buffer##number

Definition at line 144 of file bgl.cc.

◆ GLshortP_ref

#define GLshortP_ref ( number)    &BGL_bufferType, &bgl_buffer##number

Definition at line 143 of file bgl.cc.

◆ GLshortP_str

#define GLshortP_str   "O!"

Definition at line 141 of file bgl.cc.

◆ GLshortP_var

#define GLshortP_var ( number)    (bgl_buffer##number)->buf.asvoid

Definition at line 142 of file bgl.cc.

◆ GLsizei_def

#define GLsizei_def ( num)    size_t GLsizei_var(num)

Definition at line 247 of file bgl.cc.

◆ GLsizei_ref

#define GLsizei_ref ( num)    &bgl_var##num

Definition at line 246 of file bgl.cc.

◆ GLsizei_str

#define GLsizei_str   "n"

Definition at line 244 of file bgl.cc.

◆ GLsizei_var

#define GLsizei_var ( num)    bgl_var##num

Definition at line 245 of file bgl.cc.

◆ GLsizeiP_def

#define GLsizeiP_def ( number)    Buffer *bgl_buffer##number

Definition at line 183 of file bgl.cc.

◆ GLsizeiP_ref

#define GLsizeiP_ref ( number)    &BGL_bufferType, &bgl_buffer##number

Definition at line 182 of file bgl.cc.

◆ GLsizeiP_str

#define GLsizeiP_str   "O!"

Definition at line 180 of file bgl.cc.

◆ GLsizeiP_var

#define GLsizeiP_var ( number)    (bgl_buffer##number)->buf.asvoid

Definition at line 181 of file bgl.cc.

◆ GLsizeiptr_def

#define GLsizeiptr_def ( num)    size_t GLsizeiptr_var(num)

Definition at line 253 of file bgl.cc.

◆ GLsizeiptr_ref

#define GLsizeiptr_ref ( num)    &bgl_var##num

Definition at line 252 of file bgl.cc.

◆ GLsizeiptr_str

#define GLsizeiptr_str   "n"

Definition at line 250 of file bgl.cc.

◆ GLsizeiptr_var

#define GLsizeiptr_var ( num)    bgl_var##num

Definition at line 251 of file bgl.cc.

◆ GLstring_def

#define GLstring_def ( number)    char *GLstring_var(number)

Definition at line 307 of file bgl.cc.

◆ GLstring_ref

#define GLstring_ref ( number)    &bgl_var##number

Definition at line 306 of file bgl.cc.

◆ GLstring_str

#define GLstring_str   "s"

Definition at line 304 of file bgl.cc.

◆ GLstring_var

#define GLstring_var ( number)    bgl_var##number

Definition at line 305 of file bgl.cc.

◆ GLubyte_def

#define GLubyte_def ( num)    /*unsigned*/ char GLubyte_var(num)

Definition at line 265 of file bgl.cc.

◆ GLubyte_ref

#define GLubyte_ref ( num)    &bgl_var##num

Definition at line 264 of file bgl.cc.

◆ GLubyte_str

#define GLubyte_str   "B"

Definition at line 262 of file bgl.cc.

◆ GLubyte_var

#define GLubyte_var ( num)    bgl_var##num

Definition at line 263 of file bgl.cc.

◆ GLubyteP_def

#define GLubyteP_def ( number)    Buffer *bgl_buffer##number

Definition at line 112 of file bgl.cc.

◆ GLubyteP_ref

#define GLubyteP_ref ( number)    &BGL_bufferType, &bgl_buffer##number

Definition at line 111 of file bgl.cc.

◆ GLubyteP_str

#define GLubyteP_str   "O!"

Definition at line 109 of file bgl.cc.

◆ GLubyteP_var

#define GLubyteP_var ( number)    (bgl_buffer##number)->buf.asvoid

Definition at line 110 of file bgl.cc.

◆ GLuint_def

#define GLuint_def ( num)    /*unsigned*/ int GLuint_var(num)

Definition at line 279 of file bgl.cc.

◆ GLuint_ref

#define GLuint_ref ( num)    &bgl_var##num

Definition at line 278 of file bgl.cc.

◆ GLuint_str

#define GLuint_str   "I"

Definition at line 276 of file bgl.cc.

◆ GLuint_var

#define GLuint_var ( num)    bgl_var##num

Definition at line 277 of file bgl.cc.

◆ GLuintP_def

#define GLuintP_def ( number)    Buffer *bgl_buffer##number

Definition at line 132 of file bgl.cc.

◆ GLuintP_ref

#define GLuintP_ref ( number)    &BGL_bufferType, &bgl_buffer##number

Definition at line 131 of file bgl.cc.

◆ GLuintP_str

#define GLuintP_str   "O!"

Definition at line 129 of file bgl.cc.

◆ GLuintP_var

#define GLuintP_var ( number)    (bgl_buffer##number)->buf.asvoid

Definition at line 130 of file bgl.cc.

◆ GLushortP_def

#define GLushortP_def ( number)    Buffer *bgl_buffer##number

Definition at line 149 of file bgl.cc.

◆ GLushortP_ref

#define GLushortP_ref ( number)    &BGL_bufferType, &bgl_buffer##number

Definition at line 148 of file bgl.cc.

◆ GLushortP_str

#define GLushortP_str   "O!"

Definition at line 146 of file bgl.cc.

◆ GLushortP_var

#define GLushortP_var ( number)    (bgl_buffer##number)->buf.asvoid

Definition at line 147 of file bgl.cc.

◆ GLvoidP_def

#define GLvoidP_def ( number)    BufferOrOffset bgl_buffer##number

Definition at line 178 of file bgl.cc.

◆ GLvoidP_ref

#define GLvoidP_ref ( number)    BGL_BufferOrOffsetConverter, &bgl_buffer##number

Definition at line 177 of file bgl.cc.

◆ GLvoidP_str

#define GLvoidP_str   "O&"

Definition at line 173 of file bgl.cc.

◆ GLvoidP_var

#define GLvoidP_var ( number)
Value:
((bgl_buffer##number.buffer) ? (bgl_buffer##number.buffer)->buf.asvoid : \
(bgl_buffer##number.offset))

Definition at line 174 of file bgl.cc.

◆ MAX_DIMENSIONS

#define MAX_DIMENSIONS   256

Definition at line 758 of file bgl.cc.

Referenced by Buffer_new().

◆ PY_DICT_ADD_INT

◆ PY_DICT_ADD_INT64

#define PY_DICT_ADD_INT64 ( x)    py_module_dict_add_int64(dict, #x, x)

Definition at line 1793 of file bgl.cc.

Referenced by init_bgl_version_3_2_constants().

◆ PY_MOD_ADD_METHOD

#define PY_MOD_ADD_METHOD ( func)
Value:
{ \
static PyMethodDef method_def = {"gl" #func, Method_##func, METH_VARARGS}; \
py_module_dict_add_method(submodule, dict, &method_def, false); \
} \
((void)0)

Definition at line 1508 of file bgl.cc.

Referenced by init_bgl_version_1_0_methods(), init_bgl_version_1_1_methods(), init_bgl_version_1_2_methods(), init_bgl_version_1_3_methods(), init_bgl_version_1_4_methods(), init_bgl_version_1_5_methods(), init_bgl_version_2_0_methods(), init_bgl_version_2_1_methods(), init_bgl_version_3_0_methods(), init_bgl_version_3_1_methods(), and init_bgl_version_3_2_methods().

◆ ret_def_GLboolean

#define ret_def_GLboolean   uchar ret_bool

Definition at line 446 of file bgl.cc.

◆ ret_def_GLenum

#define ret_def_GLenum   uint ret_uint

Definition at line 441 of file bgl.cc.

◆ ret_def_GLint

#define ret_def_GLint   int ret_int

Definition at line 419 of file bgl.cc.

◆ ret_def_GLstring

#define ret_def_GLstring
Value:
const char *default_GLstring = ""; \
const uchar *ret_str
unsigned char uchar

Definition at line 451 of file bgl.cc.

◆ ret_def_GLuint

#define ret_def_GLuint   uint ret_uint

Definition at line 424 of file bgl.cc.

◆ ret_def_void

#define ret_def_void

Definition at line 414 of file bgl.cc.

◆ ret_default_GLboolean

#define ret_default_GLboolean   GL_FALSE

Definition at line 448 of file bgl.cc.

◆ ret_default_GLenum

#define ret_default_GLenum   0

Definition at line 443 of file bgl.cc.

◆ ret_default_GLint

#define ret_default_GLint   -1

Definition at line 421 of file bgl.cc.

◆ ret_default_GLstring

#define ret_default_GLstring   (const uchar *)default_GLstring

Definition at line 455 of file bgl.cc.

◆ ret_default_GLuint

#define ret_default_GLuint   0

Definition at line 426 of file bgl.cc.

◆ ret_default_void

#define ret_default_void

Definition at line 416 of file bgl.cc.

◆ ret_ret_GLboolean

#define ret_ret_GLboolean   return PyLong_FromLong(long(ret_bool))

Definition at line 449 of file bgl.cc.

◆ ret_ret_GLenum

#define ret_ret_GLenum   return PyLong_FromLong(long(ret_uint))

Definition at line 444 of file bgl.cc.

◆ ret_ret_GLint

#define ret_ret_GLint   return PyLong_FromLong(ret_int)

Definition at line 422 of file bgl.cc.

◆ ret_ret_GLstring

#define ret_ret_GLstring
Value:
if (ret_str) { \
return PyUnicode_FromString((const char *)ret_str); \
} \
\
PyErr_SetString(PyExc_AttributeError, "could not get opengl string"); \
return nullptr;

Definition at line 457 of file bgl.cc.

◆ ret_ret_GLuint

#define ret_ret_GLuint   return PyLong_FromLong(long(ret_uint))

Definition at line 427 of file bgl.cc.

◆ ret_ret_void

#define ret_ret_void   return Py_INCREF(Py_None), Py_None

Definition at line 417 of file bgl.cc.

◆ ret_set_GLboolean

#define ret_set_GLboolean   ret_bool =

Definition at line 447 of file bgl.cc.

◆ ret_set_GLenum

#define ret_set_GLenum   ret_uint =

Definition at line 442 of file bgl.cc.

◆ ret_set_GLint

#define ret_set_GLint   ret_int =

Definition at line 420 of file bgl.cc.

◆ ret_set_GLstring

#define ret_set_GLstring   ret_str =

Definition at line 454 of file bgl.cc.

◆ ret_set_GLuint

#define ret_set_GLuint   ret_uint =

Definition at line 425 of file bgl.cc.

◆ ret_set_void

#define ret_set_void

Definition at line 415 of file bgl.cc.

◆ void_def

#define void_def ( num)    char bgl_var##num

Definition at line 87 of file bgl.cc.

◆ void_ref

#define void_ref ( num)    &bgl_var##num

Definition at line 86 of file bgl.cc.

◆ void_str

#define void_str   ""

Definition at line 84 of file bgl.cc.

◆ void_var

#define void_var ( num)

Definition at line 85 of file bgl.cc.

Function Documentation

◆ BGL_MakeBuffer()

Buffer * BGL_MakeBuffer ( int type,
int ndimensions,
const int * dimensions,
const void * initbuffer )

Create a buffer object

Parameters
dimensionsAn array of ndimensions integers representing the size of each dimension.
initbufferWhen not NULL holds a contiguous buffer with the correct format from which the buffer will be initialized

Definition at line 703 of file bgl.cc.

References _Buffer::asvoid, BGL_MakeBuffer_FromData(), BGL_typeSize(), _Buffer::buf, and MEM_mallocN.

Referenced by Buffer_new().

◆ BGL_MakeBuffer_FromData()

static Buffer * BGL_MakeBuffer_FromData ( PyObject * parent,
int type,
int ndimensions,
const int * dimensions,
void * buf )
static

◆ bgl_no_opengl_error()

static void bgl_no_opengl_error ( )
static

Definition at line 1159 of file bgl.cc.

Referenced by Method_ShaderSource().

◆ BGL_typeSize()

int BGL_typeSize ( int type)

Definition at line 487 of file bgl.cc.

References double(), float, and int.

Referenced by BGL_MakeBuffer(), and Buffer_item().

◆ BGL_Wrap() [1/226]

BGL_Wrap ( ActiveTexture ,
void ,
(GLenum)  )

◆ BGL_Wrap() [2/226]

BGL_Wrap ( AttachShader ,
void ,
(GLuint, GLuint)  )

◆ BGL_Wrap() [3/226]

BGL_Wrap ( BeginQuery ,
void ,
(GLenum, GLuint)  )

◆ BGL_Wrap() [4/226]

BGL_Wrap ( BindAttribLocation ,
void ,
(GLuint, GLuint, GLstring)  )

◆ BGL_Wrap() [5/226]

BGL_Wrap ( BindBuffer ,
void ,
(GLenum, GLuint)  )

◆ BGL_Wrap() [6/226]

BGL_Wrap ( BindBufferBase ,
void ,
(GLenum, GLuint, GLuint)  )

◆ BGL_Wrap() [7/226]

BGL_Wrap ( BindBufferRange ,
void ,
(GLenum, GLuint, GLuint, GLintptr, GLsizeiptr)  )

◆ BGL_Wrap() [8/226]

BGL_Wrap ( BindFramebuffer ,
void ,
(GLenum, GLuint)  )

◆ BGL_Wrap() [9/226]

BGL_Wrap ( BindRenderbuffer ,
void ,
(GLenum, GLuint)  )

◆ BGL_Wrap() [10/226]

BGL_Wrap ( BindTexture ,
void ,
(GLenum, GLuint)  )

◆ BGL_Wrap() [11/226]

BGL_Wrap ( BindVertexArray ,
void ,
(GLuint)  )

◆ BGL_Wrap() [12/226]

BGL_Wrap ( BlendColor ,
void ,
(GLfloat, GLfloat, GLfloat, GLfloat)  )

◆ BGL_Wrap() [13/226]

BGL_Wrap ( BlendEquation ,
void ,
(GLenum)  )

◆ BGL_Wrap() [14/226]

BGL_Wrap ( BlendEquationSeparate ,
void ,
(GLenum, GLenum)  )

◆ BGL_Wrap() [15/226]

BGL_Wrap ( BlendFunc ,
void ,
(GLenum, GLenum)  )

◆ BGL_Wrap() [16/226]

BGL_Wrap ( BlitFramebuffer ,
void ,
(GLint, GLint, GLint, GLint, GLint, GLint, GLint, GLint, GLbitfield, GLenum)  )

◆ BGL_Wrap() [17/226]

BGL_Wrap ( BufferData ,
void ,
(GLenum, GLsizeiptr, GLvoidP, GLenum)  )

◆ BGL_Wrap() [18/226]

BGL_Wrap ( BufferSubData ,
void ,
(GLenum, GLintptr, GLsizeiptr, GLvoidP)  )

◆ BGL_Wrap() [19/226]

BGL_Wrap ( CheckFramebufferStatus ,
GLenum ,
(GLenum)  )

◆ BGL_Wrap() [20/226]

BGL_Wrap ( Clear ,
void ,
(GLbitfield)  )

◆ BGL_Wrap() [21/226]

BGL_Wrap ( ClearColor ,
void ,
(GLfloat, GLfloat, GLfloat, GLfloat)  )

◆ BGL_Wrap() [22/226]

BGL_Wrap ( ClearDepth ,
void ,
(GLdouble)  )

◆ BGL_Wrap() [23/226]

BGL_Wrap ( ClearStencil ,
void ,
(GLint)  )

◆ BGL_Wrap() [24/226]

BGL_Wrap ( ColorMask ,
void ,
(GLboolean, GLboolean, GLboolean, GLboolean)  )

◆ BGL_Wrap() [25/226]

BGL_Wrap ( CompileShader ,
void ,
(GLuint)  )

◆ BGL_Wrap() [26/226]

BGL_Wrap ( CompressedTexImage1D ,
void ,
(GLenum, GLint, GLenum, GLsizei, GLint, GLsizei, GLvoidP)  )

◆ BGL_Wrap() [27/226]

BGL_Wrap ( CompressedTexImage2D ,
void ,
(GLenum, GLint, GLenum, GLsizei, GLsizei, GLint, GLsizei, GLvoidP)  )

◆ BGL_Wrap() [28/226]

BGL_Wrap ( CompressedTexImage3D ,
void ,
(GLenum, GLint, GLenum, GLsizei, GLsizei, GLsizei, GLint, GLsizei, GLvoidP)  )

◆ BGL_Wrap() [29/226]

BGL_Wrap ( CompressedTexSubImage1D ,
void ,
(GLenum, GLint, GLint, GLsizei, GLenum, GLsizei, GLvoidP)  )

◆ BGL_Wrap() [30/226]

BGL_Wrap ( CompressedTexSubImage2D ,
void ,
(GLenum, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLsizei, GLvoidP)  )

◆ BGL_Wrap() [31/226]

BGL_Wrap ( CompressedTexSubImage3D ,
void ,
(GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLsizei, GLvoidP)  )

◆ BGL_Wrap() [32/226]

BGL_Wrap ( CopyTexImage1D ,
void ,
(GLenum, GLint, GLenum, GLint, GLint, GLsizei, GLint)  )

◆ BGL_Wrap() [33/226]

BGL_Wrap ( CopyTexImage2D ,
void ,
(GLenum, GLint, GLenum, GLint, GLint, GLsizei, GLsizei, GLint)  )

◆ BGL_Wrap() [34/226]

BGL_Wrap ( CopyTexSubImage1D ,
void ,
(GLenum, GLint, GLint, GLint, GLint, GLsizei)  )

◆ BGL_Wrap() [35/226]

BGL_Wrap ( CopyTexSubImage2D ,
void ,
(GLenum, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei)  )

◆ BGL_Wrap() [36/226]

BGL_Wrap ( CopyTexSubImage3D ,
void ,
(GLenum, GLint, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei)  )

◆ BGL_Wrap() [37/226]

BGL_Wrap ( CreateProgram ,
GLuint ,
(void)  )

◆ BGL_Wrap() [38/226]

BGL_Wrap ( CreateShader ,
GLuint ,
(GLenum)  )

◆ BGL_Wrap() [39/226]

BGL_Wrap ( CullFace ,
void ,
(GLenum)  )

◆ BGL_Wrap() [40/226]

BGL_Wrap ( DeleteBuffers ,
void ,
(GLsizei, GLuintP)  )

◆ BGL_Wrap() [41/226]

BGL_Wrap ( DeleteFramebuffers ,
void ,
(GLsizei, GLuintP)  )

◆ BGL_Wrap() [42/226]

BGL_Wrap ( DeleteProgram ,
void ,
(GLuint)  )

◆ BGL_Wrap() [43/226]

BGL_Wrap ( DeleteQueries ,
void ,
(GLsizei, GLuintP)  )

◆ BGL_Wrap() [44/226]

BGL_Wrap ( DeleteRenderbuffers ,
void ,
(GLsizei, GLuintP)  )

◆ BGL_Wrap() [45/226]

BGL_Wrap ( DeleteShader ,
void ,
(GLuint)  )

◆ BGL_Wrap() [46/226]

BGL_Wrap ( DeleteTextures ,
void ,
(GLsizei, GLuintP)  )

◆ BGL_Wrap() [47/226]

BGL_Wrap ( DeleteVertexArrays ,
void ,
(GLsizei, GLuintP)  )

◆ BGL_Wrap() [48/226]

BGL_Wrap ( DepthFunc ,
void ,
(GLenum)  )

◆ BGL_Wrap() [49/226]

BGL_Wrap ( DepthMask ,
void ,
(GLboolean)  )

◆ BGL_Wrap() [50/226]

BGL_Wrap ( DepthRange ,
void ,
(GLdouble, GLdouble)  )

◆ BGL_Wrap() [51/226]

BGL_Wrap ( DetachShader ,
void ,
(GLuint, GLuint)  )

◆ BGL_Wrap() [52/226]

BGL_Wrap ( Disable ,
void ,
(GLenum)  )

◆ BGL_Wrap() [53/226]

BGL_Wrap ( DisableVertexAttribArray ,
void ,
(GLuint)  )

◆ BGL_Wrap() [54/226]

BGL_Wrap ( DrawArrays ,
void ,
(GLenum, GLint, GLsizei)  )

◆ BGL_Wrap() [55/226]

BGL_Wrap ( DrawBuffer ,
void ,
(GLenum)  )

◆ BGL_Wrap() [56/226]

BGL_Wrap ( DrawBuffers ,
void ,
(GLsizei, GLenumP)  )

◆ BGL_Wrap() [57/226]

BGL_Wrap ( DrawElements ,
void ,
(GLenum, GLsizei, GLenum, GLvoidP)  )

◆ BGL_Wrap() [58/226]

BGL_Wrap ( DrawRangeElements ,
void ,
(GLenum, GLuint, GLuint, GLsizei, GLenum, GLvoidP)  )

◆ BGL_Wrap() [59/226]

BGL_Wrap ( Enable ,
void ,
(GLenum)  )

◆ BGL_Wrap() [60/226]

BGL_Wrap ( EnableVertexAttribArray ,
void ,
(GLuint)  )

◆ BGL_Wrap() [61/226]

BGL_Wrap ( EndQuery ,
void ,
(GLenum)  )

◆ BGL_Wrap() [62/226]

BGL_Wrap ( Finish ,
void ,
(void)  )

◆ BGL_Wrap() [63/226]

BGL_Wrap ( Flush ,
void ,
(void)  )

◆ BGL_Wrap() [64/226]

BGL_Wrap ( FramebufferRenderbuffer ,
void ,
(GLenum, GLenum, GLenum, GLuint)  )

◆ BGL_Wrap() [65/226]

BGL_Wrap ( FramebufferTexture ,
void ,
(GLenum, GLenum, GLuint, GLint)  )

◆ BGL_Wrap() [66/226]

BGL_Wrap ( FrontFace ,
void ,
(GLenum)  )

◆ BGL_Wrap() [67/226]

BGL_Wrap ( GenBuffers ,
void ,
(GLsizei, GLuintP)  )

◆ BGL_Wrap() [68/226]

BGL_Wrap ( GenFramebuffers ,
void ,
(GLsizei, GLuintP)  )

◆ BGL_Wrap() [69/226]

BGL_Wrap ( GenQueries ,
void ,
(GLsizei, GLuintP)  )

◆ BGL_Wrap() [70/226]

BGL_Wrap ( GenRenderbuffers ,
void ,
(GLsizei, GLuintP)  )

◆ BGL_Wrap() [71/226]

BGL_Wrap ( GenTextures ,
void ,
(GLsizei, GLuintP)  )

◆ BGL_Wrap() [72/226]

BGL_Wrap ( GenVertexArrays ,
void ,
(GLsizei, GLuintP)  )

◆ BGL_Wrap() [73/226]

BGL_Wrap ( GetActiveAttrib ,
void ,
(GLuint, GLuint, GLsizei, GLsizeiP, GLintP, GLenumP, GLcharP)  )

◆ BGL_Wrap() [74/226]

BGL_Wrap ( GetActiveUniform ,
void ,
(GLuint, GLuint, GLsizei, GLsizeiP, GLintP, GLenumP, GLcharP)  )

◆ BGL_Wrap() [75/226]

BGL_Wrap ( GetActiveUniformBlockiv ,
void ,
(GLuint, GLuint, GLenum, GLintP)  )

◆ BGL_Wrap() [76/226]

BGL_Wrap ( GetActiveUniformBlockName ,
void ,
(GLuint, GLuint, GLsizei, GLsizeiP, GLcharP)  )

◆ BGL_Wrap() [77/226]

BGL_Wrap ( GetActiveUniformName ,
void ,
(GLuint, GLuint, GLsizei, GLsizeiP, GLcharP)  )

◆ BGL_Wrap() [78/226]

BGL_Wrap ( GetActiveUniformsiv ,
void ,
(GLuint, GLsizei, GLuintP, GLenum, GLintP)  )

◆ BGL_Wrap() [79/226]

BGL_Wrap ( GetAttachedShaders ,
void ,
(GLuint, GLsizei, GLsizeiP, GLuintP)  )

◆ BGL_Wrap() [80/226]

BGL_Wrap ( GetAttribLocation ,
GLint ,
(GLuint, GLstring)  )

◆ BGL_Wrap() [81/226]

BGL_Wrap ( GetBooleanv ,
void ,
(GLenum, GLbooleanP)  )

◆ BGL_Wrap() [82/226]

BGL_Wrap ( GetBufferParameteri64v ,
void ,
(GLenum, GLenum, GLint64P)  )

◆ BGL_Wrap() [83/226]

BGL_Wrap ( GetBufferParameteriv ,
void ,
(GLenum, GLenum, GLintP)  )

◆ BGL_Wrap() [84/226]

BGL_Wrap ( GetBufferPointerv ,
void ,
(GLenum, GLenum, GLvoidP)  )

◆ BGL_Wrap() [85/226]

BGL_Wrap ( GetBufferSubData ,
void ,
(GLenum, GLintptr, GLsizeiptr, GLvoidP)  )

◆ BGL_Wrap() [86/226]

BGL_Wrap ( GetCompressedTexImage ,
void ,
(GLenum, GLint, GLvoidP)  )

◆ BGL_Wrap() [87/226]

BGL_Wrap ( GetDoublev ,
void ,
(GLenum, GLdoubleP)  )

◆ BGL_Wrap() [88/226]

BGL_Wrap ( GetError ,
GLenum ,
(void)  )

◆ BGL_Wrap() [89/226]

BGL_Wrap ( GetFloatv ,
void ,
(GLenum, GLfloatP)  )

◆ BGL_Wrap() [90/226]

BGL_Wrap ( GetInteger64i_v ,
void ,
(GLenum, GLuint, GLint64P)  )

◆ BGL_Wrap() [91/226]

BGL_Wrap ( GetIntegeri_v ,
void ,
(GLenum, GLuint, GLintP)  )

◆ BGL_Wrap() [92/226]

BGL_Wrap ( GetIntegerv ,
void ,
(GLenum, GLintP)  )

◆ BGL_Wrap() [93/226]

BGL_Wrap ( GetMultisamplefv ,
void ,
(GLenum, GLuint, GLfloatP)  )

◆ BGL_Wrap() [94/226]

BGL_Wrap ( GetProgramInfoLog ,
void ,
(GLuint, GLsizei, GLsizeiP, GLcharP)  )

◆ BGL_Wrap() [95/226]

BGL_Wrap ( GetProgramiv ,
void ,
(GLuint, GLenum, GLintP)  )

◆ BGL_Wrap() [96/226]

BGL_Wrap ( GetQueryiv ,
void ,
(GLenum, GLenum, GLintP)  )

◆ BGL_Wrap() [97/226]

BGL_Wrap ( GetQueryObjectiv ,
void ,
(GLuint, GLenum, GLintP)  )

◆ BGL_Wrap() [98/226]

BGL_Wrap ( GetQueryObjectuiv ,
void ,
(GLuint, GLenum, GLuintP)  )

◆ BGL_Wrap() [99/226]

BGL_Wrap ( GetShaderInfoLog ,
void ,
(GLuint, GLsizei, GLsizeiP, GLcharP)  )

◆ BGL_Wrap() [100/226]

BGL_Wrap ( GetShaderiv ,
void ,
(GLuint, GLenum, GLintP)  )

◆ BGL_Wrap() [101/226]

BGL_Wrap ( GetShaderSource ,
void ,
(GLuint, GLsizei, GLsizeiP, GLcharP)  )

◆ BGL_Wrap() [102/226]

BGL_Wrap ( GetString ,
GLstring ,
(GLenum)  )

◆ BGL_Wrap() [103/226]

BGL_Wrap ( GetStringi ,
GLstring ,
(GLenum, GLuint)  )

◆ BGL_Wrap() [104/226]

BGL_Wrap ( GetTexImage ,
void ,
(GLenum, GLint, GLenum, GLenum, GLvoidP)  )

◆ BGL_Wrap() [105/226]

BGL_Wrap ( GetTexLevelParameterfv ,
void ,
(GLenum, GLint, GLenum, GLfloatP)  )

◆ BGL_Wrap() [106/226]

BGL_Wrap ( GetTexLevelParameteriv ,
void ,
(GLenum, GLint, GLenum, GLintP)  )

◆ BGL_Wrap() [107/226]

BGL_Wrap ( GetTexParameterfv ,
void ,
(GLenum, GLenum, GLfloatP)  )

◆ BGL_Wrap() [108/226]

BGL_Wrap ( GetTexParameteriv ,
void ,
(GLenum, GLenum, GLintP)  )

◆ BGL_Wrap() [109/226]

BGL_Wrap ( GetUniformBlockIndex ,
GLuint ,
(GLuint, GLstring)  )

◆ BGL_Wrap() [110/226]

BGL_Wrap ( GetUniformfv ,
void ,
(GLuint, GLint, GLfloatP)  )

◆ BGL_Wrap() [111/226]

BGL_Wrap ( GetUniformIndices ,
void ,
(GLuint, GLsizei, GLcharP, GLuintP)  )

◆ BGL_Wrap() [112/226]

BGL_Wrap ( GetUniformiv ,
void ,
(GLuint, GLint, GLintP)  )

◆ BGL_Wrap() [113/226]

BGL_Wrap ( GetUniformLocation ,
GLint ,
(GLuint, GLstring)  )

◆ BGL_Wrap() [114/226]

BGL_Wrap ( GetVertexAttribdv ,
void ,
(GLuint, GLenum, GLdoubleP)  )

◆ BGL_Wrap() [115/226]

BGL_Wrap ( GetVertexAttribfv ,
void ,
(GLuint, GLenum, GLfloatP)  )

◆ BGL_Wrap() [116/226]

BGL_Wrap ( GetVertexAttribiv ,
void ,
(GLuint, GLenum, GLintP)  )

◆ BGL_Wrap() [117/226]

BGL_Wrap ( GetVertexAttribPointerv ,
void ,
(GLuint, GLenum, GLvoidP)  )

◆ BGL_Wrap() [118/226]

BGL_Wrap ( Hint ,
void ,
(GLenum, GLenum)  )

◆ BGL_Wrap() [119/226]

BGL_Wrap ( IsBuffer ,
GLboolean ,
(GLuint)  )

◆ BGL_Wrap() [120/226]

BGL_Wrap ( IsEnabled ,
GLboolean ,
(GLenum)  )

◆ BGL_Wrap() [121/226]

BGL_Wrap ( IsProgram ,
GLboolean ,
(GLuint)  )

◆ BGL_Wrap() [122/226]

BGL_Wrap ( IsQuery ,
GLboolean ,
(GLuint)  )

◆ BGL_Wrap() [123/226]

BGL_Wrap ( IsShader ,
GLboolean ,
(GLuint)  )

◆ BGL_Wrap() [124/226]

BGL_Wrap ( IsTexture ,
GLboolean ,
(GLuint)  )

◆ BGL_Wrap() [125/226]

BGL_Wrap ( IsVertexArray ,
GLboolean ,
(GLuint)  )

◆ BGL_Wrap() [126/226]

BGL_Wrap ( LineWidth ,
void ,
(GLfloat)  )

◆ BGL_Wrap() [127/226]

BGL_Wrap ( LinkProgram ,
void ,
(GLuint)  )

◆ BGL_Wrap() [128/226]

BGL_Wrap ( LogicOp ,
void ,
(GLenum)  )

◆ BGL_Wrap() [129/226]

BGL_Wrap ( MapBuffer ,
void ,
(GLenum, GLenum)  )

◆ BGL_Wrap() [130/226]

BGL_Wrap ( PixelStoref ,
void ,
(GLenum, GLfloat)  )

◆ BGL_Wrap() [131/226]

BGL_Wrap ( PixelStorei ,
void ,
(GLenum, GLint)  )

◆ BGL_Wrap() [132/226]

BGL_Wrap ( PointSize ,
void ,
(GLfloat)  )

◆ BGL_Wrap() [133/226]

BGL_Wrap ( PolygonMode ,
void ,
(GLenum, GLenum)  )

◆ BGL_Wrap() [134/226]

BGL_Wrap ( PolygonOffset ,
void ,
(GLfloat, GLfloat)  )

◆ BGL_Wrap() [135/226]

BGL_Wrap ( ReadBuffer ,
void ,
(GLenum)  )

◆ BGL_Wrap() [136/226]

BGL_Wrap ( ReadPixels ,
void ,
(GLint, GLint, GLsizei, GLsizei, GLenum, GLenum, GLvoidP)  )

◆ BGL_Wrap() [137/226]

BGL_Wrap ( RenderbufferStorage ,
void ,
(GLenum, GLenum, GLsizei, GLsizei)  )

◆ BGL_Wrap() [138/226]

BGL_Wrap ( SampleCoverage ,
void ,
(GLfloat, GLboolean)  )

◆ BGL_Wrap() [139/226]

BGL_Wrap ( SampleMaski ,
void ,
(GLuint, GLbitfield)  )

◆ BGL_Wrap() [140/226]

BGL_Wrap ( Scissor ,
void ,
(GLint, GLint, GLsizei, GLsizei)  )

◆ BGL_Wrap() [141/226]

BGL_Wrap ( StencilFunc ,
void ,
(GLenum, GLint, GLuint)  )

◆ BGL_Wrap() [142/226]

BGL_Wrap ( StencilFuncSeparate ,
void ,
(GLenum, GLenum, GLint, GLuint)  )

◆ BGL_Wrap() [143/226]

BGL_Wrap ( StencilMask ,
void ,
(GLuint)  )

◆ BGL_Wrap() [144/226]

BGL_Wrap ( StencilMaskSeparate ,
void ,
(GLenum, GLuint)  )

◆ BGL_Wrap() [145/226]

BGL_Wrap ( StencilOp ,
void ,
(GLenum, GLenum, GLenum)  )

◆ BGL_Wrap() [146/226]

BGL_Wrap ( StencilOpSeparate ,
void ,
(GLenum, GLenum, GLenum, GLenum)  )

◆ BGL_Wrap() [147/226]

BGL_Wrap ( TexImage1D ,
void ,
(GLenum, GLint, GLint, GLsizei, GLint, GLenum, GLenum, GLvoidP)  )

◆ BGL_Wrap() [148/226]

BGL_Wrap ( TexImage2D ,
void ,
(GLenum, GLint, GLint, GLsizei, GLsizei, GLint, GLenum, GLenum, GLvoidP)  )

◆ BGL_Wrap() [149/226]

BGL_Wrap ( TexImage2DMultisample ,
void ,
(GLenum, GLsizei, GLenum, GLsizei, GLsizei, GLboolean)  )

◆ BGL_Wrap() [150/226]

BGL_Wrap ( TexImage3D ,
void ,
(GLenum, GLint, GLint, GLsizei, GLsizei, GLsizei, GLint, GLenum, GLenum, GLvoidP)  )

◆ BGL_Wrap() [151/226]

BGL_Wrap ( TexImage3DMultisample ,
void ,
(GLenum, GLsizei, GLenum, GLsizei, GLsizei, GLsizei, GLboolean)  )

◆ BGL_Wrap() [152/226]

BGL_Wrap ( TexParameterf ,
void ,
(GLenum, GLenum, GLfloat)  )

◆ BGL_Wrap() [153/226]

BGL_Wrap ( TexParameterfv ,
void ,
(GLenum, GLenum, GLfloatP)  )

◆ BGL_Wrap() [154/226]

BGL_Wrap ( TexParameteri ,
void ,
(GLenum, GLenum, GLint)  )

◆ BGL_Wrap() [155/226]

BGL_Wrap ( TexParameteriv ,
void ,
(GLenum, GLenum, GLintP)  )

◆ BGL_Wrap() [156/226]

BGL_Wrap ( TexSubImage1D ,
void ,
(GLenum, GLint, GLint, GLsizei, GLenum, GLenum, GLvoidP)  )

◆ BGL_Wrap() [157/226]

BGL_Wrap ( TexSubImage2D ,
void ,
(GLenum, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLenum, GLvoidP)  )

◆ BGL_Wrap() [158/226]

BGL_Wrap ( TexSubImage3D ,
void ,
(GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLenum, GLvoidP)  )

◆ BGL_Wrap() [159/226]

BGL_Wrap ( Uniform1f ,
void ,
(GLint, GLfloat)  )

◆ BGL_Wrap() [160/226]

BGL_Wrap ( Uniform1fv ,
void ,
(GLint, GLsizei, GLfloatP)  )

◆ BGL_Wrap() [161/226]

BGL_Wrap ( Uniform1i ,
void ,
(GLint, GLint)  )

◆ BGL_Wrap() [162/226]

BGL_Wrap ( Uniform1iv ,
void ,
(GLint, GLsizei, GLintP)  )

◆ BGL_Wrap() [163/226]

BGL_Wrap ( Uniform2f ,
void ,
(GLint, GLfloat, GLfloat)  )

◆ BGL_Wrap() [164/226]

BGL_Wrap ( Uniform2fv ,
void ,
(GLint, GLsizei, GLfloatP)  )

◆ BGL_Wrap() [165/226]

BGL_Wrap ( Uniform2i ,
void ,
(GLint, GLint, GLint)  )

◆ BGL_Wrap() [166/226]

BGL_Wrap ( Uniform2iv ,
void ,
(GLint, GLsizei, GLintP)  )

◆ BGL_Wrap() [167/226]

BGL_Wrap ( Uniform3f ,
void ,
(GLint, GLfloat, GLfloat, GLfloat)  )

◆ BGL_Wrap() [168/226]

BGL_Wrap ( Uniform3fv ,
void ,
(GLint, GLsizei, GLfloatP)  )

◆ BGL_Wrap() [169/226]

BGL_Wrap ( Uniform3i ,
void ,
(GLint, GLint, GLint, GLint)  )

◆ BGL_Wrap() [170/226]

BGL_Wrap ( Uniform3iv ,
void ,
(GLint, GLsizei, GLintP)  )

◆ BGL_Wrap() [171/226]

BGL_Wrap ( Uniform4f ,
void ,
(GLint, GLfloat, GLfloat, GLfloat, GLfloat)  )

◆ BGL_Wrap() [172/226]

BGL_Wrap ( Uniform4fv ,
void ,
(GLint, GLsizei, GLfloatP)  )

◆ BGL_Wrap() [173/226]

BGL_Wrap ( Uniform4i ,
void ,
(GLint, GLint, GLint, GLint, GLint)  )

◆ BGL_Wrap() [174/226]

BGL_Wrap ( Uniform4iv ,
void ,
(GLint, GLsizei, GLintP)  )

◆ BGL_Wrap() [175/226]

BGL_Wrap ( UniformBlockBinding ,
void ,
(GLuint, GLuint, GLuint)  )

◆ BGL_Wrap() [176/226]

BGL_Wrap ( UniformMatrix2fv ,
void ,
(GLint, GLsizei, GLboolean, GLfloatP)  )

◆ BGL_Wrap() [177/226]

BGL_Wrap ( UniformMatrix2x3fv ,
void ,
(GLint, GLsizei, GLboolean, GLfloatP)  )

◆ BGL_Wrap() [178/226]

BGL_Wrap ( UniformMatrix2x4fv ,
void ,
(GLint, GLsizei, GLboolean, GLfloatP)  )

◆ BGL_Wrap() [179/226]

BGL_Wrap ( UniformMatrix3fv ,
void ,
(GLint, GLsizei, GLboolean, GLfloatP)  )

◆ BGL_Wrap() [180/226]

BGL_Wrap ( UniformMatrix3x2fv ,
void ,
(GLint, GLsizei, GLboolean, GLfloatP)  )

◆ BGL_Wrap() [181/226]

BGL_Wrap ( UniformMatrix3x4fv ,
void ,
(GLint, GLsizei, GLboolean, GLfloatP)  )

◆ BGL_Wrap() [182/226]

BGL_Wrap ( UniformMatrix4fv ,
void ,
(GLint, GLsizei, GLboolean, GLfloatP)  )

◆ BGL_Wrap() [183/226]

BGL_Wrap ( UniformMatrix4x2fv ,
void ,
(GLint, GLsizei, GLboolean, GLfloatP)  )

◆ BGL_Wrap() [184/226]

BGL_Wrap ( UniformMatrix4x3fv ,
void ,
(GLint, GLsizei, GLboolean, GLfloatP)  )

◆ BGL_Wrap() [185/226]

BGL_Wrap ( UnmapBuffer ,
GLboolean ,
(GLenum)  )

◆ BGL_Wrap() [186/226]

BGL_Wrap ( UseProgram ,
void ,
(GLuint)  )

◆ BGL_Wrap() [187/226]

BGL_Wrap ( ValidateProgram ,
void ,
(GLuint)  )

◆ BGL_Wrap() [188/226]

BGL_Wrap ( VertexAttrib1d ,
void ,
(GLuint, GLdouble)  )

◆ BGL_Wrap() [189/226]

BGL_Wrap ( VertexAttrib1dv ,
void ,
(GLuint, GLdoubleP)  )

◆ BGL_Wrap() [190/226]

BGL_Wrap ( VertexAttrib1f ,
void ,
(GLuint, GLfloat)  )

◆ BGL_Wrap() [191/226]

BGL_Wrap ( VertexAttrib1fv ,
void ,
(GLuint, GLfloatP)  )

◆ BGL_Wrap() [192/226]

BGL_Wrap ( VertexAttrib1s ,
void ,
(GLuint, GLshort)  )

◆ BGL_Wrap() [193/226]

BGL_Wrap ( VertexAttrib1sv ,
void ,
(GLuint, GLshortP)  )

◆ BGL_Wrap() [194/226]

BGL_Wrap ( VertexAttrib2d ,
void ,
(GLuint, GLdouble, GLdouble)  )

◆ BGL_Wrap() [195/226]

BGL_Wrap ( VertexAttrib2dv ,
void ,
(GLuint, GLdoubleP)  )

◆ BGL_Wrap() [196/226]

BGL_Wrap ( VertexAttrib2f ,
void ,
(GLuint, GLfloat, GLfloat)  )

◆ BGL_Wrap() [197/226]

BGL_Wrap ( VertexAttrib2fv ,
void ,
(GLuint, GLfloatP)  )

◆ BGL_Wrap() [198/226]

BGL_Wrap ( VertexAttrib2s ,
void ,
(GLuint, GLshort, GLshort)  )

◆ BGL_Wrap() [199/226]

BGL_Wrap ( VertexAttrib2sv ,
void ,
(GLuint, GLshortP)  )

◆ BGL_Wrap() [200/226]

BGL_Wrap ( VertexAttrib3d ,
void ,
(GLuint, GLdouble, GLdouble, GLdouble)  )

◆ BGL_Wrap() [201/226]

BGL_Wrap ( VertexAttrib3dv ,
void ,
(GLuint, GLdoubleP)  )

◆ BGL_Wrap() [202/226]

BGL_Wrap ( VertexAttrib3f ,
void ,
(GLuint, GLfloat, GLfloat, GLfloat)  )

◆ BGL_Wrap() [203/226]

BGL_Wrap ( VertexAttrib3fv ,
void ,
(GLuint, GLfloatP)  )

◆ BGL_Wrap() [204/226]

BGL_Wrap ( VertexAttrib3s ,
void ,
(GLuint, GLshort, GLshort, GLshort)  )

◆ BGL_Wrap() [205/226]

BGL_Wrap ( VertexAttrib3sv ,
void ,
(GLuint, GLshortP)  )

◆ BGL_Wrap() [206/226]

BGL_Wrap ( VertexAttrib4bv ,
void ,
(GLuint, GLbyteP)  )

◆ BGL_Wrap() [207/226]

BGL_Wrap ( VertexAttrib4d ,
void ,
(GLuint, GLdouble, GLdouble, GLdouble, GLdouble)  )

◆ BGL_Wrap() [208/226]

BGL_Wrap ( VertexAttrib4dv ,
void ,
(GLuint, GLdoubleP)  )

◆ BGL_Wrap() [209/226]

BGL_Wrap ( VertexAttrib4f ,
void ,
(GLuint, GLfloat, GLfloat, GLfloat, GLfloat)  )

◆ BGL_Wrap() [210/226]

BGL_Wrap ( VertexAttrib4fv ,
void ,
(GLuint, GLfloatP)  )

◆ BGL_Wrap() [211/226]

BGL_Wrap ( VertexAttrib4iv ,
void ,
(GLuint, GLintP)  )

◆ BGL_Wrap() [212/226]

BGL_Wrap ( VertexAttrib4Nbv ,
void ,
(GLuint, GLbyteP)  )

◆ BGL_Wrap() [213/226]

BGL_Wrap ( VertexAttrib4Niv ,
void ,
(GLuint, GLintP)  )

◆ BGL_Wrap() [214/226]

BGL_Wrap ( VertexAttrib4Nsv ,
void ,
(GLuint, GLshortP)  )

◆ BGL_Wrap() [215/226]

BGL_Wrap ( VertexAttrib4Nub ,
void ,
(GLuint, GLubyte, GLubyte, GLubyte, GLubyte)  )

◆ BGL_Wrap() [216/226]

BGL_Wrap ( VertexAttrib4Nubv ,
void ,
(GLuint, GLubyteP)  )

◆ BGL_Wrap() [217/226]

BGL_Wrap ( VertexAttrib4Nuiv ,
void ,
(GLuint, GLuintP)  )

◆ BGL_Wrap() [218/226]

BGL_Wrap ( VertexAttrib4Nusv ,
void ,
(GLuint, GLushortP)  )

◆ BGL_Wrap() [219/226]

BGL_Wrap ( VertexAttrib4s ,
void ,
(GLuint, GLshort, GLshort, GLshort, GLshort)  )

◆ BGL_Wrap() [220/226]

BGL_Wrap ( VertexAttrib4sv ,
void ,
(GLuint, GLshortP)  )

◆ BGL_Wrap() [221/226]

BGL_Wrap ( VertexAttrib4ubv ,
void ,
(GLuint, GLubyteP)  )

◆ BGL_Wrap() [222/226]

BGL_Wrap ( VertexAttrib4uiv ,
void ,
(GLuint, GLuintP)  )

◆ BGL_Wrap() [223/226]

BGL_Wrap ( VertexAttrib4usv ,
void ,
(GLuint, GLushortP)  )

◆ BGL_Wrap() [224/226]

BGL_Wrap ( VertexAttribIPointer ,
void ,
(GLuint, GLint, GLenum, GLsizei, GLvoidP)  )

◆ BGL_Wrap() [225/226]

BGL_Wrap ( VertexAttribPointer ,
void ,
(GLuint, GLint, GLenum, GLboolean, GLsizei, GLvoidP)  )

◆ BGL_Wrap() [226/226]

BGL_Wrap ( Viewport ,
void ,
(GLint, GLint, GLsizei, GLsizei)  )

◆ BPyInit_bgl()

◆ Buffer_ass_item()

static int Buffer_ass_item ( Buffer * self,
Py_ssize_t i,
PyObject * v )
static

Definition at line 930 of file bgl.cc.

References Buffer_ass_slice(), Buffer_item(), _Buffer::dimensions, ret, self, and v.

Referenced by Buffer_ass_slice(), and Buffer_ass_subscript().

◆ Buffer_ass_slice()

static int Buffer_ass_slice ( Buffer * self,
Py_ssize_t begin,
Py_ssize_t end,
PyObject * seq )
static

Definition at line 965 of file bgl.cc.

References Buffer_ass_item(), count, and self.

Referenced by Buffer_ass_item(), Buffer_ass_subscript(), and Buffer_new().

◆ Buffer_ass_subscript()

static int Buffer_ass_subscript ( Buffer * self,
PyObject * item,
PyObject * value )
static

Definition at line 1051 of file bgl.cc.

References Buffer_ass_item(), Buffer_ass_slice(), and self.

◆ Buffer_dealloc()

static void Buffer_dealloc ( Buffer * self)
static

Definition at line 1083 of file bgl.cc.

References MEM_freeN(), and self.

◆ Buffer_dimensions()

static PyObject * Buffer_dimensions ( Buffer * self,
void *  )
static

Definition at line 603 of file bgl.cc.

References self.

◆ Buffer_item()

static PyObject * Buffer_item ( Buffer * self,
Py_ssize_t i )
static

◆ Buffer_len()

static Py_ssize_t Buffer_len ( Buffer * self)
static

Definition at line 865 of file bgl.cc.

References _Buffer::dimensions, and self.

◆ Buffer_new()

static PyObject * Buffer_new ( PyTypeObject * type,
PyObject * args,
PyObject * kwds )
static

◆ Buffer_repr()

static PyObject * Buffer_repr ( Buffer * self)
static

Definition at line 1097 of file bgl.cc.

References Buffer_to_list_recursive(), and self.

◆ Buffer_slice()

static PyObject * Buffer_slice ( Buffer * self,
Py_ssize_t begin,
Py_ssize_t end )
static

Definition at line 908 of file bgl.cc.

References Buffer_item(), count, and self.

Referenced by Buffer_subscript().

◆ Buffer_subscript()

static PyObject * Buffer_subscript ( Buffer * self,
PyObject * item )
static

Definition at line 1015 of file bgl.cc.

References Buffer_item(), Buffer_slice(), and self.

◆ Buffer_to_list()

static PyObject * Buffer_to_list ( Buffer * self)
static

Definition at line 570 of file bgl.cc.

References Buffer_item(), len, and self.

Referenced by Buffer_to_list_recursive().

◆ Buffer_to_list_recursive()

static PyObject * Buffer_to_list_recursive ( Buffer * self)
static

Definition at line 582 of file bgl.cc.

References Buffer_item(), Buffer_to_list(), Buffer_to_list_recursive(), len, and self.

Referenced by Buffer_repr(), and Buffer_to_list_recursive().

◆ compare_dimensions()

static bool compare_dimensions ( int ndim,
const int * dim1,
const Py_ssize_t * dim2 )
static

Definition at line 532 of file bgl.cc.

Referenced by Buffer_new().

◆ gl_buffer_type_from_py_buffer()

static int gl_buffer_type_from_py_buffer ( Py_buffer * pybuffer)
static

◆ init_bgl_version_1_0_methods()

static void init_bgl_version_1_0_methods ( PyObject * submodule,
PyObject * dict )
static

Definition at line 1516 of file bgl.cc.

References PY_MOD_ADD_METHOD.

Referenced by BPyInit_bgl().

◆ init_bgl_version_1_1_constants()

static void init_bgl_version_1_1_constants ( PyObject * dict)
static

Definition at line 1795 of file bgl.cc.

References PY_DICT_ADD_INT.

Referenced by BPyInit_bgl().

◆ init_bgl_version_1_1_methods()

static void init_bgl_version_1_1_methods ( PyObject * submodule,
PyObject * dict )
static

Definition at line 1568 of file bgl.cc.

References PY_MOD_ADD_METHOD.

Referenced by BPyInit_bgl().

◆ init_bgl_version_1_2_constants()

static void init_bgl_version_1_2_constants ( PyObject * dict)
static

Definition at line 1997 of file bgl.cc.

References PY_DICT_ADD_INT.

Referenced by BPyInit_bgl().

◆ init_bgl_version_1_2_methods()

static void init_bgl_version_1_2_methods ( PyObject * submodule,
PyObject * dict )
static

Definition at line 1585 of file bgl.cc.

References PY_MOD_ADD_METHOD.

Referenced by BPyInit_bgl().

◆ init_bgl_version_1_3_constants()

static void init_bgl_version_1_3_constants ( PyObject * dict)
static

Definition at line 2037 of file bgl.cc.

References PY_DICT_ADD_INT.

Referenced by BPyInit_bgl().

◆ init_bgl_version_1_3_methods()

static void init_bgl_version_1_3_methods ( PyObject * submodule,
PyObject * dict )
static

Definition at line 1593 of file bgl.cc.

References PY_MOD_ADD_METHOD.

Referenced by BPyInit_bgl().

◆ init_bgl_version_1_4_constants()

static void init_bgl_version_1_4_constants ( PyObject * dict)
static

Definition at line 2100 of file bgl.cc.

References PY_DICT_ADD_INT.

Referenced by BPyInit_bgl().

◆ init_bgl_version_1_4_methods()

static void init_bgl_version_1_4_methods ( PyObject * submodule,
PyObject * dict )
static

Definition at line 1606 of file bgl.cc.

References PY_MOD_ADD_METHOD.

Referenced by BPyInit_bgl().

◆ init_bgl_version_1_5_constants()

static void init_bgl_version_1_5_constants ( PyObject * dict)
static

Definition at line 2129 of file bgl.cc.

References PY_DICT_ADD_INT.

Referenced by BPyInit_bgl().

◆ init_bgl_version_1_5_methods()

static void init_bgl_version_1_5_methods ( PyObject * submodule,
PyObject * dict )
static

Definition at line 1612 of file bgl.cc.

References PY_MOD_ADD_METHOD.

Referenced by BPyInit_bgl().

◆ init_bgl_version_2_0_constants()

static void init_bgl_version_2_0_constants ( PyObject * dict)
static

Definition at line 2160 of file bgl.cc.

References PY_DICT_ADD_INT.

Referenced by BPyInit_bgl().

◆ init_bgl_version_2_0_methods()

static void init_bgl_version_2_0_methods ( PyObject * submodule,
PyObject * dict )
static

Definition at line 1635 of file bgl.cc.

References PY_MOD_ADD_METHOD.

Referenced by BPyInit_bgl().

◆ init_bgl_version_2_1_constants()

static void init_bgl_version_2_1_constants ( PyObject * dict)
static

Definition at line 2244 of file bgl.cc.

References PY_DICT_ADD_INT.

Referenced by BPyInit_bgl().

◆ init_bgl_version_2_1_methods()

static void init_bgl_version_2_1_methods ( PyObject * submodule,
PyObject * dict )
static

Definition at line 1732 of file bgl.cc.

References PY_MOD_ADD_METHOD.

Referenced by BPyInit_bgl().

◆ init_bgl_version_3_0_constants()

static void init_bgl_version_3_0_constants ( PyObject * dict)
static

Definition at line 2264 of file bgl.cc.

References PY_DICT_ADD_INT.

Referenced by BPyInit_bgl().

◆ init_bgl_version_3_0_methods()

static void init_bgl_version_3_0_methods ( PyObject * submodule,
PyObject * dict )
static

Definition at line 1742 of file bgl.cc.

References PY_MOD_ADD_METHOD.

Referenced by BPyInit_bgl().

◆ init_bgl_version_3_1_constants()

static void init_bgl_version_3_1_constants ( PyObject * dict)
static

Definition at line 2504 of file bgl.cc.

References PY_DICT_ADD_INT.

Referenced by BPyInit_bgl().

◆ init_bgl_version_3_1_methods()

static void init_bgl_version_3_1_methods ( PyObject * submodule,
PyObject * dict )
static

Definition at line 1762 of file bgl.cc.

References PY_MOD_ADD_METHOD.

Referenced by BPyInit_bgl().

◆ init_bgl_version_3_2_constants()

static void init_bgl_version_3_2_constants ( PyObject * dict)
static

Definition at line 2569 of file bgl.cc.

References PY_DICT_ADD_INT, and PY_DICT_ADD_INT64.

Referenced by BPyInit_bgl().

◆ init_bgl_version_3_2_methods()

static void init_bgl_version_3_2_methods ( PyObject * submodule,
PyObject * dict )
static

Definition at line 1776 of file bgl.cc.

References PY_MOD_ADD_METHOD.

Referenced by BPyInit_bgl().

◆ init_bgl_version_3_3_constants()

static void init_bgl_version_3_3_constants ( PyObject * dict)
static

Definition at line 2637 of file bgl.cc.

References PY_DICT_ADD_INT.

Referenced by BPyInit_bgl().

◆ init_bgl_version_3_3_methods()

static void init_bgl_version_3_3_methods ( PyObject * ,
PyObject *  )
static

Definition at line 1787 of file bgl.cc.

Referenced by BPyInit_bgl().

◆ Method_ShaderSource()

static PyObject * Method_ShaderSource ( PyObject * self,
PyObject * args )
static

Definition at line 2712 of file bgl.cc.

References bgl_no_opengl_error().

◆ py_module_dict_add_int()

static void py_module_dict_add_int ( PyObject * dict,
const char * name,
int value )
static

Definition at line 1465 of file bgl.cc.

◆ py_module_dict_add_int64()

static void py_module_dict_add_int64 ( PyObject * dict,
const char * name,
int64_t value )
static

Definition at line 1472 of file bgl.cc.

◆ py_module_dict_add_method()

static void py_module_dict_add_method ( PyObject * submodule,
PyObject * dict,
PyMethodDef * method_def,
bool is_valid )
static

Definition at line 1479 of file bgl.cc.

References is_valid.

Variable Documentation

◆ BGL_bufferType

PyTypeObject BGL_bufferType

The type object.

Definition at line 634 of file bgl.cc.

Referenced by BGL_MakeBuffer_FromData(), and BPyInit_bgl().

◆ BGL_module_def

PyModuleDef BGL_module_def
static
Initial value:
= {
PyModuleDef_HEAD_INIT,
"bgl",
nullptr,
0,
nullptr,
nullptr,
nullptr,
nullptr,
nullptr,
}

Definition at line 1453 of file bgl.cc.

Referenced by BPyInit_bgl().

◆ Buffer_AsMapping

PyMappingMethods Buffer_AsMapping
static
Initial value:
= {
(lenfunc)Buffer_len,
(binaryfunc)Buffer_subscript,
(objobjargproc)Buffer_ass_subscript,
}
static int Buffer_ass_subscript(Buffer *self, PyObject *item, PyObject *value)
Definition bgl.cc:1051
static Py_ssize_t Buffer_len(Buffer *self)
Definition bgl.cc:865
static PyObject * Buffer_subscript(Buffer *self, PyObject *item)
Definition bgl.cc:1015

Definition at line 561 of file bgl.cc.

◆ Buffer_getseters

PyGetSetDef Buffer_getseters[]
static
Initial value:
= {
{"dimensions", (getter)Buffer_dimensions, nullptr, nullptr, nullptr},
{nullptr, nullptr, nullptr, nullptr, nullptr},
}
static PyObject * Buffer_dimensions(Buffer *self, void *)
Definition bgl.cc:603

Definition at line 629 of file bgl.cc.

◆ Buffer_methods

PyMethodDef Buffer_methods[]
static
Initial value:
= {
{"to_list", (PyCFunction)Buffer_to_list_recursive, METH_NOARGS, "return the buffer as a list"},
{nullptr, nullptr, 0, nullptr},
}
static PyObject * Buffer_to_list_recursive(Buffer *self)
Definition bgl.cc:582

Definition at line 620 of file bgl.cc.

◆ Buffer_SeqMethods

PySequenceMethods Buffer_SeqMethods
static
Initial value:
= {
(lenfunc)Buffer_len,
nullptr,
nullptr,
(ssizeargfunc)Buffer_item,
nullptr,
(ssizeobjargproc)Buffer_ass_item,
nullptr,
nullptr,
nullptr,
nullptr,
}
static PyObject * Buffer_item(Buffer *self, Py_ssize_t i)
Definition bgl.cc:870
static int Buffer_ass_item(Buffer *self, Py_ssize_t i, PyObject *v)
Definition bgl.cc:930

Definition at line 548 of file bgl.cc.

◆ LOG

CLG_LogRef LOG = {"bgl"}
static

Definition at line 35 of file bgl.cc.

Referenced by BPyInit_bgl().