PyOpenGL-accelerate 4.0.0a8__tar.gz → 4.0.0b1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {pyopengl_accelerate-4.0.0a8 → pyopengl_accelerate-4.0.0b1}/OpenGL_accelerate/__init__.py +1 -1
- {pyopengl_accelerate-4.0.0a8 → pyopengl_accelerate-4.0.0b1}/PKG-INFO +2 -2
- {pyopengl_accelerate-4.0.0a8 → pyopengl_accelerate-4.0.0b1}/PyOpenGL_accelerate.egg-info/PKG-INFO +2 -2
- {pyopengl_accelerate-4.0.0a8 → pyopengl_accelerate-4.0.0b1}/PyOpenGL_accelerate.egg-info/SOURCES.txt +2 -1
- pyopengl_accelerate-4.0.0b1/PyOpenGL_accelerate.egg-info/requires.txt +1 -0
- {pyopengl_accelerate-4.0.0a8 → pyopengl_accelerate-4.0.0b1}/src/vbo.pyx +1 -18
- pyopengl_accelerate-4.0.0b1/tests/test_vbo_references.py +46 -0
- pyopengl_accelerate-4.0.0a8/PyOpenGL_accelerate.egg-info/requires.txt +0 -1
- {pyopengl_accelerate-4.0.0a8 → pyopengl_accelerate-4.0.0b1}/MANIFEST.in +0 -0
- {pyopengl_accelerate-4.0.0a8 → pyopengl_accelerate-4.0.0b1}/OpenGL_accelerate/formathandler.pxd +0 -0
- {pyopengl_accelerate-4.0.0a8 → pyopengl_accelerate-4.0.0b1}/OpenGL_accelerate/wrapper.pxd +0 -0
- {pyopengl_accelerate-4.0.0a8 → pyopengl_accelerate-4.0.0b1}/PyOpenGL_accelerate.egg-info/dependency_links.txt +0 -0
- {pyopengl_accelerate-4.0.0a8 → pyopengl_accelerate-4.0.0b1}/PyOpenGL_accelerate.egg-info/top_level.txt +0 -0
- {pyopengl_accelerate-4.0.0a8 → pyopengl_accelerate-4.0.0b1}/README.md +0 -0
- {pyopengl_accelerate-4.0.0a8 → pyopengl_accelerate-4.0.0b1}/license.txt +0 -0
- {pyopengl_accelerate-4.0.0a8 → pyopengl_accelerate-4.0.0b1}/pyproject.toml +0 -0
- {pyopengl_accelerate-4.0.0a8 → pyopengl_accelerate-4.0.0b1}/setup.cfg +0 -0
- {pyopengl_accelerate-4.0.0a8 → pyopengl_accelerate-4.0.0b1}/setup.py +0 -0
- {pyopengl_accelerate-4.0.0a8 → pyopengl_accelerate-4.0.0b1}/src/arraydatatype.pyx +0 -0
- {pyopengl_accelerate-4.0.0a8 → pyopengl_accelerate-4.0.0b1}/src/buffers_formathandler.pyx +0 -0
- {pyopengl_accelerate-4.0.0a8 → pyopengl_accelerate-4.0.0b1}/src/c/generated/pygl_EGL.c +0 -0
- {pyopengl_accelerate-4.0.0a8 → pyopengl_accelerate-4.0.0b1}/src/c/generated/pygl_GL.c +0 -0
- {pyopengl_accelerate-4.0.0a8 → pyopengl_accelerate-4.0.0b1}/src/c/generated/pygl_GLES1.c +0 -0
- {pyopengl_accelerate-4.0.0a8 → pyopengl_accelerate-4.0.0b1}/src/c/generated/pygl_GLES2.c +0 -0
- {pyopengl_accelerate-4.0.0a8 → pyopengl_accelerate-4.0.0b1}/src/c/generated/pygl_GLES3.c +0 -0
- {pyopengl_accelerate-4.0.0a8 → pyopengl_accelerate-4.0.0b1}/src/c/generated/pygl_GLSC2.c +0 -0
- {pyopengl_accelerate-4.0.0a8 → pyopengl_accelerate-4.0.0b1}/src/c/generated/pygl_GLX.c +0 -0
- {pyopengl_accelerate-4.0.0a8 → pyopengl_accelerate-4.0.0b1}/src/c/generated/pygl_WGL.c +0 -0
- {pyopengl_accelerate-4.0.0a8 → pyopengl_accelerate-4.0.0b1}/src/c/generated/pygl_generated.c +0 -0
- {pyopengl_accelerate-4.0.0a8 → pyopengl_accelerate-4.0.0b1}/src/c/generated/pygl_modules.c +0 -0
- {pyopengl_accelerate-4.0.0a8 → pyopengl_accelerate-4.0.0b1}/src/c/pygl_handwritten.c +0 -0
- {pyopengl_accelerate-4.0.0a8 → pyopengl_accelerate-4.0.0b1}/src/c/pygl_runtime.c +0 -0
- {pyopengl_accelerate-4.0.0a8 → pyopengl_accelerate-4.0.0b1}/src/errorchecker.pyx +0 -0
- {pyopengl_accelerate-4.0.0a8 → pyopengl_accelerate-4.0.0b1}/src/formathandler.pyx +0 -0
- {pyopengl_accelerate-4.0.0a8 → pyopengl_accelerate-4.0.0b1}/src/latebind.pyx +0 -0
- {pyopengl_accelerate-4.0.0a8 → pyopengl_accelerate-4.0.0b1}/src/nones_formathandler.pyx +0 -0
- {pyopengl_accelerate-4.0.0a8 → pyopengl_accelerate-4.0.0b1}/src/numpy_formathandler.pyx +0 -0
- {pyopengl_accelerate-4.0.0a8 → pyopengl_accelerate-4.0.0b1}/src/wrapper.pyx +0 -0
- {pyopengl_accelerate-4.0.0a8 → pyopengl_accelerate-4.0.0b1}/tests/test_arraydatatypeaccel.py +0 -0
- {pyopengl_accelerate-4.0.0a8 → pyopengl_accelerate-4.0.0b1}/tests/test_numpyaccel.py +0 -0
|
@@ -13,7 +13,7 @@ import re as _re
|
|
|
13
13
|
#: the two share generated tables, the dependency is pinned to this number,
|
|
14
14
|
#: and the extension refuses a PyOpenGL stating another. A release bumps
|
|
15
15
|
#: both this and ``OpenGL/version.py``.
|
|
16
|
-
__version__ = "4.0.
|
|
16
|
+
__version__ = "4.0.0b1"
|
|
17
17
|
#: The numeric release ``__version__`` names, without a pre-release marker,
|
|
18
18
|
#: which ``OpenGL.acceleratesupport`` compares with its floor.
|
|
19
19
|
__version_tuple__ = tuple(
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: PyOpenGL-accelerate
|
|
3
|
-
Version: 4.0.
|
|
3
|
+
Version: 4.0.0b1
|
|
4
4
|
Summary: Cython-coded accelerators for PyOpenGL
|
|
5
5
|
Home-page: http://pyopengl.sourceforge.net
|
|
6
6
|
Download-URL: http://sourceforge.net/project/showfiles.php?group_id=5988
|
|
@@ -24,7 +24,7 @@ Classifier: Intended Audience :: Developers
|
|
|
24
24
|
Requires-Python: >=3.9
|
|
25
25
|
Description-Content-Type: text/markdown
|
|
26
26
|
License-File: license.txt
|
|
27
|
-
Requires-Dist: PyOpenGL==4.0.
|
|
27
|
+
Requires-Dist: PyOpenGL==4.0.0b1
|
|
28
28
|
Dynamic: download-url
|
|
29
29
|
Dynamic: license-file
|
|
30
30
|
Dynamic: requires-dist
|
{pyopengl_accelerate-4.0.0a8 → pyopengl_accelerate-4.0.0b1}/PyOpenGL_accelerate.egg-info/PKG-INFO
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: PyOpenGL-accelerate
|
|
3
|
-
Version: 4.0.
|
|
3
|
+
Version: 4.0.0b1
|
|
4
4
|
Summary: Cython-coded accelerators for PyOpenGL
|
|
5
5
|
Home-page: http://pyopengl.sourceforge.net
|
|
6
6
|
Download-URL: http://sourceforge.net/project/showfiles.php?group_id=5988
|
|
@@ -24,7 +24,7 @@ Classifier: Intended Audience :: Developers
|
|
|
24
24
|
Requires-Python: >=3.9
|
|
25
25
|
Description-Content-Type: text/markdown
|
|
26
26
|
License-File: license.txt
|
|
27
|
-
Requires-Dist: PyOpenGL==4.0.
|
|
27
|
+
Requires-Dist: PyOpenGL==4.0.0b1
|
|
28
28
|
Dynamic: download-url
|
|
29
29
|
Dynamic: license-file
|
|
30
30
|
Dynamic: requires-dist
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
PyOpenGL==4.0.0b1
|
|
@@ -9,10 +9,6 @@ try:
|
|
|
9
9
|
except NameError as err:
|
|
10
10
|
long = int
|
|
11
11
|
|
|
12
|
-
cdef extern from "Python.h":
|
|
13
|
-
cdef void Py_XINCREF( object )
|
|
14
|
-
cdef void Py_XDECREF( object )
|
|
15
|
-
|
|
16
12
|
_NULL = object()
|
|
17
13
|
|
|
18
14
|
cdef class VBO:
|
|
@@ -90,11 +86,6 @@ cdef class VBO:
|
|
|
90
86
|
self.target_spec = target
|
|
91
87
|
self._copy_segments = []
|
|
92
88
|
self._I_ = None
|
|
93
|
-
def __dealloc__( self ):
|
|
94
|
-
"""Deallocate our references"""
|
|
95
|
-
if self.data is not None:
|
|
96
|
-
Py_XDECREF( self.data )
|
|
97
|
-
self.data = None
|
|
98
89
|
@property
|
|
99
90
|
def implementation( self ):
|
|
100
91
|
"""Retrieve our implementation reference"""
|
|
@@ -117,10 +108,7 @@ cdef class VBO:
|
|
|
117
108
|
"""Update our entire array with new data"""
|
|
118
109
|
return self.c_set_array( data, size )
|
|
119
110
|
cdef c_set_array( self, data, size ):
|
|
120
|
-
"""
|
|
121
|
-
if self.data is not None:
|
|
122
|
-
Py_XDECREF( self.data )
|
|
123
|
-
Py_XINCREF( data )
|
|
111
|
+
"""Hold ``data`` as the array; an attribute of the extension type holds its own reference"""
|
|
124
112
|
self.data = data
|
|
125
113
|
if size is None and self.data is not None:
|
|
126
114
|
size = self.arrayType.arrayByteCount( self.data )
|
|
@@ -275,12 +263,7 @@ cdef class VBOOffset:
|
|
|
275
263
|
cdef public unsigned int offset
|
|
276
264
|
def __cinit__( self, VBO vbo, unsigned int offset ):
|
|
277
265
|
self.vbo = vbo
|
|
278
|
-
Py_XINCREF( vbo )
|
|
279
266
|
self.offset = offset
|
|
280
|
-
def __dealloc__( self ):
|
|
281
|
-
if self.vbo is not None:
|
|
282
|
-
Py_XDECREF( self.vbo )
|
|
283
|
-
self.vbo = None
|
|
284
267
|
|
|
285
268
|
def __getattr__( self, key ):
|
|
286
269
|
if key != 'vbo':
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"""The accelerated VBO holds its array and its offsets hold their VBO by ordinary references."""
|
|
2
|
+
import gc
|
|
3
|
+
import sys
|
|
4
|
+
|
|
5
|
+
import numpy as np
|
|
6
|
+
import pytest
|
|
7
|
+
|
|
8
|
+
from OpenGL import acceleratesupport
|
|
9
|
+
from OpenGL.arrays import vbo
|
|
10
|
+
|
|
11
|
+
# Switched off is as good as absent: OpenGL.arrays.vbo is then the Python VBO.
|
|
12
|
+
if not acceleratesupport.ACCELERATE_AVAILABLE:
|
|
13
|
+
pytest.skip('the accelerators are not in use here', allow_module_level=True)
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
def test_the_vbo_is_the_accelerated_one():
|
|
17
|
+
assert vbo.VBO.__module__ == 'OpenGL_accelerate.vbo'
|
|
18
|
+
assert vbo.VBOOffset.__module__ == 'OpenGL_accelerate.vbo'
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
def test_an_array_assigned_to_data_outlives_the_buffer():
|
|
22
|
+
"""``data`` is a public attribute: an array put there is held like any other."""
|
|
23
|
+
first = np.zeros(4, 'f')
|
|
24
|
+
second = np.ones(4, 'f')
|
|
25
|
+
third = np.full(2, 2.0, 'f')
|
|
26
|
+
counts = [sys.getrefcount(item) for item in (first, second, third)]
|
|
27
|
+
buffer = vbo.VBO(first)
|
|
28
|
+
buffer.data = second
|
|
29
|
+
buffer.set_array(third)
|
|
30
|
+
buffer.data = second
|
|
31
|
+
del buffer
|
|
32
|
+
gc.collect()
|
|
33
|
+
assert [sys.getrefcount(item) for item in (first, second, third)] == counts
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
def test_an_offset_holds_its_buffer_and_lets_it_go():
|
|
37
|
+
data = np.zeros(4, 'f')
|
|
38
|
+
buffer = vbo.VBO(data)
|
|
39
|
+
count = sys.getrefcount(buffer)
|
|
40
|
+
offset = buffer + 8
|
|
41
|
+
assert offset.offset == 8 and offset.vbo is buffer
|
|
42
|
+
offset.vbo = vbo.VBO(np.zeros(2, 'f'))
|
|
43
|
+
offset.vbo = buffer
|
|
44
|
+
del offset
|
|
45
|
+
gc.collect()
|
|
46
|
+
assert sys.getrefcount(buffer) == count
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
PyOpenGL==4.0.0a8
|
|
File without changes
|
{pyopengl_accelerate-4.0.0a8 → pyopengl_accelerate-4.0.0b1}/OpenGL_accelerate/formathandler.pxd
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pyopengl_accelerate-4.0.0a8 → pyopengl_accelerate-4.0.0b1}/src/c/generated/pygl_generated.c
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pyopengl_accelerate-4.0.0a8 → pyopengl_accelerate-4.0.0b1}/tests/test_arraydatatypeaccel.py
RENAMED
|
File without changes
|
|
File without changes
|