2009-06-04 08:46:29 +00:00
/*===========================================================================*\
* *
* OpenMesh *
2015-04-28 11:33:32 +00:00
* Copyright ( c ) 2001 - 2015 , RWTH - Aachen University *
* Department for Computer Graphics and Multimedia *
* All rights reserved . *
* www . openmesh . org *
* *
* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - *
* This file is part of OpenMesh . *
* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - *
* *
* Redistribution and use in source and binary forms , with or without *
* modification , are permitted provided that the following conditions *
* are met : *
* *
* 1. Redistributions of source code must retain the above copyright notice , *
* this list of conditions and the following disclaimer . *
* *
* 2. Redistributions in binary form must reproduce the above copyright *
* notice , this list of conditions and the following disclaimer in the *
* documentation and / or other materials provided with the distribution . *
* *
* 3. Neither the name of the copyright holder nor the names of its *
* contributors may be used to endorse or promote products derived from *
* this software without specific prior written permission . *
* *
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS *
* " AS IS " AND ANY EXPRESS OR IMPLIED WARRANTIES , INCLUDING , BUT NOT LIMITED *
* TO , THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A *
* PARTICULAR PURPOSE ARE DISCLAIMED . IN NO EVENT SHALL THE COPYRIGHT HOLDER *
* OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT , INDIRECT , INCIDENTAL , SPECIAL , *
* EXEMPLARY , OR CONSEQUENTIAL DAMAGES ( INCLUDING , BUT NOT LIMITED TO , *
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES ; LOSS OF USE , DATA , OR *
* PROFITS ; OR BUSINESS INTERRUPTION ) HOWEVER CAUSED AND ON ANY THEORY OF *
* LIABILITY , WHETHER IN CONTRACT , STRICT LIABILITY , OR TORT ( INCLUDING *
* NEGLIGENCE OR OTHERWISE ) ARISING IN ANY WAY OUT OF THE USE OF THIS *
* SOFTWARE , EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE . *
* *
/*===========================================================================*\
2009-06-04 08:46:29 +00:00
/*===========================================================================*\
* *
* $ Revision $ *
* $ Date $ *
* *
\ * = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = */
2009-02-06 13:37:46 +00:00
/** \file config.h
* \ todo Move content to config . hh and include it to be compatible with old
* source .
*/
//=============================================================================
# ifndef OPENMESH_CONFIG_H
# define OPENMESH_CONFIG_H
//=============================================================================
# include <assert.h>
# include <OpenMesh/Core/System/compiler.hh>
2012-09-23 14:21:37 +00:00
# include <OpenMesh/Core/System/OpenMeshDLLMacros.hh>
2009-02-06 13:37:46 +00:00
// ----------------------------------------------------------------------------
2015-01-16 15:24:12 +00:00
# define OM_VERSION 0x30400
2009-02-06 13:37:46 +00:00
// only defined, if it is a beta version
2012-09-07 16:16:20 +00:00
//#define OM_VERSION_BETA 4
2009-02-06 13:37:46 +00:00
# define OM_GET_VER ((OM_VERSION && 0xf0000) >> 16)
# define OM_GET_MAJ ((OM_VERSION && 0x0ff00) >> 8)
# define OM_GET_MIN (OM_VERSION && 0x000ff)
2009-10-16 12:46:28 +00:00
# ifdef WIN32
# ifdef min
2014-02-05 15:40:20 +00:00
# pragma message("Detected min macro! OpenMesh does not compile with min / max macros active! Please add a define NOMINMAX to your compiler flags or add #undef min before including OpenMesh headers !")
2009-10-16 12:46:28 +00:00
# error min macro active
# endif
# ifdef max
2014-02-05 15:40:20 +00:00
# pragma message("Detected max macro! OpenMesh does not compile with min / max macros active! Please add a define NOMINMAX to your compiler flags or add #undef max before including OpenMesh headers !")
2009-10-16 12:46:28 +00:00
# error max macro active
# endif
# endif
2013-08-07 10:38:22 +00:00
# if defined(_MSC_VER)
2013-08-07 10:25:03 +00:00
# define DEPRECATED(msg) __declspec(deprecated(msg))
# elif defined(__GNUC__)
2013-08-07 15:23:04 +00:00
# if (__GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__) >= 40500 /* Test for GCC >= 4.5.0 */
2013-08-07 10:25:03 +00:00
# define DEPRECATED(msg) __attribute__ ((deprecated(msg)))
# else
# define DEPRECATED(msg) __attribute__ ((deprecated))
# endif
# elif defined(__clang__)
# define DEPRECATED(msg) __attribute__ ((deprecated(msg)))
2013-08-07 08:03:42 +00:00
# else
2013-08-07 10:25:03 +00:00
# define DEPRECATED(msg)
2013-08-07 08:03:42 +00:00
# endif
2009-02-06 13:37:46 +00:00
typedef unsigned int uint ;
//=============================================================================
# endif // OPENMESH_CONFIG_H defined
//=============================================================================