118 lines
3.2 KiB
C
118 lines
3.2 KiB
C
/* Window-specific OpenGL functions implementation.
|
|
*
|
|
* Copyright (c) 2000 Lionel Ulmer
|
|
*
|
|
* This library is free software; you can redistribute it and/or
|
|
* modify it under the terms of the GNU Lesser General Public
|
|
* License as published by the Free Software Foundation; either
|
|
* version 2.1 of the License, or (at your option) any later version.
|
|
*
|
|
* 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 GNU
|
|
* Lesser General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU Lesser General Public
|
|
* License along with this library; if not, write to the Free Software
|
|
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
*/
|
|
|
|
#ifndef __DLLS_OPENGL32_WGL_H
|
|
#define __DLLS_OPENGL32_WGL_H
|
|
|
|
#include "gdi.h"
|
|
|
|
typedef void *HGLRC;
|
|
|
|
typedef struct {
|
|
WORD nSize;
|
|
WORD nVersion;
|
|
DWORD dwFlags;
|
|
BYTE iPixelType;
|
|
BYTE cColorBits;
|
|
BYTE cRedBits;
|
|
BYTE cRedShift;
|
|
BYTE cGreenBits;
|
|
BYTE cGreenShift;
|
|
BYTE cBlueBits;
|
|
BYTE cBlueShift;
|
|
BYTE cAlphaBits;
|
|
BYTE cAlphaShift;
|
|
BYTE cAccumBits;
|
|
BYTE cAccumRedBits;
|
|
BYTE cAccumGreenBits;
|
|
BYTE cAccumBlueBits;
|
|
BYTE cAccumAlphaBits;
|
|
BYTE cDepthBits;
|
|
BYTE cStencilBits;
|
|
BYTE cAuxBuffers;
|
|
BYTE iLayerPlane;
|
|
BYTE bReserved;
|
|
COLORREF crTransparent;
|
|
} LAYERPLANEDESCRIPTOR;
|
|
typedef LAYERPLANEDESCRIPTOR* LPLAYERPLANEDESCRIPTOR;
|
|
|
|
typedef struct {
|
|
FLOAT x;
|
|
FLOAT y;
|
|
} POINTFLOAT;
|
|
|
|
typedef struct {
|
|
FLOAT gmfBlackBoxX;
|
|
FLOAT gmfBlackBoxY;
|
|
POINTFLOAT gmfptGlyphOrigin;
|
|
FLOAT gmfCellIncX;
|
|
FLOAT gmfCellIncY;
|
|
} GLYPHMETRICSFLOAT;
|
|
typedef GLYPHMETRICSFLOAT *LPGLYPHMETRICSFLOAT;
|
|
|
|
HGLRC WINAPI wglCreateContext(HDC hdc) ;
|
|
HGLRC WINAPI wglCreateLayerContext(HDC hdc,
|
|
int iLayerPlane) ;
|
|
BOOL WINAPI wglCopyContext(HGLRC hglrcSrc,
|
|
HGLRC hglrcDst,
|
|
UINT mask) ;
|
|
BOOL WINAPI wglDeleteContext(HGLRC hglrc) ;
|
|
BOOL WINAPI wglDescribeLayerPlane(HDC hdc,
|
|
int iPixelFormat,
|
|
int iLayerPlane,
|
|
UINT nBytes,
|
|
LPLAYERPLANEDESCRIPTOR plpd) ;
|
|
HGLRC WINAPI wglGetCurrentContext(void) ;
|
|
HDC WINAPI wglGetCurrentDC(void) ;
|
|
int WINAPI wglGetLayerPaletteEntries(HDC hdc,
|
|
int iLayerPlane,
|
|
int iStart,
|
|
int cEntries,
|
|
const COLORREF *pcr) ;
|
|
void * WINAPI wglGetProcAddress(LPCSTR lpszProc) ;
|
|
BOOL WINAPI wglMakeCurrent(HDC hdc,
|
|
HGLRC hglrc) ;
|
|
BOOL WINAPI wglRealizeLayerPalette(HDC hdc,
|
|
int iLayerPlane,
|
|
BOOL bRealize) ;
|
|
int WINAPI wglSetLayerPaletteEntries(HDC hdc,
|
|
int iLayerPlane,
|
|
int iStart,
|
|
int cEntries,
|
|
const COLORREF *pcr) ;
|
|
BOOL WINAPI wglShareLists(HGLRC hglrc1,
|
|
HGLRC hglrc2) ;
|
|
BOOL WINAPI wglSwapLayerBuffers(HDC hdc,
|
|
UINT fuPlanes);
|
|
BOOL WINAPI wglUseFontBitmaps(HDC hdc,
|
|
DWORD first,
|
|
DWORD count,
|
|
DWORD listBase) ;
|
|
BOOL WINAPI wglUseFontOutlines(HDC hdc,
|
|
DWORD first,
|
|
DWORD count,
|
|
DWORD listBase,
|
|
FLOAT deviation,
|
|
FLOAT extrusion,
|
|
int format,
|
|
LPGLYPHMETRICSFLOAT lpgmf) ;
|
|
const char * WINAPI wglGetExtensionsStringARB(HDC hdc) ;
|
|
|
|
#endif /* __DLLS_OPENGL32_WGL_H */
|