arbeit
Main Page | Namespace List | Class Hierarchy | Alphabetical List | Compound List | File List | Namespace Members | Compound Members | File Members

glift::FragProgARB Class Reference

#include <fragProgARB.h>

Inheritance diagram for glift::FragProgARB:

glift::PixelShader glift::StateGLI glift::GliftObject glift::Compilable gutz::Counted List of all members.

Detailed Description

FragProgARB.h: interface for the FragProgARB class.

Definition at line 37 of file fragProgARB.h.

Public Member Functions

 FragProgARB (const char *fragProg, bool isFileName=false, PBuffGlift *pbuff=NULL, bool noload=false)
 construct

 FragProgARB (const FragProgARB &rhs)
 copy construct

FragProgARBoperator= (const FragProgARB &rhs)
 assign

virtual ~FragProgARB ()
 destruct

void init ()
 init

virtual void reset ()
 reset

virtual void reload (const char *shader)
 reload

int getInfoInt (GLenum param)
 get info

virtual void setLocalConstf (unsigned int constNum, const gutz::vec4f &constant)
 set local const

virtual void setLocalConstd (unsigned int constNum, const gutz::vec4d &constant)
virtual char * getProgText ()
 will be 0 if invalid

virtual char * getProgFile ()
virtual void setProgFile (const char *name)
 set file name

void bind ()
void release ()
bool isBound ()
virtual void compile ()
virtual bool hasNonCompilable ()
virtual void setErrStream (std::ostream *os)
 Where do you want gl errors to go? they must go somewhere, so don't set it to zero please.

virtual std::ostream * getErrStream () const
 Where are gl errors going?


Protected Member Functions

virtual void bindDef ()
 bind def

virtual void releaseDef ()
 release def

virtual bool isCompiled () const
void err (const char *where, const char *when=0) const
 error

std::ostream & err () const
 a simpler way, just use the stream! only for always print, this one automatically adds the objects name

void derr (const char *where, const char *when=0) const
 debug error

bool glerr (const char *where, const char *when=0) const
 gl error report only in debug mode, only if there is an error, if so return true

std::ostream & estr () const
 this one just gives you the stream

virtual void _incCount ()
 gutz::Counted interface, increment reference count by one.

virtual void _decCount ()
 gutz::Counted interface, decrement reference count by one.

virtual int _getCount () const
 gutz::Counted interface, get the current reference count.


Friends

class SmartPtr
class SmartPtrRef


Constructor & Destructor Documentation

FragProgARB::FragProgARB const char *  fragProg,
bool  isFileName = false,
PBuffGlift pbuff = NULL,
bool  noload = false
 

construct

Definition at line 38 of file fragProgARB.cpp.

References init().

FragProgARB::FragProgARB const FragProgARB rhs  ) 
 

copy construct

Definition at line 50 of file fragProgARB.cpp.

FragProgARB::~FragProgARB  )  [virtual]
 

destruct

Definition at line 147 of file fragProgARB.cpp.


Member Function Documentation

virtual void gutz::Counted::_decCount  )  [inline, protected, virtual, inherited]
 

gutz::Counted interface, decrement reference count by one.

Not generaly used by subclasses, mostly for collaboration with gutz::SmartPtr. Sometimes you need to call this though, see the documentation for gutz::SmartPtr

Definition at line 54 of file smartptr.h.

Referenced by TFImage::clear(), NrroImage::fBlendOverRGBA(), and Nrro::updateMinMax().

virtual int gutz::Counted::_getCount  )  const [inline, protected, virtual, inherited]
 

gutz::Counted interface, get the current reference count.

Not generaly used by subclasses, mostly for collaboration with gutz::SmartPtr.

Definition at line 58 of file smartptr.h.

virtual void gutz::Counted::_incCount  )  [inline, protected, virtual, inherited]
 

gutz::Counted interface, increment reference count by one.

Not generaly used by subclasses, mostly for collaboration with gutz::SmartPtr. Sometimes you need to call this though, see the documentation for gutz::SmartPtr

Definition at line 48 of file smartptr.h.

Referenced by TFImage::clear(), NrroImage::fBlendOverRGBA(), and Nrro::updateMinMax().

void StateGLI::bind  )  [inherited]
 

Definition at line 34 of file stateGLI.cpp.

References glift::StateGLI::bindDef(), glift::DispList::isCompiled(), and glift::DispList::issue().

Referenced by glift::SubTex::bindDef(), glift::CoreTex::bindDef(), glift::Shader::bindDef(), glift::ProgShader::bindDef(), glift::ShadedPrim::drawDef(), and VolRenAlgBase::drawTris().

void FragProgARB::bindDef  )  [protected, virtual]
 

bind def

Implements glift::StateGLI.

Definition at line 307 of file fragProgARB.cpp.

References GL_FRAGMENT_PROGRAM_ARB, glBindProgramARB, and glEnable().

Referenced by getInfoInt(), init(), setLocalConstd(), and setLocalConstf().

void StateGLI::compile  )  [virtual, inherited]
 

Compile new disply lists

Force deletion/construction of new objects in case a display list already exists for this object.

Implements glift::Compilable.

Definition at line 81 of file stateGLI.cpp.

References glift::DispList::compile(), and glift::g_compiling.

Referenced by glift::VertexProgARB::reset(), glift::PixelShaderATI8K::reset(), and reset().

void glift::GliftObject::derr const char *  where,
const char *  when = 0
const [inline, protected, inherited]
 

debug error

Definition at line 122 of file gliftObject.h.

References glift::GliftObject::m_err.

std::ostream & glift::GliftObject::err  )  const [inline, protected, inherited]
 

a simpler way, just use the stream! only for always print, this one automatically adds the objects name

Definition at line 111 of file gliftObject.h.

References glift::GliftObject::m_err.

Referenced by glift::CoordTrans::apply(), glift::SubTex::bindDef(), glift::PrimGL::bindIndices(), glift::SubdivPlanarQuadS::bindQuads(), glift::PrimGL::bindTexCoords(), glift::CoreTex::checkTexType(), glift::EmptyTex::copyToTex(), glift::CoreTex::CoreTex(), glift::FuncTex::FuncTex(), glift::Shader::genTexCoords(), glift::CoreTex::getDataf(), glift::CoreTex::getDataub(), glift::VertexProgARB::init(), init(), glift::PriorityTex::PriorityTex(), glift::VertexProgARB::reload(), reload(), glift::RenderableGLI::render(), glift::RenderPass::renderDef(), glift::EmptyTex::resetTexState(), glift::PixelShaderATI8K::setLocalConstf(), glift::TexCube::setTexData(), glift::EmptyTex::setTexData(), glift::ShadedPrim::ShadedPrim(), glift::TexConst::TexConst(), glift::TexCube::TexCube(), and glift::EmptyTex::tryToBindPbuff().

void glift::GliftObject::err const char *  where,
const char *  when = 0
const [inline, protected, inherited]
 

error

Definition at line 101 of file gliftObject.h.

References glift::GliftObject::m_err.

Referenced by glift::SubPBuff::enable().

std::ostream& glift::GliftObject::estr  )  const [inline, protected, inherited]
 

this one just gives you the stream

Definition at line 84 of file gliftObject.h.

References glift::GliftObject::m_err.

Referenced by glift::CoreTex::bindDef(), glift::Shader::bindDef(), glift::MultiTex::bindDef(), glift::EmptyTex::bindDef(), glift::DispList::compile(), glift::CoreTex::CoreTex(), glift::VertexProgARB::init(), init(), glift::MultiTex::releaseDef(), and glift::EmptyTex::releaseDef().

virtual std::ostream* glift::GliftObject::getErrStream  )  const [inline, virtual, inherited]
 

Where are gl errors going?

Definition at line 49 of file gliftObject.h.

References glift::GliftObject::m_err.

Referenced by glift::getProgShaderFromFile(), and glift::getProgShaderFromText().

int FragProgARB::getInfoInt GLenum  param  ) 
 

get info

Definition at line 291 of file fragProgARB.cpp.

References bindDef(), GL_FRAGMENT_PROGRAM_ARB, glGetProgramivARB, param, and releaseDef().

virtual char* glift::FragProgARB::getProgFile  )  [inline, virtual]
 

Definition at line 65 of file fragProgARB.h.

virtual char* glift::FragProgARB::getProgText  )  [inline, virtual]
 

will be 0 if invalid

Definition at line 64 of file fragProgARB.h.

bool GliftObject::glerr const char *  where,
const char *  when = 0
const [protected, inherited]
 

gl error report only in debug mode, only if there is an error, if so return true

Definition at line 31 of file gliftObject.cpp.

References glGetError(), and GLuint.

Referenced by RenderState2D::bindDef(), glift::NormalAttrib< VAT >::disableDef(), glift::IndexAttrib< VAT >::disableDef(), glift::TexCoordAttrib< VAT >::disableDef(), glift::VertAttrib< VAT >::disableDef(), glift::GenDrawAttrib< VAT >::disableDef(), glift::DrawAlgImm::draw(), glift::DrawAlgArr::draw(), glift::ShadedPrim::drawDef(), glift::NormalAttrib< VAT >::enableDef(), glift::IndexAttrib< VAT >::enableDef(), glift::TexCoordAttrib< VAT >::enableDef(), glift::VertAttrib< VAT >::enableDef(), glift::GenDrawAttrib< VAT >::enableDef(), and RenderState2D::releaseDef().

virtual bool glift::StateGLI::hasNonCompilable  )  [inline, virtual, inherited]
 

Definition at line 72 of file stateGLI.h.

void FragProgARB::init  ) 
 

init

Definition at line 180 of file fragProgARB.cpp.

References bindDef(), glift::PBuffGlift::disable(), glift::PBuffGlift::enable(), glift::GliftObject::err(), glift::GliftObject::estr(), GL_FRAGMENT_PROGRAM_ARB, GL_PROGRAM_ERROR_POSITION_ARB, GL_PROGRAM_ERROR_STRING_ARB, GL_PROGRAM_FORMAT_ASCII_ARB, glGenProgramsARB, glGetError(), glGetIntegerv(), glGetString(), glProgramStringARB, and releaseDef().

Referenced by FragProgARB(), glift::getProgShaderFromFile(), glift::getProgShaderFromText(), reload(), and reset().

bool glift::StateGLI::isBound  )  [inline, inherited]
 

Definition at line 70 of file stateGLI.h.

Referenced by glift::GenPrimGL< VERTA, TEXCA, IDXA, RANGEA >::drawDef(), VolShader::setBlend(), VolRenAlgBase::setGeom(), VolShader::setPixelShader(), VolRenAlgBase::setShader(), VolShader::setVertexShader(), and VolRenAlgBase::setVolytope().

virtual bool glift::StateGLI::isCompiled  )  const [inline, protected, virtual, inherited]
 

Implements glift::Compilable.

Definition at line 81 of file stateGLI.h.

Referenced by glift::VertexProgARB::reset(), glift::PixelShaderATI8K::reset(), and reset().

FragProgARB & FragProgARB::operator= const FragProgARB rhs  ) 
 

assign

Definition at line 58 of file fragProgARB.cpp.

void StateGLI::release  )  [inherited]
 

Definition at line 57 of file stateGLI.cpp.

References glift::DispList::isCompiled(), glift::DispList::issue(), and glift::StateGLI::releaseDef().

Referenced by glift::ShadedPrim::drawDef(), VolRenAlgBase::drawTris(), glift::CoreTex::getDataub(), glift::SubTex::releaseDef(), glift::CoreTex::releaseDef(), glift::Shader::releaseDef(), and glift::ProgShader::releaseDef().

void FragProgARB::releaseDef  )  [protected, virtual]
 

release def

Implements glift::StateGLI.

Definition at line 317 of file fragProgARB.cpp.

References GL_FRAGMENT_PROGRAM_ARB, and glDisable().

Referenced by getInfoInt(), init(), setLocalConstd(), and setLocalConstf().

void FragProgARB::reload const char *  shader  )  [virtual]
 

reload

reload shader

Definition at line 234 of file fragProgARB.cpp.

References glift::GliftObject::err(), and init().

Referenced by StupidFPCrank::getPixelShader().

void FragProgARB::reset  )  [virtual]
 

reset

TODO: this won't work, needs to save off the fragProg

Implements glift::PixelShader.

Definition at line 220 of file fragProgARB.cpp.

References glift::StateGLI::compile(), init(), and glift::StateGLI::isCompiled().

virtual void glift::GliftObject::setErrStream std::ostream *  os  )  [inline, virtual, inherited]
 

Where do you want gl errors to go? they must go somewhere, so don't set it to zero please.

Definition at line 44 of file gliftObject.h.

References glift::GliftObject::m_err.

Referenced by glift::getProgShaderFromFile(), and glift::getProgShaderFromText().

void FragProgARB::setLocalConstd unsigned int  constNum,
const gutz::vec4d constant
[virtual]
 

Definition at line 276 of file fragProgARB.cpp.

References bindDef(), GL_FRAGMENT_PROGRAM_ARB, glProgramLocalParameter4dvARB, releaseDef(), and uint.

void FragProgARB::setLocalConstf unsigned int  constNum,
const gutz::vec4f constant
[virtual]
 

set local const

Implements glift::PixelShader.

Definition at line 258 of file fragProgARB.cpp.

References bindDef(), GL_FRAGMENT_PROGRAM_ARB, glProgramLocalParameter4fvARB, releaseDef(), and uint.

void FragProgARB::setProgFile const char *  name  )  [virtual]
 

set file name

Definition at line 326 of file fragProgARB.cpp.

References name.


Friends And Related Function Documentation

friend class SmartPtr [friend, inherited]
 

Definition at line 40 of file smartptr.h.

Referenced by Nrro::NrroIter< T >::NrroIter().

friend class SmartPtrRef [friend, inherited]
 

Definition at line 41 of file smartptr.h.


The documentation for this class was generated from the following files:
Send questions, comments, and bug reports to:
jmk