]> git.jsancho.org Git - lugaru.git/blob - Source/Stereo.h
Avoid using unitialized var in corner cases (fixes cppcheck warning)
[lugaru.git] / Source / Stereo.h
1 /*
2 Copyright (C) 2003, 2010 - Wolfire Games
3
4 This file is part of Lugaru.
5
6 Lugaru is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 Lugaru is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with Lugaru.  If not, see <http://www.gnu.org/licenses/>.
18 */
19
20 #ifndef STEREO_H_
21 #define STEREO_H_
22
23 enum StereoMode {
24     stereoNone,
25     stereoAnaglyph,             /* red/cyan */
26     stereoHorizontalInterlaced, /* some 3D monitors */
27     stereoVerticalInterlaced,
28     stereoHorizontalSplit,      /* cross-eyed view */
29     stereoVerticalSplit,
30     stereoOpenGL,               /* Whatever OpenGL does, if supported */
31     stereoCount                 /* must be last element */
32 };
33
34
35 enum StereoSide {
36     // Code multiplies by StereoSide to calculate camera offsets
37     stereoLeft   = -1,
38     stereoCenter = 0,
39     stereoRight  = 1
40 };
41
42 extern StereoMode stereomode;
43 extern StereoMode newstereomode;
44 extern float stereoseparation;
45 extern bool  stereoreverse;
46
47 bool CanInitStereo(StereoMode mode);
48 void InitStereo(StereoMode mode);
49 const char* StereoModeName(StereoMode mode);
50
51 #endif