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

glift::ShadedPrim Class Reference

#include <shadedPrim.h>

Inheritance diagram for glift::ShadedPrim:

glift::DrawableGLI glift::Compilable glift::GliftObject List of all members.

Detailed Description

ShadedPrim - The class that binds a shader and primitive together.

ShadedPrim

Definition at line 43 of file shadedPrim.h.

Public Member Functions

 ShadedPrim (DrawableGLI *prim, Shader *shader)
 ShadedPrim (const ShadedPrim &rhs)
ShadedPrimoperator= (const ShadedPrim &rhs)
virtual ~ShadedPrim ()
void setPrim (DrawableGLI *prim)
 Set a new 'm_prim' and 'm_rawPrim' if 'prim' is non-NULL - Note: The texture coords are NOT altered...just the primitive.

void setTexCoordPtr (MultiPrimTexCoord *texCoordsPtr)
 Set the texture coords used if 'texCoordsPtr' is non-NULL - Note: No checks are done to ensure compatibility between vertices, texCoords, shaders, etc.

void draw ()
void compile ()
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 drawDef ()
virtual bool isCompiled () const
 Redefine this for specific draw functions.

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


Protected Attributes

std::ostream * m_err


Constructor & Destructor Documentation

ShadedPrim::ShadedPrim DrawableGLI prim,
Shader shader
 

Initialize the multi- and/or perturbed texture coords if 'prim' is a 'RawPrim'

Definition at line 30 of file shadedPrim.cpp.

References glift::RawPrim::bindTexCoords(), glift::DrawableGLI::draw(), glift::GliftObject::err(), glift::RawPrim::genTexCoords(), GL_COMPILE, glEndList(), glGenLists(), glNewList(), and glift::RawPrim::releaseTexCoords().

ShadedPrim::ShadedPrim const ShadedPrim rhs  ) 
 

Definition at line 71 of file shadedPrim.cpp.

ShadedPrim::~ShadedPrim  )  [virtual]
 

Definition at line 84 of file shadedPrim.cpp.

References uint.


Member Function Documentation

void DrawableGLI::compile  )  [virtual, inherited]
 

Implements glift::Compilable.

Definition at line 57 of file drawableGLI.cpp.

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

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.

void DrawableGLI::draw  )  [inherited]
 

Definition at line 34 of file drawableGLI.cpp.

References glift::DrawableGLI::drawDef(), glift::DispList::isCompiled(), and glift::DispList::issue().

Referenced by glift::WrappedPrim::drawDef(), drawDef(), VolRenAlgBase::drawTris(), and ShadedPrim().

void ShadedPrim::drawDef  )  [protected, virtual]
 

Enables all necessary texture units and shaders

Disables all texture units and shaders that were used

Implements glift::DrawableGLI.

Definition at line 148 of file shadedPrim.cpp.

References glift::StateGLI::bind(), glift::RawPrim::bindTexCoords(), glift::DrawableGLI::draw(), glCallList(), glift::GliftObject::glerr(), glift::StateGLI::release(), and glift::RawPrim::releaseTexCoords().

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(), glift::FragProgARB::init(), glift::PriorityTex::PriorityTex(), glift::VertexProgARB::reload(), glift::FragProgARB::reload(), glift::RenderableGLI::render(), glift::RenderPass::renderDef(), glift::EmptyTex::resetTexState(), glift::PixelShaderATI8K::setLocalConstf(), glift::TexCube::setTexData(), glift::EmptyTex::setTexData(), 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(), glift::FragProgARB::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().

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(), 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::DrawableGLI::isCompiled  )  const [inline, protected, virtual, inherited]
 

Redefine this for specific draw functions.

Implements glift::Compilable.

Definition at line 34 of file drawableGLI.h.

Referenced by glift::PrimGL::bindIndices(), and glift::PrimGL::bindTexCoords().

ShadedPrim & ShadedPrim::operator= const ShadedPrim rhs  ) 
 

Definition at line 76 of file shadedPrim.cpp.

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 ShadedPrim::setPrim DrawableGLI prim  ) 
 

Set a new 'm_prim' and 'm_rawPrim' if 'prim' is non-NULL - Note: The texture coords are NOT altered...just the primitive.

  • VERY DANGEROUS. Designed to be fast, not safe

Definition at line 127 of file shadedPrim.cpp.

void ShadedPrim::setTexCoordPtr MultiPrimTexCoord texCoordsPtr  ) 
 

Set the texture coords used if 'texCoordsPtr' is non-NULL - Note: No checks are done to ensure compatibility between vertices, texCoords, shaders, etc.

  • DANGEROUS. Designed to be fast, not safe

Definition at line 141 of file shadedPrim.cpp.


Member Data Documentation

std::ostream* glift::GliftObject::m_err [mutable, protected, inherited]
 

Definition at line 87 of file gliftObject.h.

Referenced by glift::GliftObject::derr(), glift::GliftObject::err(), glift::GliftObject::estr(), glift::GliftObject::getErrStream(), glift::GliftObject::GliftObject(), and glift::GliftObject::setErrStream().


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