123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 |
- /* -*-c++-*- OpenSceneGraph - Copyright (C) 1998-2006 Robert Osfield
- *
- * 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.
- */
- #ifndef OSG_EXPORT_
- #define OSG_EXPORT_ 1
- #include<osg/Config>
- // disable VisualStudio warnings
- #if defined(_MSC_VER) && defined(OSG_DISABLE_MSVC_WARNINGS)
- #pragma warning( disable : 4244 )
- #pragma warning( disable : 4251 )
- #pragma warning( disable : 4275 )
- #pragma warning( disable : 4512 )
- #pragma warning( disable : 4267 )
- #pragma warning( disable : 4702 )
- #pragma warning( disable : 4511 )
- #endif
- #if defined(_MSC_VER) || defined(__CYGWIN__) || defined(__MINGW32__) || defined( __BCPLUSPLUS__) || defined( __MWERKS__)
- # if defined( OSG_LIBRARY_STATIC )
- # define OSG_EXPORT
- # elif defined( OSG_LIBRARY )
- # define OSG_EXPORT __declspec(dllexport)
- # else
- # define OSG_EXPORT __declspec(dllimport)
- # endif
- #else
- # define OSG_EXPORT
- #endif
- // set up define for whether member templates are supported by VisualStudio compilers.
- #ifdef _MSC_VER
- # if (_MSC_VER >= 1300)
- # define __STL_MEMBER_TEMPLATES
- # endif
- #endif
- /* Define NULL pointer value */
- #ifndef NULL
- #ifdef __cplusplus
- #define NULL 0
- #else
- #define NULL ((void *)0)
- #endif
- #endif
- // helper macro's for quieten unused variable warnings
- #define OSG_UNUSED(VAR) (void)(VAR)
- #define OSG_UNUSED2(VAR1, VAR2) (void)(VAR1); (void)(VAR2);
- #define OSG_UNUSED3(VAR1, VAR2, VAR3) (void)(VAR1); (void)(VAR2); (void)(VAR2);
- #define OSG_UNUSED4(VAR1, VAR2, VAR3, VAR4) (void)(VAR1); (void)(VAR2); (void)(VAR3); (void)(VAR4);
- #define OSG_UNUSED5(VAR1, VAR2, VAR3, VAR4, VAR5) (void)(VAR1); (void)(VAR2); (void)(VAR3); (void)(VAR4); (void)(VAR5);
- /**
- \namespace osg
- The core osg library provides the basic scene graph classes such as Nodes,
- State and Drawables, and maths and general helper classes.
- */
- #endif
|