source: trunk/packages/vizservers/nanovis/global.h @ 1984

Last change on this file since 1984 was 1984, checked in by gah, 13 years ago

Clean up debugging/printing traces

File size: 4.0 KB
Line 
1/*
2 * ======================================================================
3 *  AUTHOR:  Wei Qiao <qiaow@purdue.edu>
4 *           Purdue Rendering and Perceptualization Lab (PURPL)
5 *
6 *  Copyright (c) 2004-2006  Purdue Research Foundation
7 *
8 *  See the file "license.terms" for information on usage and
9 *  redistribution of this file, and for a DISCLAIMER OF ALL WARRANTIES.
10 * ======================================================================
11 */
12
13
14//system wide global or static functions
15
16#ifndef _GLOBAL_H_
17#define _GLOBAL_H_
18
19#include <GL/glew.h>
20#include <Cg/cgGL.h>
21#include <Trace.h>
22#include <stdio.h>
23
24#ifdef notdef
25#define CHECK_FRAMEBUFFER_STATUS() \
26{\
27 GLenum status; \
28 status = glCheckFramebufferStatusEXT(GL_FRAMEBUFFER_EXT); \
29 TRACE("%x\n", status);                    \
30 switch(status) { \
31 case GL_FRAMEBUFFER_COMPLETE_EXT: \
32     TRACE("framebuffer complete!\n");  \
33   break; \
34 case GL_FRAMEBUFFER_UNSUPPORTED_EXT: \
35     ERROR("framebuffer GL_FRAMEBUFFER_UNSUPPORTED_EXT\n");     \
36    /* you gotta choose different formats */ \
37   assert(0); \
38   break; \
39 case GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT:         \
40     TRACE("framebuffer INCOMPLETE_ATTACHMENT\n");      \
41   break; \
42 case GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT: \
43     TRACE("framebuffer FRAMEBUFFER_MISSING_ATTACHMENT\n");     \
44   break; \
45 case GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT: \
46     TRACE("framebuffer FRAMEBUFFER_DIMENSIONS\n");     \
47   break; \
48 case GL_FRAMEBUFFER_INCOMPLETE_DUPLICATE_ATTACHMENT_EXT: \
49     TRACE("framebuffer INCOMPLETE_DUPLICATE_ATTACHMENT\n");    \
50   break; \
51 case GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT: \
52     TRACE("framebuffer INCOMPLETE_FORMATS\n"); \
53   break; \
54 case GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT: \
55     TRACE("framebuffer INCOMPLETE_DRAW_BUFFER\n");     \
56   break; \
57 case GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT: \
58     TRACE("framebuffer INCOMPLETE_READ_BUFFER\n");     \
59   break; \
60 case GL_FRAMEBUFFER_BINDING_EXT: \
61     TRACE("framebuffer BINDING_EXT\n");        \
62   break; \
63/*
64 *  case GL_FRAMEBUFFER_STATUS_ERROR_EXT: \
65 *     TRACE("framebuffer STATUS_ERROR\n");\
66 *        break; \
67 *        */ \
68 default: \
69   /* programming error; will fail on all hardware */ \
70   assert(0); \
71 }\
72}
73
74#define CHECK_FRAMEBUFFER_STATUS()                            \
75  {                                                           \
76    GLenum status;                                            \
77    status = glCheckFramebufferStatusEXT(GL_FRAMEBUFFER_EXT); \
78    switch(status) {                                          \
79      case GL_FRAMEBUFFER_COMPLETE_EXT:                       \
80        break;                                                \
81      case GL_FRAMEBUFFER_UNSUPPORTED_EXT:                    \
82~        /* choose different formats */                        \
83        break;                                                \
84      default:                                                \
85        /* programming error; will fail on all hardware */    \
86        ERROR("programming error\n");               \
87        assert(0);                                            \
88     }                                                        \
89   }
90#endif
91
92inline void
93draw_quad(int w, int h, int tw, int th)
94{
95    glBegin(GL_QUADS);
96    glTexCoord2f(0,         0);         glVertex2f(0,        0);
97    glTexCoord2f((float)tw, 0);         glVertex2f((float)w, 0);
98    glTexCoord2f((float)tw, (float)th); glVertex2f((float)w, (float) h);
99    glTexCoord2f(0,         (float)th); glVertex2f(0,        (float) h);
100    glEnd();
101}
102
103
104//query opengl information
105inline void
106system_info()
107{
108    TRACE("-----------------------------------------------------------\n");
109    TRACE("OpenGL driver: %s %s\n", glGetString(GL_VENDOR),
110           glGetString(GL_VERSION));
111    TRACE("Graphics hardware: %s\n", glGetString(GL_RENDERER));
112    TRACE("-----------------------------------------------------------\n");
113}
114
115extern CGprogram LoadCgSourceProgram(CGcontext context, const char *filename,
116        CGprofile profile, const char *entryPoint);
117
118#endif
Note: See TracBrowser for help on using the repository browser.