Clone of mesa.
您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

mglmesa.h 3.0KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. /****************************************************************************
  2. *
  3. * Mesa bindings for SciTech MGL
  4. *
  5. * Copyright (C) 1996 SciTech Software.
  6. * All rights reserved.
  7. *
  8. * Filename: mglmesa.h
  9. * Version: Revision: 1.1.1.1
  10. *
  11. * Language: ANSI C
  12. * Environment: Any
  13. *
  14. * Description: Header file for the Mesa/OpenGL interface bindings for the
  15. * SciTech MGL graphics library. Uses the MGL internal
  16. * device context structures to get direct access to the
  17. * high performance MGL rasterization functions for maximum
  18. * performance. Utilizes the VESA VBE/AF Accelerator Functions
  19. * via the MGL's accelerated device driver functions, as well
  20. * as basic DirectDraw accelerated functions provided by the
  21. * MGL.
  22. *
  23. * This library is free software; you can redistribute it and/or
  24. * modify it under the terms of the GNU Library General Public
  25. * License as published by the Free Software Foundation; either
  26. * version 2 of the License, or (at your option) any later version.
  27. *
  28. * This library is distributed in the hope that it will be useful,
  29. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  30. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  31. * Library General Public License for more details.
  32. *
  33. * You should have received a copy of the GNU Library General Public
  34. * License along with this library; if not, write to the Free
  35. * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  36. *
  37. *
  38. ****************************************************************************/
  39. #ifndef __MGLMESA_H
  40. #define __MGLMESA_H
  41. #include "mgraph.h"
  42. /*------------------------- Function Prototypes ---------------------------*/
  43. #ifdef __cplusplus
  44. extern "C" { /* Use "C" linkage when in C++ mode */
  45. #endif
  46. #ifndef __WINDOWS__
  47. #define GLAPIENTRY
  48. #endif
  49. #ifdef __WINDOWS__
  50. bool GLAPIENTRY MGLMesaInitDLL(MGLCallbacks *cb,char *version);
  51. #endif
  52. void GLAPIENTRY MGLMesaChooseVisual(MGLDC *dc,MGLVisual *visual);
  53. bool GLAPIENTRY MGLMesaSetVisual(MGLDC *dc,MGLVisual *visual);
  54. bool GLAPIENTRY MGLMesaCreateContext(MGLDC *dc,bool forceMemDC);
  55. void GLAPIENTRY MGLMesaDestroyContext(MGLDC *dc);
  56. void GLAPIENTRY MGLMesaMakeCurrent(MGLDC *dc);
  57. void GLAPIENTRY MGLMesaSwapBuffers(MGLDC *dc,bool waitVRT);
  58. /* Palette manipulation support. The reason we provide palette manipulation
  59. * routines is so that when rendering in double buffered modes with a
  60. * software backbuffer, the palette for the backbuffer is kept consistent
  61. * with the hardware front buffer.
  62. */
  63. void GLAPIENTRY MGLMesaSetPaletteEntry(MGLDC *dc,int entry,uchar red,uchar green,uchar blue);
  64. void GLAPIENTRY MGLMesaSetPalette(MGLDC *dc,palette_t *pal,int numColors,int startIndex);
  65. void GLAPIENTRY MGLMesaRealizePalette(MGLDC *dc,int numColors,int startIndex,int waitVRT);
  66. #ifdef __cplusplus
  67. } /* End of "C" linkage for C++ */
  68. #endif /* __cplusplus */
  69. #endif /* __MGLMESA_H */