OGLplus (0.30.0) a C++ wrapper for OpenGL

/home/chochlik/devel/oglplus/include/oglplus/config.hpp
Go to the documentation of this file.
00001 
00012 #pragma once
00013 #ifndef OGLPLUS_CONFIG_1107121519_HPP
00014 #define OGLPLUS_CONFIG_1107121519_HPP
00015 
00016 #ifndef OGLPLUS_NO_SITE_CONFIG
00017 #include <oglplus/site_config.hpp>
00018 #endif
00019 
00020 #ifndef OGLPLUS_USE_GLEW
00021 #define OGLPLUS_USE_GLEW 0
00022 #endif
00023 
00024 #ifndef OGLPLUS_USE_FREEGLUT
00025 #define OGLPLUS_USE_FREEGLUT 0
00026 #endif
00027 
00028 #ifndef OGLPLUS_USE_BOOST_CONFIG
00029 #define OGLPLUS_USE_BOOST_CONFIG 0
00030 #endif
00031 
00032 #if OGLPLUS_USE_BOOST_CONFIG
00033 #include <boost/config.hpp>
00034 #endif
00035 
00036 #include <oglplus/config_compiler.hpp>
00037 
00038 // define GLAPIENTRY
00039 #ifdef GLAPIENTRY
00040 #undef GLAPIENTRY
00041 #endif
00042 // borrowed from glew.h which does define GLAPIENTRY properly
00043 // at the beginning but undefs it at the end of the header
00044 #if defined(__MINGW32__) || defined(__CYGWIN__)
00045 #  define GLAPIENTRY __stdcall
00046 #elif (_MSC_VER >= 800) || defined(_STDCALL_SUPPORTED) || defined(__BORLANDC__)
00047 #  define GLAPIENTRY __stdcall
00048 #else
00049 #  define GLAPIENTRY
00050 #endif
00051 
00052 // -------------------- Compile-time configuration ----------------------------
00053 
00072 #if OGLPLUS_DOCUMENTATION_ONLY
00073 
00074 
00089 #define OGLPLUS_LOW_PROFILE
00090 #else
00091 # ifndef OGLPLUS_LOW_PROFILE
00092 #  define OGLPLUS_LOW_PROFILE 0
00093 # endif
00094 #endif
00095 
00096 #if OGLPLUS_DOCUMENTATION_ONLY
00097 
00098 
00112 #define OGLPLUS_LINK_LIBRARY
00113 #else
00114 # ifndef OGLPLUS_LINK_LIBRARY
00115 #  define OGLPLUS_LINK_LIBRARY 0
00116 # endif
00117 #endif
00118 
00119 #if OGLPLUS_LINK_LIBRARY
00120 # define OGLPLUS_LIB_FUNC
00121 #else
00122 # define OGLPLUS_LIB_FUNC inline
00123 #endif
00124 
00125 #if OGLPLUS_DOCUMENTATION_ONLY
00126 
00127 
00136 #define OGLPLUS_DONT_TEST_OBJECT_TYPE
00137 #else
00138 # ifndef OGLPLUS_DONT_TEST_OBJECT_TYPE
00139 #  define OGLPLUS_DONT_TEST_OBJECT_TYPE 1
00140 # endif
00141 #endif
00142 
00143 
00144 #if OGLPLUS_DOCUMENTATION_ONLY
00145 
00146 
00167 #define OGLPLUS_NO_OBJECT_DESCS
00168 #else
00169 # ifndef OGLPLUS_NO_OBJECT_DESCS
00170 #  define OGLPLUS_NO_OBJECT_DESCS OGLPLUS_LOW_PROFILE
00171 # endif
00172 #endif
00173 
00174 #if OGLPLUS_DOCUMENTATION_ONLY
00175 
00176 
00196 #define OGLPLUS_LAZY_STR_LIT
00197 #else
00198 # ifndef OGLPLUS_LAZY_STR_LIT
00199 #  define OGLPLUS_LAZY_STR_LIT OGLPLUS_LOW_PROFILE
00200 # endif
00201 #endif
00202 
00203 #if OGLPLUS_DOCUMENTATION_ONLY
00204 
00205 
00216 #define OGLPLUS_NO_ENUM_VALUE_NAMES
00217 #else
00218 # ifndef OGLPLUS_NO_ENUM_VALUE_NAMES
00219 #  define OGLPLUS_NO_ENUM_VALUE_NAMES OGLPLUS_LOW_PROFILE
00220 # endif
00221 #endif
00222 
00223 #if OGLPLUS_DOCUMENTATION_ONLY
00224 
00225 
00236 #define OGLPLUS_NO_ENUM_VALUE_RANGES
00237 #else
00238 # ifndef OGLPLUS_NO_ENUM_VALUE_RANGES
00239 #  define OGLPLUS_NO_ENUM_VALUE_RANGES OGLPLUS_LOW_PROFILE
00240 # endif
00241 #endif
00242 
00243 #if OGLPLUS_DOCUMENTATION_ONLY
00244 
00245 
00257 #define OGLPLUS_NO_UTF8_CHECKS
00258 #else
00259 # ifndef OGLPLUS_NO_UTF8_CHECKS
00260 #  define OGLPLUS_NO_UTF8_CHECKS OGLPLUS_LOW_PROFILE
00261 # endif
00262 #endif
00263 
00264 #if OGLPLUS_DOCUMENTATION_ONLY
00265 
00266 
00281 #define OGLPLUS_NO_GLFUNC_CHECKS
00282 #else
00283 # ifndef OGLPLUS_NO_GLFUNC_CHECKS
00284 #  define OGLPLUS_NO_GLFUNC_CHECKS OGLPLUS_LOW_PROFILE
00285 # endif
00286 #endif
00287 
00288 #if OGLPLUS_DOCUMENTATION_ONLY
00289 
00290 
00300 #define OGLPLUS_NO_UNIFORM_TYPECHECK
00301 #else
00302 # ifndef OGLPLUS_NO_UNIFORM_TYPECHECK
00303 #  define OGLPLUS_NO_UNIFORM_TYPECHECK OGLPLUS_LOW_PROFILE
00304 # endif
00305 #endif
00306 
00307 #if OGLPLUS_DOCUMENTATION_ONLY
00308 
00309 
00315 #define OGLPLUS_CUSTOM_ERROR_HANDLING
00316 #else
00317 # ifndef OGLPLUS_CUSTOM_ERROR_HANDLING
00318 #  define OGLPLUS_CUSTOM_ERROR_HANDLING 0
00319 # endif
00320 #endif
00321 
00322 
00323 // Configuration options related to ErrorInfo
00324 
00325 
00326 #if OGLPLUS_DOCUMENTATION_ONLY
00327 
00328 
00335 #define OGLPLUS_ERROR_INFO_NO_GL_SYMBOL
00336 #else
00337 # ifndef OGLPLUS_ERROR_INFO_NO_GL_SYMBOL
00338 #  define OGLPLUS_ERROR_INFO_NO_GL_SYMBOL 0
00339 # endif
00340 #endif
00341 
00342 #if OGLPLUS_DOCUMENTATION_ONLY
00343 
00344 
00352 #define OGLPLUS_ERROR_INFO_NO_FILE
00353 #else
00354 # ifndef OGLPLUS_ERROR_INFO_NO_FILE
00355 #  define OGLPLUS_ERROR_INFO_NO_FILE OGLPLUS_LOW_PROFILE
00356 # endif
00357 #endif
00358 
00359 #if OGLPLUS_DOCUMENTATION_ONLY
00360 
00361 
00369 #define OGLPLUS_ERROR_INFO_NO_LINE OGLPLUS_LOW_PROFILE
00370 #else
00371 # ifndef OGLPLUS_ERROR_INFO_NO_LINE
00372 #  define OGLPLUS_ERROR_INFO_NO_LINE OGLPLUS_LOW_PROFILE
00373 # endif
00374 #endif
00375 
00376 #if OGLPLUS_DOCUMENTATION_ONLY
00377 
00378 
00385 #define OGLPLUS_ERROR_INFO_NO_FUNC
00386 #else
00387 # ifndef OGLPLUS_ERROR_INFO_NO_FUNC
00388 #  define OGLPLUS_ERROR_INFO_NO_FUNC 0
00389 # endif
00390 #endif
00391 
00392 #if OGLPLUS_DOCUMENTATION_ONLY
00393 
00394 
00401 #define OGLPLUS_ERROR_INFO_NO_CLASS_NAME
00402 #else
00403 # ifndef OGLPLUS_ERROR_INFO_NO_CLASS_NAME
00404 #  define OGLPLUS_ERROR_INFO_NO_CLASS_NAME 0
00405 # endif
00406 #endif
00407 
00408 #if OGLPLUS_NO_ENUM_VALUE_NAMES
00409 #ifdef OGLPLUS_ERROR_INFO_NO_BIND_TARGET
00410 #undef OGLPLUS_ERROR_INFO_NO_BIND_TARGET
00411 #endif
00412 #define OGLPLUS_ERROR_INFO_NO_BIND_TARGET 1
00413 #endif
00414 
00415 #if OGLPLUS_DOCUMENTATION_ONLY
00416 
00417 
00426 #define OGLPLUS_ERROR_INFO_NO_BIND_TARGET
00427 #else
00428 # ifndef OGLPLUS_ERROR_INFO_NO_BIND_TARGET
00429 #  define OGLPLUS_ERROR_INFO_NO_BIND_TARGET 0
00430 # endif
00431 #endif
00432 
00433 #if OGLPLUS_NO_OBJECT_DESCS
00434 #ifdef OGLPLUS_ERROR_INFO_NO_OBJECT_DESC
00435 #undef OGLPLUS_ERROR_INFO_NO_OBJECT_DESC
00436 #endif
00437 #define OGLPLUS_ERROR_INFO_NO_OBJECT_DESC 1
00438 #endif
00439 
00440 #if OGLPLUS_DOCUMENTATION_ONLY
00441 
00442 
00451 #define OGLPLUS_ERROR_INFO_NO_OBJECT_DESC
00452 #else
00453 # ifndef OGLPLUS_ERROR_INFO_NO_OBJECT_DESC
00454 #  define OGLPLUS_ERROR_INFO_NO_OBJECT_DESC OGLPLUS_LOW_PROFILE
00455 # endif
00456 #endif
00457 
00458 
00459 #if OGLPLUS_DOCUMENTATION_ONLY
00460 
00461 
00470 #define OGLPLUS_ERROR_NO_PROPAGATION_INFO
00471 #else
00472 # ifndef OGLPLUS_ERROR_NO_PROPAGATION_INFO
00473 #  define OGLPLUS_ERROR_NO_PROPAGATION_INFO OGLPLUS_LOW_PROFILE
00474 # endif
00475 #endif
00476 
00477 #if OGLPLUS_DOCUMENTATION_ONLY
00478 
00479 
00488 #define OGLPLUS_ERROR_NO_PROPERTIES
00489 #else
00490 # ifndef OGLPLUS_ERROR_NO_PROPERTIES
00491 #  define OGLPLUS_ERROR_NO_PROPERTIES OGLPLUS_LOW_PROFILE
00492 # endif
00493 #endif
00494 
00495 
00496 #include <oglplus/auxiliary/enum_class.hpp>
00497 
00498 #endif // include guard

Copyright © 2010-2013 Matúš Chochlík, University of Žilina, Žilina, Slovakia.
<matus.chochlik -at- fri.uniza.sk>
<chochlik -at -gmail.com>
Documentation generated on Tue May 7 2013 by Doxygen (version 1.7.6.1).