mi32/mxstereo.h

Go to the documentation of this file.
00001 /**
00002  * \file mxstereo.h <mi32/mxstereo.h>
00003  * \brief Definitions for stereoscopic viewing
00004  *
00005  * \if NODOC
00006  * $Id: mxstereo.h_v 1.12 2003/09/15 13:49:56 fileserver!dwilliss Exp $
00007  *
00008  * $Log: mxstereo.h_v $
00009  * Revision 1.12  2003/09/15 13:49:56  fileserver!dwilliss
00010  * Doxygen
00011  *
00012  * Revision 1.11  2000/07/05 18:18:01  sparsons
00013  * Genitor documentation.
00014  *
00015  * Revision 1.10  1999/05/07 21:20:24  mju
00016  * Header restruct.
00017  *
00018  * Revision 1.9  1999/01/05  19:12:23  scowan
00019  * Swapped multiple keywords
00020  *
00021  * Revision 1.8  1998/12/23 14:32:15  mju
00022  * Include mgd.h if not already.
00023  *
00024  * Revision 1.7  1998/12/22  15:55:16  mju
00025  * Use MgdPIXEL.
00026  * Allow non-X use.
00027  *
00028  * Revision 1.6  1998/06/01  14:27:37  mju
00029  * Comment out unsupported device #defines.
00030  *
00031  * Revision 1.5  1997/12/12  16:45:32  mju
00032  * Add flag.
00033  *
00034  * Revision 1.4  1996/12/20  16:37:34  coffee!dwilliss
00035  * Added __cplusplus things
00036  *
00037  * Revision 1.3  1996/10/24  13:30:17  mju
00038  * Add ANAGLYPH_RedBlueMI definition.
00039  *
00040  * Revision 1.2  1996/09/16  22:17:09  mju
00041  * Add AnaglyphPC structure.
00042  *
00043  * Revision 1.1  1996/09/13  22:59:20  mju
00044  * Initial revision
00045  *
00046  * \endif
00047 **/
00048 
00049 #ifndef  INC_MI32_MXSTEREO_H
00050 #define  INC_MI32_MXSTEREO_H
00051 
00052 #ifndef INC_MI32_MGD_H
00053    #include <mi32/mgd.h>
00054 #endif
00055 
00056 #if defined(__cplusplus)
00057 extern "C" {
00058 #endif
00059 
00060 struct STEREOPARM {
00061    UINT8 StereoMode;
00062    UINT8 AnaglyphMode;
00063    UINT32 flags;
00064    struct {
00065       UINT8 Red;
00066       UINT8 Green;
00067       UINT8 Blue;
00068       } leftmask, rightmask;
00069    struct {                            /* Values for drawing anaglyph in PseudoColor mode */
00070       MgdPIXEL BackgroundPixel;        //!<  Background pixel 
00071       MgdPIXEL LeftPixel;              //!<  Left pixel for anaglyph 
00072       MgdPIXEL RightPixel;             //!<  Right pixel for anaglyph 
00073       } AnaglyphPC;
00074    };
00075 
00076 #define  STEREOMODE_Standard     1
00077 #define  STEREOMODE_CrossEyed    2
00078 /* #define  STEREOMODE_CyberScope   3 */
00079 /* #define  STEREOMODE_CrystalEyes  4 */
00080 #define  STEREOMODE_3DMax        101
00081 #define  STEREOMODE_SimulEyes    102
00082 #define  STEREOMODE_Anaglyph     103
00083 
00084 #define  ANAGLYPH_RedGreen       0
00085 #define  ANAGLYPH_RedBlue        1
00086 #define  ANAGLYPH_RedCyan        2
00087 #define  ANAGLYPH_GreenRed       3
00088 #define  ANAGLYPH_GreenBlue      4
00089 #define  ANAGLYPH_GreenMagenta   5
00090 #define  ANAGLYPH_BlueRed        6
00091 #define  ANAGLYPH_BlueGreen      7
00092 #define  ANAGLYPH_BlueYellow     8
00093 #define  ANAGLYPH_CyanRed        9
00094 #define  ANAGLYPH_MagentaGreen   10
00095 #define  ANAGLYPH_YellowBlue     11
00096 #define  ANAGLYPH_RedBlueMI      12    //!<  MicroImages red-blue glasses 
00097 
00098 #define  MxSTEREOFLAG_AllowSepWindows     0x0001   //!<  Allow separate-window stereo modes 
00099 #define  MxSTEREOFLAG_NeedAnaglyphPixels  0x0002
00100 
00101 //! Initialize STEREOPARM structure.
00102 void MxStereoParmInit (
00103    STEREOPARM *stereoparm, 
00104    UINT32 flags
00105    );
00106 
00107 //! Dialog allowing user to set stereo viewing options.
00108 int MxStereoSetup (
00109    Widget pwidget, 
00110    STEREOPARM *RetStereoParm
00111    );
00112 
00113 
00114 #if defined(__cplusplus)
00115 }
00116 #endif
00117 
00118 #endif      //!<  #ifndef INC_MI32_MXSTEREO_H 

Generated on Thu Aug 12 06:19:00 2004 for TNTsdk by doxygen 1.3.4-20031026