Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

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.
void generate ()
 Actually generate the code, and do register allocation.

Detailed Description

Definition at line 63 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 245 of file ArbCode.cpp.


The documentation for this class was generated from the following files:
Generated on Wed Jun 15 18:16:53 2005 for Sh by  doxygen 1.4.3-20050530