osg::BlendFunc Class Reference

Encapsulates OpenGL blend/transparency state. More...

Inheritance diagram for osg::BlendFunc:

Inheritance graph
[legend]

List of all members.

Public Types

enum  BlendFuncMode {
  DST_ALPHA = GL_DST_ALPHA, DST_COLOR = GL_DST_COLOR, ONE = GL_ONE, ONE_MINUS_DST_ALPHA = GL_ONE_MINUS_DST_ALPHA,
  ONE_MINUS_DST_COLOR = GL_ONE_MINUS_DST_COLOR, ONE_MINUS_SRC_ALPHA = GL_ONE_MINUS_SRC_ALPHA, ONE_MINUS_SRC_COLOR = GL_ONE_MINUS_SRC_COLOR, SRC_ALPHA = GL_SRC_ALPHA,
  SRC_ALPHA_SATURATE = GL_SRC_ALPHA_SATURATE, SRC_COLOR = GL_SRC_COLOR, CONSTANT_COLOR = GL_CONSTANT_COLOR, ONE_MINUS_CONSTANT_COLOR = GL_ONE_MINUS_CONSTANT_COLOR,
  CONSTANT_ALPHA = GL_CONSTANT_ALPHA, ONE_MINUS_CONSTANT_ALPHA = GL_ONE_MINUS_CONSTANT_ALPHA, ZERO = GL_ZERO
}

Public Member Functions

 BlendFunc ()
 BlendFunc (GLenum source, GLenum destination)
 BlendFunc (GLenum source, GLenum destination, GLenum source_alpha, GLenum destination_alpha)
 BlendFunc (const BlendFunc &trans, const CopyOp &copyop=CopyOp::SHALLOW_COPY)
 Copy constructor using CopyOp to manage deep vs shallow copy.
 META_StateAttribute (osg, BlendFunc, BLENDFUNC)
virtual int compare (const StateAttribute &sa) const
 Return -1 if *this < *rhs, 0 if *this==*rhs, 1 if *this>*rhs.
virtual bool getModeUsage (StateAttribute::ModeUsage &usage) const
 Return the modes associated with this StateAttribute.
void setFunction (GLenum source, GLenum destination)
void setFunction (GLenum source_rgb, GLenum destination_rgb, GLenum source_alpha, GLenum destination_alpha)
void setSource (GLenum source)
GLenum getSource () const
void setSourceRGB (GLenum source)
GLenum getSourceRGB () const
void setSourceAlpha (GLenum source)
GLenum getSourceAlpha () const
void setDestination (GLenum destination)
GLenum getDestination () const
void setDestinationRGB (GLenum destination)
GLenum getDestinationRGB () const
void setDestinationAlpha (GLenum destination)
GLenum getDestinationAlpha () const
virtual void apply (State &state) const
 apply the OpenGL state attributes.

Static Public Member Functions

static ExtensionsgetExtensions (unsigned int contextID, bool createIfNotInitalized)
 Returns the Extensions object for the given context.
static void setExtensions (unsigned int contextID, Extensions *extensions)
 setExtensions() allows users to override the extensions across graphics contexts.

Protected Member Functions

virtual ~BlendFunc ()

Protected Attributes

GLenum _source_factor
GLenum _destination_factor
GLenum _source_factor_alpha
GLenum _destination_factor_alpha

Classes

class  Extensions
 Encapsulates queries of extension availability, obtains extension function pointers, and provides convenience wrappers for calling extension functions. More...


Detailed Description

Encapsulates OpenGL blend/transparency state.


Member Enumeration Documentation

enum osg::BlendFunc::BlendFuncMode

Enumerator:
DST_ALPHA 
DST_COLOR 
ONE 
ONE_MINUS_DST_ALPHA 
ONE_MINUS_DST_COLOR 
ONE_MINUS_SRC_ALPHA 
ONE_MINUS_SRC_COLOR 
SRC_ALPHA 
SRC_ALPHA_SATURATE 
SRC_COLOR 
CONSTANT_COLOR 
ONE_MINUS_CONSTANT_COLOR 
CONSTANT_ALPHA 
ONE_MINUS_CONSTANT_ALPHA 
ZERO 


Constructor & Destructor Documentation

osg::BlendFunc::BlendFunc (  ) 

osg::BlendFunc::BlendFunc ( GLenum  source,
GLenum  destination 
)

osg::BlendFunc::BlendFunc ( GLenum  source,
GLenum  destination,
GLenum  source_alpha,
GLenum  destination_alpha 
)

osg::BlendFunc::BlendFunc ( const BlendFunc trans,
const CopyOp copyop = CopyOp::SHALLOW_COPY 
) [inline]

Copy constructor using CopyOp to manage deep vs shallow copy.

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


Member Function Documentation

osg::BlendFunc::META_StateAttribute ( osg  ,
BlendFunc  ,
BLENDFUNC   
)

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

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

Implements osg::StateAttribute.

virtual bool osg::BlendFunc::getModeUsage ( StateAttribute::ModeUsage  )  const [inline, virtual]

Return the modes associated with this StateAttribute.

Reimplemented from osg::StateAttribute.

void osg::BlendFunc::setFunction ( GLenum  source,
GLenum  destination 
) [inline]

void osg::BlendFunc::setFunction ( GLenum  source_rgb,
GLenum  destination_rgb,
GLenum  source_alpha,
GLenum  destination_alpha 
) [inline]

void osg::BlendFunc::setSource ( GLenum  source  )  [inline]

GLenum osg::BlendFunc::getSource (  )  const [inline]

void osg::BlendFunc::setSourceRGB ( GLenum  source  )  [inline]

GLenum osg::BlendFunc::getSourceRGB (  )  const [inline]

void osg::BlendFunc::setSourceAlpha ( GLenum  source  )  [inline]

GLenum osg::BlendFunc::getSourceAlpha (  )  const [inline]

void osg::BlendFunc::setDestination ( GLenum  destination  )  [inline]

GLenum osg::BlendFunc::getDestination (  )  const [inline]

void osg::BlendFunc::setDestinationRGB ( GLenum  destination  )  [inline]

GLenum osg::BlendFunc::getDestinationRGB (  )  const [inline]

void osg::BlendFunc::setDestinationAlpha ( GLenum  destination  )  [inline]

GLenum osg::BlendFunc::getDestinationAlpha (  )  const [inline]

virtual void osg::BlendFunc::apply ( State  )  const [virtual]

apply the OpenGL state attributes.

The render info for the current OpenGL context is passed in to allow the StateAttribute to obtain details on the the current context and state.

Reimplemented from osg::StateAttribute.

static Extensions* osg::BlendFunc::getExtensions ( unsigned int  contextID,
bool  createIfNotInitalized 
) [static]

Returns the Extensions object for the given context.

If createIfNotInitalized is true and the Exentsions object doesn't exist, getExtensions() creates it on the given context. Returns NULL if createIfNotInitalized is false and the Extensions object doesn't exist.

static void osg::BlendFunc::setExtensions ( unsigned int  contextID,
Extensions extensions 
) [static]

setExtensions() allows users to override the extensions across graphics contexts.

Typically used when you have different extensions supported across graphics pipes, but need to ensure that they all use the same low common denominator extensions.


Member Data Documentation

GLenum osg::BlendFunc::_source_factor [protected]

GLenum osg::BlendFunc::_destination_factor [protected]

GLenum osg::BlendFunc::_source_factor_alpha [protected]

GLenum osg::BlendFunc::_destination_factor_alpha [protected]


The documentation for this class was generated from the following file:
Generated at Sun Oct 14 02:12:05 2007 for the OpenSceneGraph by doxygen 1.5.3.