GLU
Go to the documentation of this file.
/* -*-c++-*- OpenSceneGraph - Copyright (C) 1998-2006 Robert Osfield
*
* This library is open source and may be redistributed and/or modified under
* the terms of the OpenSceneGraph Public License (OSGPL) version 0.0 or
* (at your option) any later version. The full license is in LICENSE file
* included with this distribution, and on the openscenegraph.org website.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* OpenSceneGraph Public License for more details.
*/
#ifndef OSG_GLU
#define OSG_GLU 1
#include <osg/GL>
namespace osg
{
/* Pixel storage modes, used by gluScaleImage */
struct OSG_EXPORT PixelStorageModes
{
// sets defaults as per glGet docs in OpenGL red book
PixelStorageModes();
// use glGet's to retrieve all the current settings
void retrieveStoreModes();
// use glGet's to retrieve all the current 3D settings
void retrieveStoreModes3D();
GLint pack_alignment;
GLint pack_row_length;
GLint pack_skip_rows;
GLint pack_skip_pixels;
GLint pack_lsb_first;
GLint pack_swap_bytes;
GLint pack_skip_images;
GLint pack_image_height;
GLint unpack_alignment;
GLint unpack_row_length;
GLint unpack_skip_rows;
GLint unpack_skip_pixels;
GLint unpack_lsb_first;
GLint unpack_swap_bytes;
GLint unpack_skip_images;
GLint unpack_image_height;
} ;
extern OSG_EXPORT const GLubyte * gluErrorString (GLenum error);
extern OSG_EXPORT GLint gluScaleImage (PixelStorageModes* psm, GLenum format, GLsizei wIn, GLsizei hIn, GLenum typeIn, const void *dataIn, GLsizei wOut, GLsizei hOut, GLenum typeOut, GLvoid* dataOut);
extern OSG_EXPORT GLint gluScaleImage (GLenum format, GLsizei wIn, GLsizei hIn, GLenum typeIn, const void *dataIn, GLsizei wOut, GLsizei hOut, GLenum typeOut, GLvoid* dataOut);
extern OSG_EXPORT GLint gluBuild1DMipmapLevels (GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void *data);
extern OSG_EXPORT GLint gluBuild1DMipmaps (GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, const void *data);
extern OSG_EXPORT GLint gluBuild2DMipmapLevels (GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void *data);
extern OSG_EXPORT GLint gluBuild2DMipmaps (GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *data);
typedef void (GL_APIENTRY * GLTexImage3DProc) ( GLenum target, GLint level, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
extern OSG_EXPORT GLint gluBuild3DMipmapLevels (GLTexImage3DProc glTextImage3DProc, GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void *data);
extern OSG_EXPORT GLint gluBuild3DMipmaps (GLTexImage3DProc glTextImage3DProc, GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *data);
/* ErrorCode */
#define GLU_INVALID_ENUM 100900
#define GLU_INVALID_VALUE 100901
#define GLU_OUT_OF_MEMORY 100902
#define GLU_INCOMPATIBLE_GL_VERSION 100903
#define GLU_INVALID_OPERATION 100904
/* Boolean */
#define GLU_FALSE 0
#define GLU_TRUE 1
/* QuadricDrawStyle */
#define GLU_POINT 100010
#define GLU_LINE 100011
#define GLU_FILL 100012
#define GLU_SILHOUETTE 100013
/* QuadricCallback */
/* GLU_ERROR */
/* QuadricNormal */
#define GLU_SMOOTH 100000
#define GLU_FLAT 100001
#define GLU_NONE 100002
/* QuadricOrientation */
#define GLU_OUTSIDE 100020
#define GLU_INSIDE 100021
/* TessCallback */
#define GLU_TESS_BEGIN 100100
#define GLU_BEGIN 100100
#define GLU_TESS_VERTEX 100101
#define GLU_VERTEX 100101
#define GLU_TESS_END 100102
#define GLU_END 100102
#define GLU_TESS_ERROR 100103
#define GLU_TESS_EDGE_FLAG 100104
#define GLU_EDGE_FLAG 100104
#define GLU_TESS_COMBINE 100105
#define GLU_TESS_BEGIN_DATA 100106
#define GLU_TESS_VERTEX_DATA 100107
#define GLU_TESS_END_DATA 100108
#define GLU_TESS_ERROR_DATA 100109
#define GLU_TESS_EDGE_FLAG_DATA 100110
#define GLU_TESS_COMBINE_DATA 100111
/* TessContour */
#define GLU_CW 100120
#define GLU_CCW 100121
#define GLU_INTERIOR 100122
#define GLU_EXTERIOR 100123
#define GLU_UNKNOWN 100124
/* TessProperty */
#define GLU_TESS_WINDING_RULE 100140
#define GLU_TESS_BOUNDARY_ONLY 100141
#define GLU_TESS_TOLERANCE 100142
/* TessError */
#define GLU_TESS_ERROR1 100151
#define GLU_TESS_ERROR2 100152
#define GLU_TESS_ERROR3 100153
#define GLU_TESS_ERROR4 100154
#define GLU_TESS_ERROR5 100155
#define GLU_TESS_ERROR6 100156
#define GLU_TESS_ERROR7 100157
#define GLU_TESS_ERROR8 100158
#define GLU_TESS_MISSING_BEGIN_POLYGON 100151
#define GLU_TESS_MISSING_BEGIN_CONTOUR 100152
#define GLU_TESS_MISSING_END_POLYGON 100153
#define GLU_TESS_MISSING_END_CONTOUR 100154
#define GLU_TESS_COORD_TOO_LARGE 100155
#define GLU_TESS_NEED_COMBINE_CALLBACK 100156
/* TessWinding */
#define GLU_TESS_WINDING_ODD 100130
#define GLU_TESS_WINDING_NONZERO 100131
#define GLU_TESS_WINDING_POSITIVE 100132
#define GLU_TESS_WINDING_NEGATIVE 100133
#define GLU_TESS_WINDING_ABS_GEQ_TWO 100134
struct GLUtesselator;
typedef GLUtesselator GLUtesselatorObj;
typedef GLUtesselator GLUtriangulatorObj;
#define GLU_TESS_MAX_COORD 1.0e150
/* Internal convenience typedefs */
typedef void (GL_APIENTRY * _GLUfuncptr)();
typedef void (GL_APIENTRY * GLU_TESS_CALLBACK)();
extern OSG_EXPORT GLUtesselator* GL_APIENTRY gluNewTess (void);
extern OSG_EXPORT void GL_APIENTRY gluDeleteTess (GLUtesselator* tess);
extern OSG_EXPORT void GL_APIENTRY gluTessBeginContour (GLUtesselator* tess);
extern OSG_EXPORT void GL_APIENTRY gluTessCallback (GLUtesselator* tess, GLenum which, _GLUfuncptr CallBackFunc);
extern OSG_EXPORT void GL_APIENTRY gluTessEndContour (GLUtesselator* tess);
extern OSG_EXPORT void GL_APIENTRY gluTessNormal (GLUtesselator* tess, GLdouble valueX, GLdouble valueY, GLdouble valueZ);
extern OSG_EXPORT void GL_APIENTRY gluTessProperty (GLUtesselator* tess, GLenum which, GLdouble data);
extern OSG_EXPORT void GL_APIENTRY gluTessVertex (GLUtesselator* tess, GLdouble *location, GLvoid* data);
extern OSG_EXPORT void GL_APIENTRY gluTessBeginPolygon (GLUtesselator* tess, GLvoid* data);
extern OSG_EXPORT void GL_APIENTRY gluTessEndPolygon (GLUtesselator* tess);
extern OSG_EXPORT void GL_APIENTRY gluGetTessProperty( GLUtesselator *tess, GLenum which, GLdouble *value );
}
#endif // __osgGLU_h
osg
Definition AlphaFunc:19
osg::gluTessEndPolygon
OSG_EXPORT void GL_APIENTRY gluTessEndPolygon(GLUtesselator *tess)
osg::gluGetTessProperty
OSG_EXPORT void GL_APIENTRY gluGetTessProperty(GLUtesselator *tess, GLenum which, GLdouble *value)
osg::gluNewTess
OSG_EXPORT GLUtesselator *GL_APIENTRY gluNewTess(void)
osg::gluBuild1DMipmapLevels
OSG_EXPORT GLint gluBuild1DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void *data)
osg::GLUtriangulatorObj
GLUtesselator GLUtriangulatorObj
Definition GLU:163
osg::gluScaleImage
OSG_EXPORT GLint gluScaleImage(PixelStorageModes *psm, GLenum format, GLsizei wIn, GLsizei hIn, GLenum typeIn, const void *dataIn, GLsizei wOut, GLsizei hOut, GLenum typeOut, GLvoid *dataOut)
osg::gluTessNormal
OSG_EXPORT void GL_APIENTRY gluTessNormal(GLUtesselator *tess, GLdouble valueX, GLdouble valueY, GLdouble valueZ)
osg::gluBuild3DMipmaps
OSG_EXPORT GLint gluBuild3DMipmaps(GLTexImage3DProc glTextImage3DProc, GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *data)
osg::GLU_TESS_CALLBACK
void(GL_APIENTRY * GLU_TESS_CALLBACK)()
Definition GLU:169
osg::gluBuild1DMipmaps
OSG_EXPORT GLint gluBuild1DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLenum format, GLenum type, const void *data)
osg::GLUtesselatorObj
GLUtesselator GLUtesselatorObj
Definition GLU:162
osg::gluBuild2DMipmaps
OSG_EXPORT GLint gluBuild2DMipmaps(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *data)
osg::gluTessBeginPolygon
OSG_EXPORT void GL_APIENTRY gluTessBeginPolygon(GLUtesselator *tess, GLvoid *data)
osg::gluTessProperty
OSG_EXPORT void GL_APIENTRY gluTessProperty(GLUtesselator *tess, GLenum which, GLdouble data)
osg::gluTessBeginContour
OSG_EXPORT void GL_APIENTRY gluTessBeginContour(GLUtesselator *tess)
osg::gluErrorString
OSG_EXPORT const GLubyte * gluErrorString(GLenum error)
osg::gluTessVertex
OSG_EXPORT void GL_APIENTRY gluTessVertex(GLUtesselator *tess, GLdouble *location, GLvoid *data)
osg::gluTessEndContour
OSG_EXPORT void GL_APIENTRY gluTessEndContour(GLUtesselator *tess)
osg::GLTexImage3DProc
void(GL_APIENTRY * GLTexImage3DProc)(GLenum target, GLint level, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
Definition GLU:71
osg::gluBuild3DMipmapLevels
OSG_EXPORT GLint gluBuild3DMipmapLevels(GLTexImage3DProc glTextImage3DProc, GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void *data)
osg::gluTessCallback
OSG_EXPORT void GL_APIENTRY gluTessCallback(GLUtesselator *tess, GLenum which, _GLUfuncptr CallBackFunc)
osg::_GLUfuncptr
void(GL_APIENTRY * _GLUfuncptr)()
Definition GLU:168
osg::gluDeleteTess
OSG_EXPORT void GL_APIENTRY gluDeleteTess(GLUtesselator *tess)
osg::gluBuild2DMipmapLevels
OSG_EXPORT GLint gluBuild2DMipmapLevels(GLenum target, GLint internalFormat, GLsizei width, GLsizei height, GLenum format, GLenum type, GLint level, GLint base, GLint max, const void *data)
OSG_EXPORT
#define OSG_EXPORT
Definition osg/Export:39
osg::PixelStorageModes
Definition GLU:24
osg::PixelStorageModes::pack_lsb_first
GLint pack_lsb_first
Definition GLU:38
osg::PixelStorageModes::unpack_swap_bytes
GLint unpack_swap_bytes
Definition GLU:48
osg::PixelStorageModes::pack_row_length
GLint pack_row_length
Definition GLU:35
osg::PixelStorageModes::PixelStorageModes
PixelStorageModes()
osg::PixelStorageModes::retrieveStoreModes3D
void retrieveStoreModes3D()
osg::PixelStorageModes::pack_skip_rows
GLint pack_skip_rows
Definition GLU:36
osg::PixelStorageModes::unpack_alignment
GLint unpack_alignment
Definition GLU:43
osg::PixelStorageModes::pack_skip_pixels
GLint pack_skip_pixels
Definition GLU:37
osg::PixelStorageModes::pack_swap_bytes
GLint pack_swap_bytes
Definition GLU:39
osg::PixelStorageModes::unpack_row_length
GLint unpack_row_length
Definition GLU:44
osg::PixelStorageModes::unpack_skip_rows
GLint unpack_skip_rows
Definition GLU:45
osg::PixelStorageModes::pack_alignment
GLint pack_alignment
Definition GLU:34
osg::PixelStorageModes::retrieveStoreModes
void retrieveStoreModes()
osg::PixelStorageModes::unpack_skip_pixels
GLint unpack_skip_pixels
Definition GLU:46
osg::PixelStorageModes::unpack_lsb_first
GLint unpack_lsb_first
Definition GLU:47
osg::PixelStorageModes::unpack_image_height
GLint unpack_image_height
Definition GLU:50
osg::PixelStorageModes::unpack_skip_images
GLint unpack_skip_images
Definition GLU:49
osg::PixelStorageModes::pack_image_height
GLint pack_image_height
Definition GLU:41
osg::PixelStorageModes::pack_skip_images
GLint pack_skip_images
Definition GLU:40