2006-07-18 23:21:48 +08:00
|
|
|
/* -*-c++-*- OpenSceneGraph - Copyright (C) 1998-2006 Robert Osfield
|
2003-01-22 00:45:36 +08:00
|
|
|
*
|
|
|
|
* This library is open source and may be redistributed and/or modified under
|
|
|
|
* the terms of the OpenSceneGraph Public License (OSGPL) version 0.0 or
|
|
|
|
* (at your option) any later version. The full license is in LICENSE file
|
|
|
|
* included with this distribution, and on the openscenegraph.org website.
|
|
|
|
*
|
|
|
|
* This library is distributed in the hope that it will be useful,
|
|
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
* OpenSceneGraph Public License for more details.
|
|
|
|
*/
|
2001-10-04 23:12:57 +08:00
|
|
|
|
2005-04-12 01:14:17 +08:00
|
|
|
#ifndef OSG_EXPORT_
|
|
|
|
#define OSG_EXPORT_ 1
|
2001-01-11 00:32:10 +08:00
|
|
|
|
2004-08-31 22:08:12 +08:00
|
|
|
// define USE_DEPRECATED_API is used to include in API which is being fazed out
|
2002-07-12 22:25:10 +08:00
|
|
|
// if you can compile your apps with this turned off you are
|
2007-12-11 01:30:18 +08:00
|
|
|
// well placed for compatibility with future versions.
|
2006-08-01 01:31:21 +08:00
|
|
|
#define USE_DEPRECATED_API
|
2002-07-12 22:25:10 +08:00
|
|
|
|
2002-05-28 19:40:37 +08:00
|
|
|
#if defined(_MSC_VER)
|
2001-12-15 02:06:34 +08:00
|
|
|
#pragma warning( disable : 4244 )
|
2002-05-29 00:11:49 +08:00
|
|
|
#pragma warning( disable : 4251 )
|
|
|
|
#pragma warning( disable : 4267 )
|
|
|
|
#pragma warning( disable : 4275 )
|
2002-02-11 04:05:38 +08:00
|
|
|
#pragma warning( disable : 4290 )
|
2002-05-29 00:11:49 +08:00
|
|
|
#pragma warning( disable : 4786 )
|
2003-03-17 05:58:27 +08:00
|
|
|
#pragma warning( disable : 4305 )
|
2005-05-25 02:57:13 +08:00
|
|
|
#pragma warning( disable : 4996 )
|
2001-01-11 00:32:10 +08:00
|
|
|
#endif
|
|
|
|
|
2002-02-23 01:12:10 +08:00
|
|
|
#if defined(_MSC_VER) || defined(__CYGWIN__) || defined(__MINGW32__) || defined( __BCPLUSPLUS__) || defined( __MWERKS__)
|
2005-11-18 17:52:24 +08:00
|
|
|
# if defined( OSG_LIBRARY_STATIC )
|
2005-11-18 01:44:48 +08:00
|
|
|
# define OSG_EXPORT
|
|
|
|
# elif defined( OSG_LIBRARY )
|
|
|
|
# define OSG_EXPORT __declspec(dllexport)
|
|
|
|
# else
|
|
|
|
# define OSG_EXPORT __declspec(dllimport)
|
2005-11-18 17:52:24 +08:00
|
|
|
# endif
|
2001-01-11 00:32:10 +08:00
|
|
|
#else
|
2005-11-18 01:44:48 +08:00
|
|
|
# define OSG_EXPORT
|
2001-01-11 00:32:10 +08:00
|
|
|
#endif
|
|
|
|
|
2002-06-27 05:11:59 +08:00
|
|
|
// set up define for whether member templates are supported by VisualStudio compilers.
|
2002-06-27 05:10:45 +08:00
|
|
|
#ifdef _MSC_VER
|
|
|
|
# if (_MSC_VER >= 1300)
|
|
|
|
# define __STL_MEMBER_TEMPLATES
|
|
|
|
# endif
|
|
|
|
#endif
|
|
|
|
|
2001-09-20 05:08:56 +08:00
|
|
|
/* Define NULL pointer value */
|
|
|
|
|
|
|
|
#ifndef NULL
|
2002-12-16 21:40:58 +08:00
|
|
|
#ifdef __cplusplus
|
|
|
|
#define NULL 0
|
|
|
|
#else
|
|
|
|
#define NULL ((void *)0)
|
|
|
|
#endif
|
2001-09-20 05:08:56 +08:00
|
|
|
#endif
|
|
|
|
|
2004-11-27 00:01:04 +08:00
|
|
|
/**
|
|
|
|
|
|
|
|
\namespace osg
|
|
|
|
|
|
|
|
The core osg library provides the basic scene graph classes such as Nodes,
|
|
|
|
State and Drawables, and maths and general helper classes.
|
|
|
|
*/
|
|
|
|
|
2001-01-11 00:32:10 +08:00
|
|
|
#endif
|
2005-11-18 17:52:24 +08:00
|
|
|
|