GLIP-Lib
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
devDebugTools.hpp
Go to the documentation of this file.
1 /* ************************************************************************************************************* */
2 /* */
3 /* GLIP-LIB */
4 /* OpenGL Image Processing LIBrary */
5 /* */
6 /* Author : R. Kerviche */
7 /* LICENSE : MIT License */
8 /* Website : glip-lib.net */
9 /* */
10 /* File : devDebugTools.hpp */
11 /* Original Date : August 15th 2011 */
12 /* */
13 /* Description : Development and debugging tools */
14 /* */
15 /* ************************************************************************************************************* */
16 
24 #ifndef __DEV_DEBUG_TOOLS__
25 #define __DEV_DEBUG_TOOLS__
26 
27  // Development flags
28  //#define __GLIPLIB_VERBOSE__
29  //#define __GLIPLIB_DEVELOPMENT_VERBOSE__
30  //#define __GLIPLIB_TRACK_GL_ERRORS__
31 
32  // Tools
33  #define GLIP_STR_EXPAND(tok) #tok
34  #define GLIP_STR(tok) GLIP_STR_EXPAND(tok)
35  #define __HERE__ "[" GLIP_STR(__FUNCTION__) " at " GLIP_STR(__FILE__) " : " GLIP_STR(__LINE__) "] "
36 
37  #define OPENGL_ERROR_TRACKER(functionName, callLine) \
38  { \
39  GLenum err = glGetError(); \
40  if(err!=GL_NO_ERROR) \
41  { \
42  const std::string description = getGLErrorDescription(err); \
43  std::cerr << functionName << " / " << callLine << " - Opengl error : " << description << std::endl; \
44  Glip::CoreGL::debugGL(); \
45  } \
46  }
47 
48 #endif