1/* -*-c++-*- */ 2/* osgEarth - Geospatial SDK for OpenSceneGraph 3 * Copyright 2019 Pelican Mapping 4 * http://osgearth.org 5 * 6 * osgEarth is free software; you can redistribute it and/or modify 7 * it under the terms of the GNU Lesser 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 * This program 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 Lesser General Public License for more details. 15 * 16 * You should have received a copy of the GNU Lesser General Public License 17 * along with this program. If not, see <http://www.gnu.org/licenses/> 18 */ 19 20#ifndef OSGEARTHSYMBOLOGY_COMMON_H 21#define OSGEARTHSYMBOLOGY_COMMON_H 1 22 23#include <osgEarth/Common> 24 25#if defined(_MSC_VER) 26 #pragma warning( disable : 4244 ) 27 #pragma warning( disable : 4251 ) 28 #pragma warning( disable : 4267 ) 29 #pragma warning( disable : 4275 ) 30 #pragma warning( disable : 4290 ) 31 #pragma warning( disable : 4786 ) 32 #pragma warning( disable : 4305 ) 33 #pragma warning( disable : 4996 ) 34#endif 35 36#if defined(_MSC_VER) || defined(__CYGWIN__) || defined(__MINGW32__) || defined( __BCPLUSPLUS__) || defined( __MWERKS__) 37 # if defined( OSGEARTHSYMBOLOGY_LIBRARY_STATIC ) 38 # define OSGEARTHSYMBOLOGY_EXPORT 39 # elif defined( OSGEARTHSYMBOLOGY_LIBRARY ) 40 # define OSGEARTHSYMBOLOGY_EXPORT __declspec(dllexport) 41 # else 42 # define OSGEARTHSYMBOLOGY_EXPORT __declspec(dllimport) 43 # endif 44#else 45 # define OSGEARTHSYMBOLOGY_EXPORT 46#endif 47 48// set up define for whether member templates are supported by VisualStudio compilers. 49#ifdef _MSC_VER 50# if (_MSC_VER >= 1300) 51# define __STL_MEMBER_TEMPLATES 52# endif 53#endif 54 55/* Define NULL pointer value */ 56 57#ifndef NULL 58 #ifdef __cplusplus 59 #define NULL 0 60 #else 61 #define NULL ((void *)0) 62 #endif 63#endif 64 65#ifndef OSG_MIN_VERSION_REQUIRED 66 #define OSG_MIN_VERSION_REQUIRED(MAJOR, MINOR, PATCH) ((OPENSCENEGRAPH_MAJOR_VERSION>MAJOR) || (OPENSCENEGRAPH_MAJOR_VERSION==MAJOR && (OPENSCENEGRAPH_MINOR_VERSION>MINOR || (OPENSCENEGRAPH_MINOR_VERSION==MINOR && OPENSCENEGRAPH_PATCH_VERSION>=PATCH)))) 67#endif 68 69#ifndef OSG_VERSION_LESS_THAN 70 #define OSG_VERSION_LESS_THAN(MAJOR, MINOR, PATCH) ((OPENSCENEGRAPH_MAJOR_VERSION<MAJOR) || (OPENSCENEGRAPH_MAJOR_VERSION==MAJOR && (OPENSCENEGRAPH_MINOR_VERSION<MINOR || (OPENSCENEGRAPH_MINOR_VERSION==MINOR && OPENSCENEGRAPH_PATCH_VERSION<PATCH)))) 71#endif 72 73/** 74\namespace osgEarthSymbology 75*/ 76 77namespace osgEarth { namespace Symbology { 78 79} } 80 81#endif // OSGEARTHSYMBOLOGY_COMMON_H 82 83