]> git.mxchange.org Git - flightgear.git/blobdiff - src/Main/fg_os.hxx
- Added ultra-light traffic is now a separate traffic class that can have its
[flightgear.git] / src / Main / fg_os.hxx
index ba36a08795f89998a431cfd3a04c16d5d3397e7a..9bbbb4d95ebed17be798ccc1b893773e7fd8bc34 100644 (file)
@@ -3,7 +3,11 @@
 
 // Plib pui needs to know at compile time what toolkit is in use.
 // Change this when we move to something other than glut.
-#define PU_USE_GLUT
+// #define PU_USE_GLUT -- moved to configure.ac -- EMH
+#ifdef HAVE_CONFIG_H
+#  include <config.h>
+#endif
+
 
 enum { MOUSE_BUTTON_LEFT,
        MOUSE_BUTTON_MIDDLE,
@@ -38,9 +42,11 @@ enum { KEYMOD_NONE     = 0,
 //
 
 void fgOSInit(int* argc, char** argv);
-void fgOSOpenWindow(int w, int h, int bpp, bool alpha);
+void fgOSOpenWindow(int w, int h, int bpp, bool alpha, bool stencil,
+                    bool fullscreen);
 void fgOSFullScreen();
 void fgOSMainLoop();
+void fgOSExit(int code);
 
 void fgSetMouseCursor(int cursor);
 int  fgGetMouseCursor();
@@ -54,12 +60,15 @@ void fgRequestRedraw();
 // Callbacks and registration API
 //
 
+namespace osg { class Camera; class GraphicsContext; }
+namespace osgGA { class GUIEventAdapter; }
+
 typedef void (*fgIdleHandler)();
 typedef void (*fgDrawHandler)();
 typedef void (*fgWindowResizeHandler)(int w, int h);
 
 typedef void (*fgKeyHandler)(int key, int keymod, int mousex, int mousey);
-typedef void (*fgMouseClickHandler)(int button, int updown, int x, int y);
+typedef void (*fgMouseClickHandler)(int button, int updown, int x, int y, bool mainWindow, const osgGA::GUIEventAdapter*);
 typedef void (*fgMouseMotionHandler)(int x, int y);
 
 void fgRegisterIdleHandler(fgIdleHandler func);
@@ -70,4 +79,9 @@ void fgRegisterKeyHandler(fgKeyHandler func);
 void fgRegisterMouseClickHandler(fgMouseClickHandler func);
 void fgRegisterMouseMotionHandler(fgMouseMotionHandler func);
 
+void fgMakeCurrent();
+
+bool fgOSIsMainCamera(const osg::Camera* camera);
+bool fgOSIsMainContext(const osg::GraphicsContext* context);
+
 #endif // _FG_OS_HXX