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

shgl Namespace Reference

Turn this on if you want timings on std::cerr. More...


Classes

struct  ArbOpInfo
 Information about the operations from ArbOp. More...
struct  ArbInst
 An ARB instruction. More...
struct  ArbReg
 An ARB register. More...

Typedefs

typedef SH::ShPointer< ArbCode > ArbCodePtr
typedef SH::ShPointer< GlslCode > GlslCodePtr
typedef map< SH::ShOperation,
GlslOpCodeVecs > 
GlslOpCodeMap
typedef SH::ShPointer< GlslSet > GlslSetPtr
typedef SH::ShPointer< const
GlslSet > 
GlslSetCPtr
typedef SH::ShPointer< GlTextureName > GlTextureNamePtr
typedef SH::ShPointer< GlTextureStorage > GlTextureStoragePtr
typedef SH::ShPointer< GLXPBufferContext > GLXPBufferContextPtr
typedef SH::ShPointer< const
GLXPBufferContext > 
GLXPBufferContextCPtr
typedef SH::ShPointer< PBufferHandle > PBufferHandlePtr
typedef SH::ShPointer< const
PBufferHandle > 
PBufferHandleCPtr
typedef SH::ShPointer< PBufferStorage > PBufferStoragePtr
typedef SH::ShPointer< const
PBufferStorage > 
PBufferStorageCPtr
typedef SH::ShPointer< PBufferContext > PBufferContextPtr
typedef SH::ShPointer< const
PBufferContext > 
PBufferContextCPtr
typedef std::map< SH::ShChannelNodePtr,
SH::ShTextureNodePtr
ChannelMap
typedef SH::ShPointer< WGLPBufferContext > WGLPBufferContextPtr
typedef SH::ShPointer< const
WGLPBufferContext > 
WGLPBufferContextCPtr

Enumerations

enum  ArbOp {
  SH_ARB_ABS, SH_ARB_FLR, SH_ARB_FRC, SH_ARB_LIT,
  SH_ARB_MOV, SH_ARB_EX2, SH_ARB_LG2, SH_ARB_RCP,
  SH_ARB_RSQ, SH_ARB_POW, SH_ARB_ADD, SH_ARB_DP3,
  SH_ARB_DP4, SH_ARB_DPH, SH_ARB_DST, SH_ARB_MAX,
  SH_ARB_MIN, SH_ARB_MUL, SH_ARB_SGE, SH_ARB_SLT,
  SH_ARB_SUB, SH_ARB_XPD, SH_ARB_MAD, SH_ARB_SWZ,
  SH_ARB_EXP, SH_ARB_LOG, SH_ARB_ARL, SH_ARB_ARRAYMOV,
  SH_ARB_COS, SH_ARB_SIN, SH_ARB_SCS, SH_ARB_CMP,
  SH_ARB_LRP, SH_ARB_TEX, SH_ARB_TXP, SH_ARB_TXB,
  SH_ARB_KIL, SH_ARB_SEQ, SH_ARB_SGT, SH_ARB_SLE,
  SH_ARB_SNE, SH_ARB_SFL, SH_ARB_STR, SH_ARB_DDX,
  SH_ARB_DDY, SH_ARB_RFL, SH_ARB_TXD, SH_ARB_SSG,
  SH_ARB_BRA, SH_ARB_LABEL, SH_ARB_DIV, SH_ARB_DP2,
  SH_ARB_NRM, SH_ARB_IF, SH_ARB_ELSE, SH_ARB_ENDIF,
  SH_ARB_REP, SH_ARB_ENDREP, SH_ARB_BRK, SH_ARB_RET,
  SH_ARB_FUN
}
 All the possible operations in the ARB spec.
enum  ArbRegType {
  SH_ARB_REG_ATTRIB, SH_ARB_REG_PARAM, SH_ARB_REG_TEMP, SH_ARB_REG_HALF_TEMP,
  SH_ARB_REG_ADDRESS, SH_ARB_REG_OUTPUT, SH_ARB_REG_CONST, SH_ARB_REG_TEXTURE
}
 Possible register types in the ARB spec.
enum  ArbRegBinding {
  SH_ARB_REG_PROGRAMLOC, SH_ARB_REG_PROGRAMENV, SH_ARB_REG_STATE, SH_ARB_REG_RESULTCOL,
  SH_ARB_REG_VERTEXPOS, SH_ARB_REG_VERTEXWGT, SH_ARB_REG_VERTEXNRM, SH_ARB_REG_VERTEXCOL,
  SH_ARB_REG_VERTEXFOG, SH_ARB_REG_VERTEXTEX, SH_ARB_REG_VERTEXMAT, SH_ARB_REG_VERTEXATR,
  SH_ARB_REG_RESULTPOS, SH_ARB_REG_RESULTFOG, SH_ARB_REG_RESULTPTS, SH_ARB_REG_RESULTTEX,
  SH_ARB_REG_FRAGMENTCOL, SH_ARB_REG_FRAGMENTTEX, SH_ARB_REG_FRAGMENTFOG, SH_ARB_REG_FRAGMENTPOS,
  SH_ARB_REG_RESULTDPT, SH_ARB_REG_NONE
}
 Possible bindings for a register (see ARB spec). More...
enum  GlslProgramType { SH_GLSL_FP, SH_GLSL_VP }
enum  GlslVarBinding {
  SH_GLSL_VAR_TEXCOORD, SH_GLSL_VAR_COLOR, SH_GLSL_VAR_SECONDARYCOLOR, SH_GLSL_VAR_VERTEX,
  SH_GLSL_VAR_NORMAL, SH_GLSL_VAR_MULTITEXCOORD0, SH_GLSL_VAR_MULTITEXCOORD1, SH_GLSL_VAR_MULTITEXCOORD2,
  SH_GLSL_VAR_MULTITEXCOORD3, SH_GLSL_VAR_MULTITEXCOORD4, SH_GLSL_VAR_MULTITEXCOORD5, SH_GLSL_VAR_MULTITEXCOORD6,
  SH_GLSL_VAR_MULTITEXCOORD7, SH_GLSL_VAR_FRAGCOORD, SH_GLSL_VAR_POSITION, SH_GLSL_VAR_FRONTCOLOR,
  SH_GLSL_VAR_FRONTSECONDARYCOLOR, SH_GLSL_VAR_FRAGDEPTH, SH_GLSL_VAR_FRAGCOLOR, SH_GLSL_VAR_NONE
}
 Possible bindings for an input/output variable.
enum  FloatExtension { SH_ARB_NV_FLOAT_BUFFER, SH_ARB_ATI_PIXEL_FORMAT_FLOAT, SH_ARB_NO_FLOAT_EXT }

Functions

unsigned int arbTarget (const std::string &unit)
ArbBindingSpecs * arbBindingSpecs (bool output, const std::string &unit)
void dump (ShProgramNodePtr foo, std::string desc)
std::ostream & operator<< (std::ostream &out, LineNumberer &l)
bool mark (ShLinearAllocator &allocator, ShVariableNodePtr node, int i, bool half)
bool markable (ShVariableNodePtr node, bool half)
std::ostream & operator<< (std::ostream &out, const ArbReg &reg)
 Output a use of an arb register.
void shGlCheckError (const char *desc, const char *file, int line)
GLenum shGlType (SH::ShValueType valueType, SH::ShValueType &convertedType)
unsigned int glslTarget (const std::string &unit)
void print_infolog (GLhandleARB obj, std::ostream &out)
void print_shader_source (GLhandleARB shader, std::ostream &out)
string glsl_typename (ShValueType type, int size)
std::string glsl_typename (SH::ShValueType type, int size)
GlslBindingSpecs * glslBindingSpecs (bool output, GlslProgramType unit)
ShCubeDirection glToShCubeDir (GLuint target)
GLenum shGlInternalFormat (const ShTextureNodePtr &node)
GLenum shGlFormat (const ShTextureNodePtr &node)
GLenum shGlType (ShValueType valueType, ShValueType &convertedType)
void split_program (ShProgramNode *program, std::list< ShProgramNodePtr > &programs, const std::string &target)
void split_program (SH::ShProgramNode *program, std::list< SH::ShProgramNodePtr > &programs, const std::string &target)

Variables

ArbBindingSpecs arbVertexAttribBindingSpecs []
ArbBindingSpecs arbFragmentAttribBindingSpecs []
ArbBindingSpecs arbVertexOutputBindingSpecs []
ArbBindingSpecs arbFragmentOutputBindingSpecs []
const unsigned int SH_ARB_ANY
const unsigned int SH_ARB_FP
const unsigned int SH_ARB_VP
const unsigned int SH_ARB_NVFP
const unsigned int SH_ARB_NVFP2
const unsigned int SH_ARB_ATIDB
const unsigned int SH_ARB_NVVP2
const unsigned int SH_ARB_NVVP3
const unsigned int SH_ARB_VEC1
const unsigned int SH_ARB_VEC2
const unsigned int SH_ARB_VEC3
const unsigned int SH_ARB_VEC4
const unsigned int SH_ARB_END
ArbOpInfo arbOpInfo []
char * arbCCnames []
GlslBindingSpecs glslVertexInputBindingSpecs []
GlslBindingSpecs glslFragmentInputBindingSpecs []
GlslBindingSpecs glslVertexOutputBindingSpecs []
GlslBindingSpecs glslFragmentOutputBindingSpecs []
const unsigned int shGlTargets []
const unsigned int shGlCubeMapTargets []


Detailed Description

Turn this on if you want timings on std::cerr.

Enumeration Type Documentation

enum shgl::ArbRegBinding
 

Possible bindings for a register (see ARB spec).

Enumeration values:
SH_ARB_REG_RESULTPTS  Result point size.

Definition at line 49 of file ArbReg.hpp.


Generated on Thu Apr 21 17:35:38 2005 for Sh by  doxygen 1.4.2