vrshoot

diff libs/assimp/AssimpPCH.h @ 0:b2f14e535253

initial commit
author John Tsiombikas <nuclear@member.fsf.org>
date Sat, 01 Feb 2014 19:58:19 +0200
parents
children
line diff
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/libs/assimp/AssimpPCH.h	Sat Feb 01 19:58:19 2014 +0200
     1.3 @@ -0,0 +1,162 @@
     1.4 +/*
     1.5 +---------------------------------------------------------------------------
     1.6 +Open Asset Import Library (assimp)
     1.7 +---------------------------------------------------------------------------
     1.8 +
     1.9 +Copyright (c) 2006-2012, assimp team
    1.10 +
    1.11 +All rights reserved.
    1.12 +
    1.13 +Redistribution and use of this software in source and binary forms, 
    1.14 +with or without modification, are permitted provided that the following 
    1.15 +conditions are met:
    1.16 +
    1.17 +* Redistributions of source code must retain the above
    1.18 +  copyright notice, this list of conditions and the
    1.19 +  following disclaimer.
    1.20 +
    1.21 +* Redistributions in binary form must reproduce the above
    1.22 +  copyright notice, this list of conditions and the
    1.23 +  following disclaimer in the documentation and/or other
    1.24 +  materials provided with the distribution.
    1.25 +
    1.26 +* Neither the name of the assimp team, nor the names of its
    1.27 +  contributors may be used to endorse or promote products
    1.28 +  derived from this software without specific prior
    1.29 +  written permission of the assimp team.
    1.30 +
    1.31 +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 
    1.32 +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 
    1.33 +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
    1.34 +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 
    1.35 +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
    1.36 +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 
    1.37 +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
    1.38 +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 
    1.39 +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 
    1.40 +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 
    1.41 +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
    1.42 +---------------------------------------------------------------------------
    1.43 +*/
    1.44 +
    1.45 +/** @file AssimpPCH.h
    1.46 + *  PCH master include. Every unit in Assimp has to include it.
    1.47 + */
    1.48 +
    1.49 +#ifndef ASSIMP_PCH_INCLUDED
    1.50 +#define ASSIMP_PCH_INCLUDED
    1.51 +#define ASSIMP_INTERNAL_BUILD
    1.52 +
    1.53 +// ----------------------------------------------------------------------------------------
    1.54 +/* General compile config taken from defs.h. It is important that the user compiles
    1.55 + * using exactly the same settings in defs.h. Settings in AssimpPCH.h may differ,
    1.56 + * they won't affect the public API.
    1.57 + */
    1.58 +#include "assimp/defs.h"
    1.59 +
    1.60 +// Include our stdint.h replacement header for MSVC, take the global header for gcc/mingw
    1.61 +#if defined( _MSC_VER) && (_MSC_VER < 1600)
    1.62 +#	include "pstdint.h"
    1.63 +#else
    1.64 +#	include <stdint.h>
    1.65 +#endif
    1.66 +
    1.67 +/* Undefine the min/max macros defined by some platform headers (namely Windows.h) to 
    1.68 + * avoid obvious conflicts with std::min() and std::max(). 
    1.69 + */
    1.70 +#undef min
    1.71 +#undef max
    1.72 +
    1.73 +/* Concatenate two tokens after evaluating them
    1.74 + */
    1.75 +#define _AI_CONCAT(a,b)  a ## b
    1.76 +#define  AI_CONCAT(a,b)  _AI_CONCAT(a,b)
    1.77 +
    1.78 +/* Helper macro to set a pointer to NULL in debug builds
    1.79 + */
    1.80 +#if (defined _DEBUG)
    1.81 +#	define AI_DEBUG_INVALIDATE_PTR(x) x = NULL;
    1.82 +#else
    1.83 +#	define AI_DEBUG_INVALIDATE_PTR(x)
    1.84 +#endif
    1.85 +
    1.86 +/* Beginning with MSVC8 some C string manipulation functions are mapped to their _safe_
    1.87 + * counterparts (e.g. _itoa_s). This avoids a lot of trouble with deprecation warnings.
    1.88 + */
    1.89 +#if _MSC_VER >= 1400 && !(defined _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES)
    1.90 +#	define _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES 1
    1.91 +#endif
    1.92 +
    1.93 +/* size_t to unsigned int, possible loss of data. The compiler is right with his warning
    1.94 + * but this loss of data won't be a problem for us. So shut up, little boy.
    1.95 + */
    1.96 +#ifdef _MSC_VER
    1.97 +#	pragma warning (disable : 4267)
    1.98 +#endif
    1.99 +
   1.100 +// ----------------------------------------------------------------------------------------
   1.101 +/* Actually that's not required for MSVC. It is included somewhere in the deeper parts of
   1.102 + * the MSVC STL but it's necessary for proper build with STLport.
   1.103 + */
   1.104 +#include <ctype.h>
   1.105 +
   1.106 +// Runtime/STL headers
   1.107 +#include <vector>
   1.108 +#include <list>
   1.109 +#include <map>
   1.110 +#include <set>
   1.111 +#include <string>
   1.112 +#include <sstream>
   1.113 +#include <iomanip>
   1.114 +#include <cassert>
   1.115 +#include <stack>
   1.116 +#include <queue>
   1.117 +#include <iostream>
   1.118 +#include <algorithm>
   1.119 +#include <numeric>
   1.120 +#include <new>
   1.121 +#include <cstdio>
   1.122 +#include <limits.h>
   1.123 +#include <memory>
   1.124 +
   1.125 +// Boost headers
   1.126 +#include <boost/pointer_cast.hpp>
   1.127 +#include <boost/scoped_ptr.hpp>
   1.128 +#include <boost/scoped_array.hpp>
   1.129 +#include <boost/shared_ptr.hpp>
   1.130 +#include <boost/shared_array.hpp>
   1.131 +#include <boost/make_shared.hpp>
   1.132 +#include <boost/format.hpp>
   1.133 +#include <boost/foreach.hpp>
   1.134 +#include <boost/static_assert.hpp>
   1.135 +#include <boost/lexical_cast.hpp>
   1.136 +
   1.137 +// Public ASSIMP headers
   1.138 +#include "assimp/DefaultLogger.hpp"
   1.139 +#include "assimp/IOStream.hpp"
   1.140 +#include "assimp/IOSystem.hpp"
   1.141 +#include "assimp/scene.h"
   1.142 +#include "assimp/importerdesc.h"
   1.143 +#include "assimp/postprocess.h"
   1.144 +#include "assimp/Importer.hpp"
   1.145 +#include "assimp/Exporter.hpp"
   1.146 +
   1.147 +// Internal utility headers
   1.148 +#include "BaseImporter.h"
   1.149 +#include "StringComparison.h"
   1.150 +#include "StreamReader.h"
   1.151 +#include "qnan.h"
   1.152 +#include "ScenePrivate.h" 
   1.153 +
   1.154 +
   1.155 +// We need those constants, workaround for any platforms where nobody defined them yet
   1.156 +#if (!defined SIZE_MAX)
   1.157 +#	define SIZE_MAX (~((size_t)0))
   1.158 +#endif
   1.159 +
   1.160 +#if (!defined UINT_MAX)
   1.161 +#	define UINT_MAX (~((unsigned int)0))
   1.162 +#endif
   1.163 +
   1.164 +
   1.165 +#endif // !! ASSIMP_PCH_INCLUDED