Download lib/python3.9/site-packages/OpenGL/platform/__init__.py from camenduru/slahmr-test: direct link, hf CLI and curl.
- Browser
- Download file 2.59 kB
-
https://huggingface.co/camenduru/slahmr-test/resolve/main/lib/python3.9/site-packages/OpenGL/platform/__init__.py
- Command line
-
hf download hf://camenduru/slahmr-test/lib/python3.9/site-packages/OpenGL/platform/__init__.py
-
curl -L -o __init__.py https://huggingface.co/camenduru/slahmr-test/resolve/main/lib/python3.9/site-packages/OpenGL/platform/__init__.py
2.59 kB
| """Abstraction for the platform-specific code in PyOpenGL | |
| Each supported platform has a module which provides the | |
| specific functionality required to support the base OpenGL | |
| functionality on that platform. These modules are | |
| registered using plugins in the: | |
| OpenGL.plugin.PlatformPlugin | |
| objects. To support a new platform you'll need to create | |
| a new PlatformPlugin instance *before* you import | |
| OpenGL.platform . Once you have a working platform | |
| module, please consider contributing it back to the project. | |
| See baseplatform.BasePlatform for the core functionality | |
| of a platform implementation. See the various platform | |
| specific modules for examples to use when porting. | |
| """ | |
| import os, sys | |
| from OpenGL.plugins import PlatformPlugin | |
| def _load( ): | |
| """Load the os.name plugin for the platform functionality""" | |
| key = (os.environ.get( 'PYOPENGL_PLATFORM'), sys.platform,os.name) | |
| plugin = PlatformPlugin.match( key ) | |
| plugin_class = plugin.load() | |
| plugin.loaded = True | |
| # create instance of this platform implementation | |
| plugin = plugin_class() | |
| # install into the platform module's namespace now | |
| plugin.install(globals()) | |
| return plugin | |
| _load() | |
| def types(resultType,*argTypes): | |
| """Decorator to add returnType, argTypes and argNames to a function""" | |
| def add_types( function ): | |
| """Adds the given metadata to the function, introspects var names from declaration""" | |
| function.resultType = resultType | |
| function.argTypes = argTypes | |
| if hasattr( function, 'func_code' ): # python 2.x | |
| function.argNames = function.func_code.co_varnames | |
| else: | |
| function.argNames = function.__code__.co_varnames | |
| return function | |
| return add_types | |
| def unpack_constants( constants, namespace ): | |
| """Create constants and add to the namespace""" | |
| from OpenGL.constant import Constant | |
| for line in constants.splitlines(): | |
| if line and line.split(): | |
| name,value = line.split() | |
| namespace[name] = Constant( name, int(value,16) ) | |
| def createFunction( function, dll,extension,deprecated=False, error_checker=None ): | |
| """Allows the more compact declaration format to use the old-style constructor""" | |
| return nullFunction( | |
| function.__name__, | |
| dll or PLATFORM.GL, | |
| resultType = function.resultType, | |
| argTypes = function.argTypes, | |
| doc = None, argNames = function.argNames, | |
| extension = extension, | |
| deprecated = deprecated, | |
| module = function.__module__, | |
| error_checker = error_checker, | |
| ) | |