openscenegraph
Public Types | Public Member Functions | Protected Types | Protected Attributes | List of all members
osg::GLBeginEndAdapter Class Reference

Public Types

enum  MatrixMode { APPLY_LOCAL_MATRICES_TO_VERTICES, APPLY_LOCAL_MATRICES_TO_MODELVIEW }
 

Public Member Functions

 GLBeginEndAdapter (State *state=0)
 
void setState (State *state)
 
StategetState ()
 
const StategetState () const
 
void setMatrixMode (MatrixMode mode)
 
MatrixMode setMatrixMode () const
 
void PushMatrix ()
 
void PopMatrix ()
 
void LoadIdentity ()
 
void LoadMatrixd (const GLdouble *m)
 
void MultMatrixd (const GLdouble *m)
 
void Translatef (GLfloat x, GLfloat y, GLfloat z)
 
void Scalef (GLfloat x, GLfloat y, GLfloat z)
 
void Rotatef (GLfloat angle, GLfloat x, GLfloat y, GLfloat z)
 
void Translated (GLdouble x, GLdouble y, GLdouble z)
 
void Scaled (GLdouble x, GLdouble y, GLdouble z)
 
void Rotated (GLdouble angle, GLdouble x, GLdouble y, GLdouble z)
 
void Vertex3f (GLfloat x, GLfloat y, GLfloat z)
 
void Vertex3fv (const GLfloat *v)
 
void Vertex3dv (GLdouble x, GLdouble y, GLdouble z)
 
void Vertex3dv (const GLdouble *v)
 
void Color4f (GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
 
void Color3fv (const GLfloat *c)
 
void Color4fv (const GLfloat *c)
 
void Color4ubv (const GLubyte *c)
 
void Normal3f (GLfloat x, GLfloat y, GLfloat z)
 
void Normal3fv (const GLfloat *n)
 
void TexCoord1f (GLfloat x)
 
void TexCoord1fv (const GLfloat *tc)
 
void TexCoord2f (GLfloat x, GLfloat y)
 
void TexCoord2fv (const GLfloat *tc)
 
void TexCoord3f (GLfloat x, GLfloat y, GLfloat z)
 
void TexCoord3fv (const GLfloat *tc)
 
void TexCoord4f (GLfloat x, GLfloat y, GLfloat z, GLfloat w)
 
void TexCoord4fv (const GLfloat *tc)
 
void MultiTexCoord1f (GLenum target, GLfloat x)
 
void MultiTexCoord1fv (GLenum target, const GLfloat *tc)
 
void MultiTexCoord2f (GLenum target, GLfloat x, GLfloat y)
 
void MultiTexCoord2fv (GLenum target, const GLfloat *tc)
 
void MultiTexCoord3f (GLenum target, GLfloat x, GLfloat y, GLfloat z)
 
void MultiTexCoord3fv (GLenum target, const GLfloat *tc)
 
void MultiTexCoord4f (GLenum target, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
 
void MultiTexCoord4fv (GLenum target, const GLfloat *tc)
 
void VertexAttrib1f (GLuint unit, GLfloat x)
 
void VertexAttrib1fv (GLuint unit, const GLfloat *tc)
 
void VertexAttrib2f (GLuint unit, GLfloat x, GLfloat y)
 
void VertexAttrib2fv (GLuint unit, const GLfloat *tc)
 
void VertexAttrib3f (GLuint unit, GLfloat x, GLfloat y, GLfloat z)
 
void VertexAttrib3fv (GLuint unit, const GLfloat *tc)
 
void VertexAttrib4f (GLuint unit, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
 
void VertexAttrib4fv (GLuint unit, const GLfloat *tc)
 
void Begin (GLenum mode)
 
void End ()
 
void reset ()
 

Protected Types

typedef std::list< MatrixdMatrixStack
 
typedef std::vector< bool > AssignedList
 
typedef std::vector< osg::Vec4fVertexList
 
typedef std::vector< osg::ref_ptr< Vec4Array > > VertexArrayList
 

Protected Attributes

State_state
 
MatrixMode _mode
 
MatrixStack _matrixStack
 
bool _normalAssigned
 
osg::Vec3f _normal
 
bool _colorAssigned
 
osg::Vec4f _color
 
bool _overallNormalAssigned
 
bool _overallColorAssigned
 
osg::Vec3f _overallNormal
 
osg::Vec4f _overallColor
 
AssignedList _texCoordAssignedList
 
VertexList _texCoordList
 
AssignedList _vertexAttribAssignedList
 
VertexList _vertexAttribList
 
GLenum _primitiveMode
 
osg::ref_ptr< osg::Vec3Array_vertices
 
osg::ref_ptr< osg::Vec3Array_normals
 
osg::ref_ptr< osg::Vec4Array_colors
 
VertexArrayList _texCoordsList
 
VertexArrayList _vertexAttribsList
 

Detailed Description

A class adapting OpenGL 1.0 glBegin()/glEnd() style code to vertex array based code

Member Typedef Documentation

◆ AssignedList

typedef std::vector<bool> osg::GLBeginEndAdapter::AssignedList
protected

◆ MatrixStack

typedef std::list<Matrixd> osg::GLBeginEndAdapter::MatrixStack
protected

◆ VertexArrayList

◆ VertexList

typedef std::vector<osg::Vec4f> osg::GLBeginEndAdapter::VertexList
protected

Member Enumeration Documentation

◆ MatrixMode

Enumerator
APPLY_LOCAL_MATRICES_TO_VERTICES 
APPLY_LOCAL_MATRICES_TO_MODELVIEW 

Constructor & Destructor Documentation

◆ GLBeginEndAdapter()

osg::GLBeginEndAdapter::GLBeginEndAdapter ( State state = 0)

Member Function Documentation

◆ Begin()

void osg::GLBeginEndAdapter::Begin ( GLenum  mode)

◆ Color3fv()

void osg::GLBeginEndAdapter::Color3fv ( const GLfloat *  c)
inline

◆ Color4f()

void osg::GLBeginEndAdapter::Color4f ( GLfloat  red,
GLfloat  green,
GLfloat  blue,
GLfloat  alpha 
)
inline

◆ Color4fv()

void osg::GLBeginEndAdapter::Color4fv ( const GLfloat *  c)
inline

◆ Color4ubv()

void osg::GLBeginEndAdapter::Color4ubv ( const GLubyte *  c)
inline

◆ End()

void osg::GLBeginEndAdapter::End ( )

◆ getState() [1/2]

State* osg::GLBeginEndAdapter::getState ( )
inline

◆ getState() [2/2]

const State* osg::GLBeginEndAdapter::getState ( ) const
inline

◆ LoadIdentity()

void osg::GLBeginEndAdapter::LoadIdentity ( )

◆ LoadMatrixd()

void osg::GLBeginEndAdapter::LoadMatrixd ( const GLdouble *  m)

◆ MultiTexCoord1f()

void osg::GLBeginEndAdapter::MultiTexCoord1f ( GLenum  target,
GLfloat  x 
)
inline

◆ MultiTexCoord1fv()

void osg::GLBeginEndAdapter::MultiTexCoord1fv ( GLenum  target,
const GLfloat *  tc 
)
inline

◆ MultiTexCoord2f()

void osg::GLBeginEndAdapter::MultiTexCoord2f ( GLenum  target,
GLfloat  x,
GLfloat  y 
)
inline

◆ MultiTexCoord2fv()

void osg::GLBeginEndAdapter::MultiTexCoord2fv ( GLenum  target,
const GLfloat *  tc 
)
inline

◆ MultiTexCoord3f()

void osg::GLBeginEndAdapter::MultiTexCoord3f ( GLenum  target,
GLfloat  x,
GLfloat  y,
GLfloat  z 
)
inline

◆ MultiTexCoord3fv()

void osg::GLBeginEndAdapter::MultiTexCoord3fv ( GLenum  target,
const GLfloat *  tc 
)
inline

◆ MultiTexCoord4f()

void osg::GLBeginEndAdapter::MultiTexCoord4f ( GLenum  target,
GLfloat  x,
GLfloat  y,
GLfloat  z,
GLfloat  w 
)

◆ MultiTexCoord4fv()

void osg::GLBeginEndAdapter::MultiTexCoord4fv ( GLenum  target,
const GLfloat *  tc 
)
inline

◆ MultMatrixd()

void osg::GLBeginEndAdapter::MultMatrixd ( const GLdouble *  m)

◆ Normal3f()

void osg::GLBeginEndAdapter::Normal3f ( GLfloat  x,
GLfloat  y,
GLfloat  z 
)
inline

◆ Normal3fv()

void osg::GLBeginEndAdapter::Normal3fv ( const GLfloat *  n)
inline

◆ PopMatrix()

void osg::GLBeginEndAdapter::PopMatrix ( )

◆ PushMatrix()

void osg::GLBeginEndAdapter::PushMatrix ( )

◆ reset()

void osg::GLBeginEndAdapter::reset ( )

◆ Rotated()

void osg::GLBeginEndAdapter::Rotated ( GLdouble  angle,
GLdouble  x,
GLdouble  y,
GLdouble  z 
)

◆ Rotatef()

void osg::GLBeginEndAdapter::Rotatef ( GLfloat  angle,
GLfloat  x,
GLfloat  y,
GLfloat  z 
)
inline

◆ Scaled()

void osg::GLBeginEndAdapter::Scaled ( GLdouble  x,
GLdouble  y,
GLdouble  z 
)

◆ Scalef()

void osg::GLBeginEndAdapter::Scalef ( GLfloat  x,
GLfloat  y,
GLfloat  z 
)
inline

◆ setMatrixMode() [1/2]

void osg::GLBeginEndAdapter::setMatrixMode ( MatrixMode  mode)
inline

◆ setMatrixMode() [2/2]

MatrixMode osg::GLBeginEndAdapter::setMatrixMode ( ) const
inline

◆ setState()

void osg::GLBeginEndAdapter::setState ( State state)
inline

◆ TexCoord1f()

void osg::GLBeginEndAdapter::TexCoord1f ( GLfloat  x)
inline

◆ TexCoord1fv()

void osg::GLBeginEndAdapter::TexCoord1fv ( const GLfloat *  tc)
inline

◆ TexCoord2f()

void osg::GLBeginEndAdapter::TexCoord2f ( GLfloat  x,
GLfloat  y 
)
inline

◆ TexCoord2fv()

void osg::GLBeginEndAdapter::TexCoord2fv ( const GLfloat *  tc)
inline

◆ TexCoord3f()

void osg::GLBeginEndAdapter::TexCoord3f ( GLfloat  x,
GLfloat  y,
GLfloat  z 
)
inline

◆ TexCoord3fv()

void osg::GLBeginEndAdapter::TexCoord3fv ( const GLfloat *  tc)
inline

◆ TexCoord4f()

void osg::GLBeginEndAdapter::TexCoord4f ( GLfloat  x,
GLfloat  y,
GLfloat  z,
GLfloat  w 
)
inline

◆ TexCoord4fv()

void osg::GLBeginEndAdapter::TexCoord4fv ( const GLfloat *  tc)
inline

◆ Translated()

void osg::GLBeginEndAdapter::Translated ( GLdouble  x,
GLdouble  y,
GLdouble  z 
)

◆ Translatef()

void osg::GLBeginEndAdapter::Translatef ( GLfloat  x,
GLfloat  y,
GLfloat  z 
)
inline

◆ Vertex3dv() [1/2]

void osg::GLBeginEndAdapter::Vertex3dv ( GLdouble  x,
GLdouble  y,
GLdouble  z 
)
inline

◆ Vertex3dv() [2/2]

void osg::GLBeginEndAdapter::Vertex3dv ( const GLdouble *  v)
inline

◆ Vertex3f()

void osg::GLBeginEndAdapter::Vertex3f ( GLfloat  x,
GLfloat  y,
GLfloat  z 
)

◆ Vertex3fv()

void osg::GLBeginEndAdapter::Vertex3fv ( const GLfloat *  v)
inline

◆ VertexAttrib1f()

void osg::GLBeginEndAdapter::VertexAttrib1f ( GLuint  unit,
GLfloat  x 
)
inline

◆ VertexAttrib1fv()

void osg::GLBeginEndAdapter::VertexAttrib1fv ( GLuint  unit,
const GLfloat *  tc 
)
inline

◆ VertexAttrib2f()

void osg::GLBeginEndAdapter::VertexAttrib2f ( GLuint  unit,
GLfloat  x,
GLfloat  y 
)
inline

◆ VertexAttrib2fv()

void osg::GLBeginEndAdapter::VertexAttrib2fv ( GLuint  unit,
const GLfloat *  tc 
)
inline

◆ VertexAttrib3f()

void osg::GLBeginEndAdapter::VertexAttrib3f ( GLuint  unit,
GLfloat  x,
GLfloat  y,
GLfloat  z 
)
inline

◆ VertexAttrib3fv()

void osg::GLBeginEndAdapter::VertexAttrib3fv ( GLuint  unit,
const GLfloat *  tc 
)
inline

◆ VertexAttrib4f()

void osg::GLBeginEndAdapter::VertexAttrib4f ( GLuint  unit,
GLfloat  x,
GLfloat  y,
GLfloat  z,
GLfloat  w 
)

◆ VertexAttrib4fv()

void osg::GLBeginEndAdapter::VertexAttrib4fv ( GLuint  unit,
const GLfloat *  tc 
)
inline

Member Data Documentation

◆ _color

osg::Vec4f osg::GLBeginEndAdapter::_color
protected

◆ _colorAssigned

bool osg::GLBeginEndAdapter::_colorAssigned
protected

◆ _colors

osg::ref_ptr<osg::Vec4Array> osg::GLBeginEndAdapter::_colors
protected

◆ _matrixStack

MatrixStack osg::GLBeginEndAdapter::_matrixStack
protected

◆ _mode

MatrixMode osg::GLBeginEndAdapter::_mode
protected

◆ _normal

osg::Vec3f osg::GLBeginEndAdapter::_normal
protected

◆ _normalAssigned

bool osg::GLBeginEndAdapter::_normalAssigned
protected

◆ _normals

osg::ref_ptr<osg::Vec3Array> osg::GLBeginEndAdapter::_normals
protected

◆ _overallColor

osg::Vec4f osg::GLBeginEndAdapter::_overallColor
protected

◆ _overallColorAssigned

bool osg::GLBeginEndAdapter::_overallColorAssigned
protected

◆ _overallNormal

osg::Vec3f osg::GLBeginEndAdapter::_overallNormal
protected

◆ _overallNormalAssigned

bool osg::GLBeginEndAdapter::_overallNormalAssigned
protected

◆ _primitiveMode

GLenum osg::GLBeginEndAdapter::_primitiveMode
protected

◆ _state

State* osg::GLBeginEndAdapter::_state
protected

◆ _texCoordAssignedList

AssignedList osg::GLBeginEndAdapter::_texCoordAssignedList
protected

◆ _texCoordList

VertexList osg::GLBeginEndAdapter::_texCoordList
protected

◆ _texCoordsList

VertexArrayList osg::GLBeginEndAdapter::_texCoordsList
protected

◆ _vertexAttribAssignedList

AssignedList osg::GLBeginEndAdapter::_vertexAttribAssignedList
protected

◆ _vertexAttribList

VertexList osg::GLBeginEndAdapter::_vertexAttribList
protected

◆ _vertexAttribsList

VertexArrayList osg::GLBeginEndAdapter::_vertexAttribsList
protected

◆ _vertices

osg::ref_ptr<osg::Vec3Array> osg::GLBeginEndAdapter::_vertices
protected

The documentation for this class was generated from the following file: