1/* -*-c++-*- OpenSceneGraph - Copyright (C) 1998-2006 Robert Osfield
3 * This library is open source and may be redistributed and/or modified under
4 * the terms of the OpenSceneGraph Public License (OSGPL) version 0.0 or
5 * (at your option) any later version. The full license is in LICENSE file
6 * included with this distribution, and on the openscenegraph.org website.
8 * This library is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * OpenSceneGraph Public License for more details.
14// The following symbol has a underscore suffix for compatibility.
15#ifndef OSGVIEWER_EXPORT_
16#define OSGVIEWER_EXPORT_ 1
20#if defined(_MSC_VER) && defined(OSG_DISABLE_MSVC_WARNINGS)
21 #pragma warning( disable : 4244 )
22 #pragma warning( disable : 4251 )
23 #pragma warning( disable : 4267 )
24 #pragma warning( disable : 4275 )
25 #pragma warning( disable : 4290 )
26 #pragma warning( disable : 4786 )
27 #pragma warning( disable : 4305 )
28 #pragma warning( disable : 4996 )
31#if defined(_MSC_VER) || defined(__CYGWIN__) || defined(__MINGW32__) || defined( __BCPLUSPLUS__) || defined( __MWERKS__)
32 # if defined( OSG_LIBRARY_STATIC )
33 # define OSGVIEWER_EXPORT
34 # elif defined( OSGVIEWER_LIBRARY )
35 # define OSGVIEWER_EXPORT __declspec(dllexport)
37 # define OSGVIEWER_EXPORT __declspec(dllimport)
40 #define OSGVIEWER_EXPORT
50The osgViewer library provides high level viewer functionality designed to make it easier to write a range of different types of viewers,
51from viewers embedded in existing windows via SimpleViewer, through to highly scalable and flexible Viewer and Composite classes. A
52set of event handlers add functionality to these viewers so that you can rapidly compose the viewer functionality tailored to your needs.
53Finally the viewer classes can be adapted to work with a range of different window toolkit API's via GraphicsWindow implementations,
54with native Win32, X11 and Carbon implementations on Windows, Unices and OSX respectively, and other window toolkits such as WxWidgets, Qt etc.