1 /***********************************************************************/
2 /* Open Visualization Data Explorer                                    */
3 /* (C) Copyright IBM Corp. 1989,1999                                   */
4 /* ALL RIGHTS RESERVED                                                 */
5 /* This code licensed under the                                        */
6 /*    "IBM PUBLIC LICENSE - Open Visualization Data Explorer"          */
7 /***********************************************************************/
8 
9 #ifndef _DXSTEREO_H_
10 #define _DXSTEREO_H_
11 
12 typedef struct
13 {
14     int xOffset, yOffset;
15     int xSize, ySize;
16     float aspect;
17 } WindowInfo;
18 
19 #if defined(DX_NATIVE_WINDOWS)
20 
21 typedef int (*InitializeStereoSystemMode)(HDC, HWND);
22 typedef int (*CreateStereoWindows)(HDC, HWND,
23 								   HRGN *, WindowInfo *,
24 								   HRGN *, WindowInfo *);
25 typedef int (*ExitStereo)(HDC, HWND, HRGN *, HRGN *);
26 
27 typedef int   (*MapStereoXY)(void *, HWND, HWND, WindowInfo,
28 				int, int, int*, int*);
29 
30 #else
31 
32 typedef int   (*InitializeStereoSystemMode)(Display *, Window);
33 typedef int   (*CreateStereoWindows)(Display *, Window,
34 				Window *, WindowInfo *,
35 				Window *, WindowInfo *);
36 typedef int   (*ExitStereo)(Display *, Window, Window, Window);
37 
38 typedef int   (*MapStereoXY)(void *, Window, Window, WindowInfo,
39 				int, int, int*, int*);
40 #endif /* native windows */
41 
42 typedef void *(*InitializeStereoCameraMode)(void *, dxObject);
43 typedef int   (*ExitStereoCameraMode)(void *);
44 typedef int   (*CreateStereoCameras)(void *,
45 				int, float, float,
46 				float *, float *, float *, float, float,
47 				float *, float *, float *, float **,
48 				float *, float *, float *, float **);
49 
50 typedef struct
51 {
52     InitializeStereoSystemMode 	initializeStereoSystemMode;
53     CreateStereoWindows 	createStereoWindows;
54     ExitStereo          	exitStereo;
55 } StereoSystemMode;
56 
57 typedef struct
58 {
59     InitializeStereoCameraMode  initializeStereoCameraMode;
60     ExitStereoCameraMode  	exitStereoCameraMode;
61     CreateStereoCameras     	createStereoCameras;
62     MapStereoXY			mapStereoXY;
63 } StereoCameraMode;
64 
65 
66 #endif
67