picogl.safe

glGenSafe

Example Usage:

>>>self.hetatm_buffers_vao = gl_gen_safe(glGenVertexArrays) …self.hetatm_buffers_vbo_pos = gl_gen_safe(glGenBuffers)

Functions

gl_gen_safe(→ int)

glGenSafe

gl_delete_safe(→ None)

glDeleteSafe

Module Contents

picogl.safe.gl_gen_safe(gen_func: Callable[[int], int | list[int] | tuple[int] | numpy.ndarray], count: int = 1) int[source]

glGenSafe

Parameters:
  • gen_func – Callable An OpenGL generator function like glGenVertexArrays or glGenBuffers

  • count – Number of items to generate (default is 1)

Returns:

The first generated OpenGL handle (GLuint)

Calls an OpenGL glGen* function safely and returns a single GLuint handle.

picogl.safe.gl_delete_safe(delete_func: Callable[[int, int | Sequence[int]], None], handle: int | Sequence[int]) None[source]

glDeleteSafe

Parameters:
  • delete_func – An OpenGL delete function like glDeleteBuffers or glDeleteVertexArrays

  • handle – A single handle (int) or a sequence of handles (list/tuple/data)

Safely deletes OpenGL resources using glDelete* functions.