Home | Info | Community | Development | myReactOS | Contact Us
ReactOS Development > Doxygengld_driver.h
Go to the documentation of this file.
00001 /**************************************************************************** 00002 * 00003 * Mesa 3-D graphics library 00004 * Direct3D Driver Interface 00005 * 00006 * ======================================================================== 00007 * 00008 * Copyright (C) 1991-2004 SciTech Software, Inc. All rights reserved. 00009 * 00010 * Permission is hereby granted, free of charge, to any person obtaining a 00011 * copy of this software and associated documentation files (the "Software"), 00012 * to deal in the Software without restriction, including without limitation 00013 * the rights to use, copy, modify, merge, publish, distribute, sublicense, 00014 * and/or sell copies of the Software, and to permit persons to whom the 00015 * Software is furnished to do so, subject to the following conditions: 00016 * 00017 * The above copyright notice and this permission notice shall be included 00018 * in all copies or substantial portions of the Software. 00019 * 00020 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 00021 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 00022 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 00023 * SCITECH SOFTWARE INC BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 00024 * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF 00025 * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 00026 * SOFTWARE. 00027 * 00028 * ====================================================================== 00029 * 00030 * Language: ANSI C 00031 * Environment: Windows 9x/2000/XP/XBox (Win32) 00032 * 00033 * Description: Driver functions and interfaces 00034 * 00035 ****************************************************************************/ 00036 00037 #ifndef _GLD_DRIVER_H 00038 #define _GLD_DRIVER_H 00039 00040 // This file is only useful is we're using the new GLD3 WGL code. 00041 #ifdef _USE_GLD3_WGL 00042 00043 #include "dglcontext.h" 00044 00045 // Same as DX8 D3DDISPLAYMODE 00046 typedef struct { 00047 DWORD Width; 00048 DWORD Height; 00049 DWORD Refresh; 00050 DWORD BPP; 00051 } GLD_displayMode; 00052 00053 typedef struct { 00054 // Returns a string for a given HRESULT error code. 00055 BOOL (*GetDXErrorString)(HRESULT hr, char *buf, int nBufSize); 00056 00057 // Driver functions for managing drawables. 00058 // Functions must respect persistant buffers / persistant interface. 00059 // NOTE: Persistant interface is: DirectDraw, pre-DX8; Direct3D, DX8 and above. 00060 BOOL (*CreateDrawable)(DGL_ctx *ctx, BOOL bPersistantInterface, BOOL bPersistantBuffers); 00061 BOOL (*ResizeDrawable)(DGL_ctx *ctx, BOOL bDefaultDriver, BOOL bPersistantInterface, BOOL bPersistantBuffers); 00062 BOOL (*DestroyDrawable)(DGL_ctx *ctx); 00063 00064 // Create/Destroy private globals belonging to driver 00065 BOOL (*CreatePrivateGlobals)(void); 00066 BOOL (*DestroyPrivateGlobals)(void); 00067 00068 // Build pixelformat list 00069 BOOL (*BuildPixelformatList)(void); 00070 00071 // Initialise Mesa's driver pointers 00072 BOOL (*InitialiseMesa)(DGL_ctx *ctx); 00073 00074 // Swap buffers 00075 BOOL (*SwapBuffers)(DGL_ctx *ctx, HDC hDC, HWND hWnd); 00076 00077 // wglGetProcAddress() 00078 PROC (*wglGetProcAddress)(LPCSTR a); 00079 00080 BOOL (*GetDisplayMode)(DGL_ctx *ctx, GLD_displayMode *glddm); 00081 } GLD_driver; 00082 00083 extern GLD_driver _gldDriver; 00084 00085 BOOL gldInitDriverPointers(DWORD dwDriver); 00086 const GLubyte* _gldGetStringGeneric(GLcontext *ctx, GLenum name); 00087 00088 #endif // _USE_GLD3_WGL 00089 00090 #endif // _GLD_DRIVER_H Generated on Sat May 26 2012 04:18:45 for ReactOS by
1.7.6.1
|