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

SH::ShBackendCode Class Reference

Inheritance diagram for SH::ShBackendCode:

Inheritance graph
[legend]
Collaboration diagram for SH::ShBackendCode:

Collaboration graph
[legend]
List of all members.

Public Member Functions

virtual ~ShBackendCode ()
virtual bool allocateRegister (const ShVariableNodePtr &var)=0
 Used by a register allocater to signal that a register should be allocated to var.
virtual void freeRegister (const ShVariableNodePtr &var)=0
 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 ()=0
 Upload this shader code to the GPU.
virtual void bind ()=0
 Bind this shader code after it has been uploaded.
virtual void unbind ()=0
 Unbind this shader.
virtual void update ()=0
 Upload any textures and uniform parameters which are out-of-date but required.
virtual void updateUniform (const ShVariableNodePtr &uniform)=0
 Update the value of a uniform parameter after it has changed.
virtual std::ostream & print (std::ostream &out)=0
virtual std::ostream & describe_interface (std::ostream &out)=0
 Prints input and output specification in target-specific format.

Detailed Description

Definition at line 44 of file ShBackend.hpp.


Member Function Documentation

virtual bool SH::ShBackendCode::allocateRegister const ShVariableNodePtr var  )  [pure virtual]
 

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

Return true iff the allocation succeeded.

Implemented in ShCc::CcBackendCode, shgl::ArbCode, shgl::GlslCode, and ShSm::BackendCode.


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