osg::TexEnvCombine Class Reference

Inheritance diagram for osg::TexEnvCombine:

osg::StateAttribute osg::Object osg::Referenced List of all members.

Public Types

 REPLACE = GL_REPLACE
 MODULATE = GL_MODULATE
 ADD = GL_ADD
 ADD_SIGNED = GL_ADD_SIGNED_ARB
 INTERPOLATE = GL_INTERPOLATE_ARB
 SUBTRACT = GL_SUBTRACT_ARB
 DOT3_RGB = GL_DOT3_RGB_ARB
 DOT3_RGBA = GL_DOT3_RGBA_ARB
 CONSTANT = GL_CONSTANT_ARB
 PRIMARY_COLOR = GL_PRIMARY_COLOR_ARB
 PREVIOUS = GL_PREVIOUS_ARB
 TEXTURE = GL_TEXTURE
 TEXTURE0 = GL_TEXTURE0
 TEXTURE1 = GL_TEXTURE0+1
 TEXTURE2 = GL_TEXTURE0+2
 TEXTURE3 = GL_TEXTURE0+3
 TEXTURE4 = GL_TEXTURE0+4
 TEXTURE5 = GL_TEXTURE0+5
 TEXTURE6 = GL_TEXTURE0+6
 TEXTURE7 = GL_TEXTURE0+7
 SRC_COLOR = GL_SRC_COLOR
 ONE_MINUS_SRC_COLOR = GL_ONE_MINUS_SRC_COLOR
 SRC_ALPHA = GL_SRC_ALPHA
 ONE_MINUS_SRC_ALPHA = GL_ONE_MINUS_SRC_ALPHA
enum  CombineParam {
  REPLACE = GL_REPLACE, MODULATE = GL_MODULATE, ADD = GL_ADD, ADD_SIGNED = GL_ADD_SIGNED_ARB,
  INTERPOLATE = GL_INTERPOLATE_ARB, SUBTRACT = GL_SUBTRACT_ARB, DOT3_RGB = GL_DOT3_RGB_ARB, DOT3_RGBA = GL_DOT3_RGBA_ARB
}
enum  SourceParam {
  CONSTANT = GL_CONSTANT_ARB, PRIMARY_COLOR = GL_PRIMARY_COLOR_ARB, PREVIOUS = GL_PREVIOUS_ARB, TEXTURE = GL_TEXTURE,
  TEXTURE0 = GL_TEXTURE0, TEXTURE1 = GL_TEXTURE0+1, TEXTURE2 = GL_TEXTURE0+2, TEXTURE3 = GL_TEXTURE0+3,
  TEXTURE4 = GL_TEXTURE0+4, TEXTURE5 = GL_TEXTURE0+5, TEXTURE6 = GL_TEXTURE0+6, TEXTURE7 = GL_TEXTURE0+7
}
enum  OperandParam { SRC_COLOR = GL_SRC_COLOR, ONE_MINUS_SRC_COLOR = GL_ONE_MINUS_SRC_COLOR, SRC_ALPHA = GL_SRC_ALPHA, ONE_MINUS_SRC_ALPHA = GL_ONE_MINUS_SRC_ALPHA }

Public Member Functions

 TexEnvCombine ()
 TexEnvCombine (const TexEnvCombine &texenv, const CopyOp &copyop=CopyOp::SHALLOW_COPY)
 META_StateAttribute (osg, TexEnvCombine, TEXENV)
virtual bool isTextureAttribute () const
virtual int compare (const StateAttribute &sa) const
void setCombine_RGB (GLint cm)
void setCombine_Alpha (GLint cm)
GLint getCombine_RGB () const
GLint getCombine_Alpha () const
void setSource0_RGB (GLint sp)
void setSource1_RGB (GLint sp)
void setSource2_RGB (GLint sp)
void setSource0_Alpha (GLint sp)
void setSource1_Alpha (GLint sp)
void setSource2_Alpha (GLint sp)
GLint getSource0_RGB () const
GLint getSource1_RGB () const
GLint getSource2_RGB () const
GLint getSource0_Alpha () const
GLint getSource1_Alpha () const
GLint getSource2_Alpha () const
void setOperand0_RGB (GLint op)
void setOperand1_RGB (GLint op)
void setOperand2_RGB (GLint op)
void setOperand0_Alpha (GLint op)
void setOperand1_Alpha (GLint op)
void setOperand2_Alpha (GLint op)
GLint getOperand0_RGB () const
GLint getOperand1_RGB () const
GLint getOperand2_RGB () const
GLint getOperand0_Alpha () const
GLint getOperand1_Alpha () const
GLint getOperand2_Alpha () const
void setScale_RGB (float scale)
void setScale_Alpha (float scale)
float getScale_RGB () const
float getScale_Alpha () const
void setConstantColor (const Vec4 &color)
const Vec4getConstantColor () const
void setConstantColorAsLightDirection (const Vec3 &direction)
Vec3 getConstantColorAsLightDirection () const
virtual void apply (State &state) const

Protected Member Functions

virtual ~TexEnvCombine ()
bool needsTexEnvCombiner (GLint value) const
void computeNeedoForTexEnvCombiners ()

Protected Attributes

bool _needsTexEnvCrossbar
GLint _combine_RGB
GLint _combine_Alpha
GLint _source0_RGB
GLint _source1_RGB
GLint _source2_RGB
GLint _source0_Alpha
GLint _source1_Alpha
GLint _source2_Alpha
GLint _operand0_RGB
GLint _operand1_RGB
GLint _operand2_RGB
GLint _operand0_Alpha
GLint _operand1_Alpha
GLint _operand2_Alpha
float _scale_RGB
float _scale_Alpha
osg::Vec4 _constantColor

Detailed Description

TexEnvCombine encapsulates the OpenGL glTexEnvCombine (texture environment) state.


Member Enumeration Documentation

enum osg::TexEnvCombine::CombineParam

Enumerator:
REPLACE 
MODULATE 
ADD 
ADD_SIGNED 
INTERPOLATE 
SUBTRACT 
DOT3_RGB 
DOT3_RGBA 

enum osg::TexEnvCombine::OperandParam

Enumerator:
SRC_COLOR 
ONE_MINUS_SRC_COLOR 
SRC_ALPHA 
ONE_MINUS_SRC_ALPHA 

enum osg::TexEnvCombine::SourceParam

Enumerator:
CONSTANT 
PRIMARY_COLOR 
PREVIOUS 
TEXTURE 
TEXTURE0 
TEXTURE1 
TEXTURE2 
TEXTURE3 
TEXTURE4 
TEXTURE5 
TEXTURE6 
TEXTURE7 


Constructor & Destructor Documentation

osg::TexEnvCombine::TexEnvCombine (  ) 

osg::TexEnvCombine::TexEnvCombine ( const TexEnvCombine texenv,
const CopyOp copyop = CopyOp::SHALLOW_COPY 
) [inline]

Copy constructor using CopyOp to manage deep vs shallow copy.

virtual osg::TexEnvCombine::~TexEnvCombine (  )  [protected, virtual]


Member Function Documentation

virtual void osg::TexEnvCombine::apply ( State state  )  const [virtual]

apply the OpenGL state attributes. The global state for the current OpenGL context is passed in to allow the StateAttribute to obtain details on the the current context and state.

Implements osg::StateAttribute.

virtual int osg::TexEnvCombine::compare ( const StateAttribute sa  )  const [inline, virtual]

Return -1 if *this < *rhs, 0 if *this==*rhs, 1 if *this>*rhs.

Implements osg::StateAttribute.

void osg::TexEnvCombine::computeNeedoForTexEnvCombiners (  )  [inline, protected]

GLint osg::TexEnvCombine::getCombine_Alpha (  )  const [inline]

GLint osg::TexEnvCombine::getCombine_RGB (  )  const [inline]

const Vec4& osg::TexEnvCombine::getConstantColor (  )  const [inline]

Vec3 osg::TexEnvCombine::getConstantColorAsLightDirection (  )  const [inline]

GLint osg::TexEnvCombine::getOperand0_Alpha (  )  const [inline]

GLint osg::TexEnvCombine::getOperand0_RGB (  )  const [inline]

GLint osg::TexEnvCombine::getOperand1_Alpha (  )  const [inline]

GLint osg::TexEnvCombine::getOperand1_RGB (  )  const [inline]

GLint osg::TexEnvCombine::getOperand2_Alpha (  )  const [inline]

GLint osg::TexEnvCombine::getOperand2_RGB (  )  const [inline]

float osg::TexEnvCombine::getScale_Alpha (  )  const [inline]

float osg::TexEnvCombine::getScale_RGB (  )  const [inline]

GLint osg::TexEnvCombine::getSource0_Alpha (  )  const [inline]

GLint osg::TexEnvCombine::getSource0_RGB (  )  const [inline]

GLint osg::TexEnvCombine::getSource1_Alpha (  )  const [inline]

GLint osg::TexEnvCombine::getSource1_RGB (  )  const [inline]

GLint osg::TexEnvCombine::getSource2_Alpha (  )  const [inline]

GLint osg::TexEnvCombine::getSource2_RGB (  )  const [inline]

virtual bool osg::TexEnvCombine::isTextureAttribute (  )  const [inline, virtual]

Return true if StateAttribute is a type which controls texturing and needs to be issued w.r.t to specific texture unit.

Reimplemented from osg::StateAttribute.

osg::TexEnvCombine::META_StateAttribute ( osg  ,
TexEnvCombine  ,
TEXENV   
)

bool osg::TexEnvCombine::needsTexEnvCombiner ( GLint  value  )  const [inline, protected]

void osg::TexEnvCombine::setCombine_Alpha ( GLint  cm  ) 

void osg::TexEnvCombine::setCombine_RGB ( GLint  cm  ) 

void osg::TexEnvCombine::setConstantColor ( const Vec4 color  )  [inline]

void osg::TexEnvCombine::setConstantColorAsLightDirection ( const Vec3 direction  )  [inline]

Set the constant color attribute to the given light direction for use with DOT3 combine operation.

void osg::TexEnvCombine::setOperand0_Alpha ( GLint  op  ) 

void osg::TexEnvCombine::setOperand0_RGB ( GLint  op  ) 

void osg::TexEnvCombine::setOperand1_Alpha ( GLint  op  ) 

void osg::TexEnvCombine::setOperand1_RGB ( GLint  op  ) 

void osg::TexEnvCombine::setOperand2_Alpha ( GLint  op  ) 

void osg::TexEnvCombine::setOperand2_RGB ( GLint  op  ) 

void osg::TexEnvCombine::setScale_Alpha ( float  scale  ) 

void osg::TexEnvCombine::setScale_RGB ( float  scale  ) 

void osg::TexEnvCombine::setSource0_Alpha ( GLint  sp  ) 

void osg::TexEnvCombine::setSource0_RGB ( GLint  sp  ) 

void osg::TexEnvCombine::setSource1_Alpha ( GLint  sp  ) 

void osg::TexEnvCombine::setSource1_RGB ( GLint  sp  ) 

void osg::TexEnvCombine::setSource2_Alpha ( GLint  sp  ) 

void osg::TexEnvCombine::setSource2_RGB ( GLint  sp  ) 


Member Data Documentation

GLint osg::TexEnvCombine::_combine_Alpha [protected]

GLint osg::TexEnvCombine::_combine_RGB [protected]

osg::Vec4 osg::TexEnvCombine::_constantColor [protected]

bool osg::TexEnvCombine::_needsTexEnvCrossbar [protected]

GLint osg::TexEnvCombine::_operand0_Alpha [protected]

GLint osg::TexEnvCombine::_operand0_RGB [protected]

GLint osg::TexEnvCombine::_operand1_Alpha [protected]

GLint osg::TexEnvCombine::_operand1_RGB [protected]

GLint osg::TexEnvCombine::_operand2_Alpha [protected]

GLint osg::TexEnvCombine::_operand2_RGB [protected]

float osg::TexEnvCombine::_scale_Alpha [protected]

float osg::TexEnvCombine::_scale_RGB [protected]

GLint osg::TexEnvCombine::_source0_Alpha [protected]

GLint osg::TexEnvCombine::_source0_RGB [protected]

GLint osg::TexEnvCombine::_source1_Alpha [protected]

GLint osg::TexEnvCombine::_source1_RGB [protected]

GLint osg::TexEnvCombine::_source2_Alpha [protected]

GLint osg::TexEnvCombine::_source2_RGB [protected]


The documentation for this class was generated from the following file:
Generated on Sun Oct 1 13:17:08 2006 for openscenegraph by  doxygen 1.4.7