-/* mesa_extend.h\r
- * for wmesa-2.3\r
- * Written by Li Wei (liwei@aiar.xjtu.edu.cn)\r
- */\r
-\r
-/* Log 6/14, 1997\r
- * revision 1.01\r
- * struct DisplayOptions defined for tk_ddmesa.c to read the initial file\r
- */\r
-\r
-#include <GL/gl.h>\r
-#include <stdlib.h>\r
-#include <windows.h>\r
-#include <winbase.h>\r
-\r
-typedef enum SHIFT{ SHIFT_NONE, SHIFT_LEFT,SHIFT_RIGHT,SHIFT_UP,SHIFT_DOWN,SHIFT_FAR,SHIFT_NEAR};\r
-\r
-extern GLfloat deltaView ;\r
-\r
-extern GLuint viewShift;\r
-\r
-extern GLenum glImageRendered();\r
-\r
-extern GLenum imageRendered ;\r
-\r
-extern GLfloat deltaView ;\r
-\r
-extern GLfloat deltaShift;\r
-\r
-void shiftView( void );\r
-\r
-struct DISPLAY_OPTIONS {\r
- int stereo;\r
- int fullScreen;\r
- int mode;\r
- int bpp;\r
-};\r
-\r
-extern struct DISPLAY_OPTIONS displayOptions;\r
-extern void getDisplayOptions( void);\r
-\r
-GLenum defaultKeyProc(int, GLenum);\r
-extern GLenum (*userKeyProc) (int, GLenum);\r
+/* mesa_extend.h
+ * for wmesa-2.3
+ * Written by Li Wei (liwei@aiar.xjtu.edu.cn)
+ */
+
+/* Log 6/14, 1997
+ * revision 1.01
+ * struct DisplayOptions defined for tk_ddmesa.c to read the initial file
+ */
+
+#include <GL/gl.h>
+#include <stdlib.h>
+#include <windows.h>
+#include <winbase.h>
+
+typedef enum SHIFT{ SHIFT_NONE, SHIFT_LEFT,SHIFT_RIGHT,SHIFT_UP,SHIFT_DOWN,SHIFT_FAR,SHIFT_NEAR};
+
+extern GLfloat deltaView ;
+
+extern GLuint viewShift;
+
+extern GLenum glImageRendered();
+
+extern GLenum imageRendered ;
+
+extern GLfloat deltaView ;
+
+extern GLfloat deltaShift;
+
+void shiftView( void );
+
+struct DISPLAY_OPTIONS {
+ int stereo;
+ int fullScreen;
+ int mode;
+ int bpp;
+};
+
+extern struct DISPLAY_OPTIONS displayOptions;
+extern void getDisplayOptions( void);
+
+GLenum defaultKeyProc(int, GLenum);
+extern GLenum (*userKeyProc) (int, GLenum);
-/* File name : wmesadef.h\r
- * Version : 2.3\r
- *\r
- * Header file for display driver for Mesa 2.3 under\r
- * Windows95, WindowsNT and Win32\r
- *\r
- * Copyright (C) 1996- Li Wei\r
- * Address : Institute of Artificial Intelligence\r
- * : & Robotics\r
- * : Xi'an Jiaotong University\r
- * Email : liwei@aiar.xjtu.edu.cn\r
- * Web page : http://sun.aiar.xjtu.edu.cn\r
- *\r
- * This file and its associations are partially based on the\r
- * Windows NT driver for Mesa, written by Mark Leaming\r
- * (mark@rsinc.com).\r
- */\r
-\r
-/*\r
- * $Log: wmesadef.h,v $
- * Revision 1.1 1999/08/19 00:55:42 jtg
- * Initial revision
+/* File name : wmesadef.h
+ * Version : 2.3
*
- * Revision 1.3 1999/01/03 03:08:57 brianp
- * Ted Jump's changes
- *\r
- * Initial version 1997/6/14 CST by Li Wei(liwei@aiar.xjtu.edu.cn)\r
- */\r
-\r
-/*\r
- * $Log: wmesadef.h,v $
- * Revision 1.1 1999/08/19 00:55:42 jtg
- * Initial revision
+ * Header file for display driver for Mesa 2.3 under
+ * Windows95, WindowsNT and Win32
*
- * Revision 1.3 1999/01/03 03:08:57 brianp
- * Ted Jump's changes
- *\r
- * Revision 2.1 1996/11/15 10:54:00 CST by Li Wei(liwei@aiar.xjtu.edu.cn)\r
- * a new element added to wmesa_context :\r
- * dither_flag\r
- */\r
-\r
-/*\r
- * $Log: wmesadef.h,v $
- * Revision 1.1 1999/08/19 00:55:42 jtg
- * Initial revision
+ * Copyright (C) 1996- Li Wei
+ * Address : Institute of Artificial Intelligence
+ * : & Robotics
+ * : Xi'an Jiaotong University
+ * Email : liwei@aiar.xjtu.edu.cn
+ * Web page : http://sun.aiar.xjtu.edu.cn
+ *
+ * This file and its associations are partially based on the
+ * Windows NT driver for Mesa, written by Mark Leaming
+ * (mark@rsinc.com).
+ */
+
+/*
+ * $Log: wmesadef.h,v
+ * Revision 1.1.1.1 1999/08/19 00:55:42 jt
+ * Imported source
+
+ * Revision 1.3 1999/01/03 03:08:57 brian
+ * Ted Jump's change
*
- * Revision 1.3 1999/01/03 03:08:57 brianp
- * Ted Jump's changes
- *\r
- * Revision 2.0 1996/11/15 10:54:00 CST by Li Wei(liwei@aiar.xjtu.edu.cn)\r
- * Initial revision\r
- */\r
-\r
-\r
-\r
-#ifndef DDMESADEF_H\r
-#define DDMESADEF_H\r
-\r
-#include <windows.h>\r
-#include <GL\gl.h>\r
-#include "context.h"\r
-#ifdef DDRAW\r
- #include <ddraw.h>\r
-#endif\r
-//#include "profile.h"\r
-\r
-#define REDBITS 0x03\r
-#define REDSHIFT 0x00\r
-#define GREENBITS 0x03\r
-#define GREENSHIFT 0x03\r
-#define BLUEBITS 0x02\r
-#define BLUESHIFT 0x06\r
-\r
-typedef struct _dibSection{\r
- HDC hDC;\r
- HANDLE hFileMap;\r
- BOOL fFlushed;\r
- LPVOID base;\r
-}WMDIBSECTION, *PWMDIBSECTION;\r
-\r
-\r
-typedef struct wmesa_context{\r
- GLcontext *gl_ctx; /* The core GL/Mesa context */\r
- GLvisual *gl_visual; /* Describes the buffers */\r
- GLframebuffer *gl_buffer; /* Depth, stencil, accum, etc buffers */\r
-\r
-\r
- HWND Window;\r
- HDC hDC;\r
- HPALETTE hPalette;\r
- HPALETTE hOldPalette;\r
- HPEN hPen;\r
- HPEN hOldPen;\r
- HCURSOR hOldCursor;\r
- COLORREF crColor;\r
- // 3D projection stuff\r
- RECT drawRect;\r
- UINT uiDIBoffset;\r
- // OpenGL stuff\r
- HPALETTE hGLPalette;\r
- GLuint width;\r
- GLuint height;\r
- GLuint ScanWidth;\r
- GLboolean db_flag; //* double buffered?\r
- GLboolean rgb_flag; //* RGB mode?\r
- GLboolean dither_flag; //* use dither when 256 color mode for RGB?\r
- GLuint depth; //* bits per pixel (1, 8, 24, etc)\r
- ULONG pixel; // current color index or RGBA pixel value\r
- ULONG clearpixel; //* pixel for clearing the color buffers\r
- PBYTE ScreenMem; // WinG memory\r
- BITMAPINFO *IndexFormat;\r
- HPALETTE hPal; // Current Palette\r
- HPALETTE hPalHalfTone;\r
-\r
-\r
- WMDIBSECTION dib;\r
- BITMAPINFO bmi;\r
- HBITMAP hbmDIB;\r
- HBITMAP hOldBitmap;\r
- HBITMAP Old_Compat_BM;\r
- HBITMAP Compat_BM; // Bitmap for double buffering\r
- PBYTE pbPixels;\r
- int nColors;\r
- BYTE cColorBits;\r
- int pixelformat;\r
-\r
-#ifdef DDRAW\r
- LPDIRECTDRAW lpDD; // DirectDraw object\r
-// LPDIRECTDRAW2 lpDD2; // DirectDraw object\r
- LPDIRECTDRAWSURFACE lpDDSPrimary; // DirectDraw primary surface\r
- LPDIRECTDRAWSURFACE lpDDSOffScreen; // DirectDraw off screen surface\r
- LPDIRECTDRAWPALETTE lpDDPal; // DirectDraw palette\r
- BOOL bActive; // is application active?\r
- DDSURFACEDESC ddsd;\r
- int fullScreen;\r
- int gMode ;\r
-#endif\r
- RECT rectOffScreen;\r
- RECT rectSurface;\r
- HWND hwnd;\r
- DWORD pitch;\r
- PBYTE addrOffScreen;\r
-//#ifdef PROFILE\r
-// MESAPROF profile;\r
-//#endif\r
-} *PWMC;\r
-\r
-\r
-#define PAGE_FILE 0xffffffff\r
-\r
-\r
-\r
-#endif\r
+ * Initial version 1997/6/14 CST by Li Wei(liwei@aiar.xjtu.edu.cn)
+ */
+
+/*
+ * $Log: wmesadef.h,v
+ * Revision 1.1.1.1 1999/08/19 00:55:42 jt
+ * Imported source
+
+ * Revision 1.3 1999/01/03 03:08:57 brian
+ * Ted Jump's change
+ *
+ * Revision 2.1 1996/11/15 10:54:00 CST by Li Wei(liwei@aiar.xjtu.edu.cn)
+ * a new element added to wmesa_context :
+ * dither_flag
+ */
+
+/*
+ * $Log: wmesadef.h,v
+ * Revision 1.1.1.1 1999/08/19 00:55:42 jt
+ * Imported source
+
+ * Revision 1.3 1999/01/03 03:08:57 brian
+ * Ted Jump's change
+ *
+ * Revision 2.0 1996/11/15 10:54:00 CST by Li Wei(liwei@aiar.xjtu.edu.cn)
+ * Initial revision
+ */
+
+
+
+#ifndef DDMESADEF_H
+#define DDMESADEF_H
+
+#include <windows.h>
+#include <GL\gl.h>
+#include "context.h"
+#ifdef DDRAW
+ #include <ddraw.h>
+#endif
+//#include "profile.h"
+
+#define REDBITS 0x03
+#define REDSHIFT 0x00
+#define GREENBITS 0x03
+#define GREENSHIFT 0x03
+#define BLUEBITS 0x02
+#define BLUESHIFT 0x06
+
+typedef struct _dibSection{
+ HDC hDC;
+ HANDLE hFileMap;
+ BOOL fFlushed;
+ LPVOID base;
+}WMDIBSECTION, *PWMDIBSECTION;
+
+
+typedef struct wmesa_context{
+ GLcontext *gl_ctx; /* The core GL/Mesa context */
+ GLvisual *gl_visual; /* Describes the buffers */
+ GLframebuffer *gl_buffer; /* Depth, stencil, accum, etc buffers */
+
+
+ HWND Window;
+ HDC hDC;
+ HPALETTE hPalette;
+ HPALETTE hOldPalette;
+ HPEN hPen;
+ HPEN hOldPen;
+ HCURSOR hOldCursor;
+ COLORREF crColor;
+ // 3D projection stuff
+ RECT drawRect;
+ UINT uiDIBoffset;
+ // OpenGL stuff
+ HPALETTE hGLPalette;
+ GLuint width;
+ GLuint height;
+ GLuint ScanWidth;
+ GLboolean db_flag; //* double buffered?
+ GLboolean rgb_flag; //* RGB mode?
+ GLboolean dither_flag; //* use dither when 256 color mode for RGB?
+ GLuint depth; //* bits per pixel (1, 8, 24, etc)
+ ULONG pixel; // current color index or RGBA pixel value
+ ULONG clearpixel; //* pixel for clearing the color buffers
+ PBYTE ScreenMem; // WinG memory
+ BITMAPINFO *IndexFormat;
+ HPALETTE hPal; // Current Palette
+ HPALETTE hPalHalfTone;
+
+
+ WMDIBSECTION dib;
+ BITMAPINFO bmi;
+ HBITMAP hbmDIB;
+ HBITMAP hOldBitmap;
+ HBITMAP Old_Compat_BM;
+ HBITMAP Compat_BM; // Bitmap for double buffering
+ PBYTE pbPixels;
+ int nColors;
+ BYTE cColorBits;
+ int pixelformat;
+
+#ifdef DDRAW
+ LPDIRECTDRAW lpDD; // DirectDraw object
+// LPDIRECTDRAW2 lpDD2; // DirectDraw object
+ LPDIRECTDRAWSURFACE lpDDSPrimary; // DirectDraw primary surface
+ LPDIRECTDRAWSURFACE lpDDSOffScreen; // DirectDraw off screen surface
+ LPDIRECTDRAWPALETTE lpDDPal; // DirectDraw palette
+ BOOL bActive; // is application active?
+ DDSURFACEDESC ddsd;
+ int fullScreen;
+ int gMode ;
+#endif
+ RECT rectOffScreen;
+ RECT rectSurface;
+ HWND hwnd;
+ DWORD pitch;
+ PBYTE addrOffScreen;
+//#ifdef PROFILE
+// MESAPROF profile;
+//#endif
+} *PWMC;
+
+
+#define PAGE_FILE 0xffffffff
+
+
+
+#endif