shgl::ArbCode Class Reference

Inheritance diagram for shgl::ArbCode:

Inheritance graph
[legend]
Collaboration diagram for shgl::ArbCode:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 ArbCode (const SH::ShProgramNodeCPtr &program, const std::string &target, TextureStrategy *texture)
virtual ~ArbCode ()
virtual bool allocateRegister (const SH::ShVariableNodePtr &var)
 Used by a register allocater to signal that a register should be allocated to var.
virtual void freeRegister (const SH::ShVariableNodePtr &var)
 Used by the register allocator to signal that the register used by var can be used by other registers in future allocateRegister() calls.
virtual void upload ()
 Upload this shader code to the GPU.
virtual void bind ()
 Bind this shader code after it has been uploaded.
virtual void unbind ()
 Unbind this shader.
virtual void update ()
 Upload any textures and uniform parameters which are out-of-date but required.
virtual void updateUniform (const SH::ShVariableNodePtr &uniform)
 Update the value of a uniform parameter after it has changed.
std::ostream & print (std::ostream &out)
std::ostream & describe_interface (std::ostream &out)
 Prints input and output specification in target-specific format.
std::ostream & describe_bindings (std::ostream &out)
 Prints binding description in target-specific format.
void generate ()
 Actually generate the code, and do register allocation.

Detailed Description

Definition at line 60 of file ArbCode.hpp.


Member Function Documentation

bool shgl::ArbCode::allocateRegister const SH::ShVariableNodePtr var  )  [virtual]
 

Used by a register allocater to signal that a register should be allocated to var.

Return true iff the allocation succeeded.

Implements SH::ShBackendCode.

Definition at line 270 of file ArbCode.cpp.


The documentation for this class was generated from the following files:
Generated on Thu Feb 16 14:57:37 2006 for Sh by  doxygen 1.4.6