Source code for cg.context

# -*- coding: utf-8 -*-
from __future__ import absolute_import, division, print_function, unicode_literals

from cg.effect import Effect
from cg.utils import Disposable

[docs]class Context(Disposable): ''' Wraps Cg context. ''' def __init__(self, cgcontext, bridge): self._cgcontext = cgcontext self._bridge = bridge def perform_dispose(self): self._bridge.cgDestroyContext(self._cgcontext)
[docs] def create_effect_from_file(self, filename): ''' Loads effect source from file and creates effect using it. :param string filename: file containing effect source. :rtype: :py:class:`cg.effect.Effect` ''' cgeffect = self._bridge.cgCreateEffectFromFile(self._cgcontext, filename) return Effect(cgeffect, self._bridge)
[docs] def create_effect(self, source): ''' Creates effect from source. :param string source: effect source :rtype: :py:class:`cg.effect.Effect` ''' cgeffect = self._bridge.cgCreateEffect(self._cgcontext, source) return Effect(cgeffect, self._bridge)
def get_last_listing(self): return self._bridge.cgGetLastListing(self._cgcontext) @property def manage_texture_parameters(self): ''' Gets and sets whether Cg is supposed to automatically manage (enable/disable) texture parameters (bool). ''' return self._bridge.cgGLGetManageTextureParameters(self._cgcontext) @manage_texture_parameters.setter
[docs] def manage_texture_parameters(self, value): self._bridge.cgGLSetManageTextureParameters(self._cgcontext, value)
[docs] def register_states(self): ''' Register graphics API states for use in effects. .. note:: This method is idempotent. ''' self._bridge.cgGLRegisterStates(self._cgcontext)
class ContextFactory(object): def __init__(self, bridge): self._bridge = bridge def create(self): cgcontext = self._bridge.cgCreateContext() return Context(cgcontext, self._bridge)

Project Versions

This Page