org.xith3d.scenegraph
Class GLSLContext

java.lang.Object
  extended by org.xith3d.scenegraph.SceneGraphObject
      extended by org.xith3d.scenegraph.NodeComponent
          extended by org.xith3d.scenegraph.ShaderProgramContext<GLSLShaderProgram>
              extended by org.xith3d.scenegraph.GLSLContext
All Implemented Interfaces:
java.lang.Comparable<ShaderProgramContext<GLSLShaderProgram>>, org.jagatoo.datatypes.Enableable, org.jagatoo.datatypes.NamableObject, org.jagatoo.datatypes.NamedObject, StateTrackable<ShaderProgramContext<GLSLShaderProgram>>

public class GLSLContext
extends ShaderProgramContext<GLSLShaderProgram>

Created on Jul 7, 2006 by florian for project 'xith3d_glsl_shader_support'


Field Summary
 
Fields inherited from class org.xith3d.scenegraph.SceneGraphObject
XITH3D_USERDATAKEY_OLDUSERDATA
 
Constructor Summary
GLSLContext(GLSLShaderProgram program)
           
 
Method Summary
 GLSLContext cloneNodeComponent(boolean forceDuplicate)
           
 int compareTo(ShaderProgramContext<GLSLShaderProgram> o)
          
protected  void duplicateNodeComponent(NodeComponent original, boolean forceDuplicate)
           
 boolean equals(java.lang.Object o)
          
 void freeOpenGLResources(CanvasPeer canvasPeer)
          This method frees OpenGL resources (names) for all this NodeComponent and all child-components.
 GLSLContext getCopy()
           
 GLSLParameters getUniformParameters()
           
static boolean isDebuggingEnabled()
           
protected  GLSLShaderProgram newProgramInstance()
          
static void setDebuggingEnabled(boolean debuggingEnabled)
           
 
Methods inherited from class org.xith3d.scenegraph.ShaderProgramContext
getProgram, getStateId, getStateNode, isEnabled, setEnabled, setStateNode
 
Methods inherited from class org.xith3d.scenegraph.NodeComponent
freeOpenGLResources, getDuplicateOnCloneTree, getModListener, isChanged, isChanged2, setChanged, setDuplicateOnCloneTree, setModListener
 
Methods inherited from class org.xith3d.scenegraph.SceneGraphObject
getName, getUserData, getUserData, getUserDataMap, isLive, setLive, setName, setUserData, setUserData, setUserDataRecursive, setUserDataRecursive, toString
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

GLSLContext

public GLSLContext(GLSLShaderProgram program)
Method Detail

freeOpenGLResources

public void freeOpenGLResources(CanvasPeer canvasPeer)
This method frees OpenGL resources (names) for all this NodeComponent and all child-components.

Overrides:
freeOpenGLResources in class ShaderProgramContext<GLSLShaderProgram>

setDebuggingEnabled

public static void setDebuggingEnabled(boolean debuggingEnabled)

isDebuggingEnabled

public static boolean isDebuggingEnabled()

getUniformParameters

public final GLSLParameters getUniformParameters()

getCopy

public GLSLContext getCopy()
Returns:
a copy of the state of the referenced trackable object.

newProgramInstance

protected GLSLShaderProgram newProgramInstance()

Specified by:
newProgramInstance in class ShaderProgramContext<GLSLShaderProgram>

duplicateNodeComponent

protected void duplicateNodeComponent(NodeComponent original,
                                      boolean forceDuplicate)
Overrides:
duplicateNodeComponent in class ShaderProgramContext<GLSLShaderProgram>

cloneNodeComponent

public GLSLContext cloneNodeComponent(boolean forceDuplicate)
Specified by:
cloneNodeComponent in class NodeComponent

equals

public boolean equals(java.lang.Object o)
Description copied from class: ShaderProgramContext

Specified by:
equals in class ShaderProgramContext<GLSLShaderProgram>

compareTo

public int compareTo(ShaderProgramContext<GLSLShaderProgram> o)
Description copied from class: ShaderProgramContext

Specified by:
compareTo in interface java.lang.Comparable<ShaderProgramContext<GLSLShaderProgram>>
Specified by:
compareTo in class ShaderProgramContext<GLSLShaderProgram>