Changeset 1199


Ignore:
Timestamp:
Oct 29, 2008, 11:39:56 AM (16 years ago)
Author:
gah
Message:
 
Location:
trunk/packages/vizservers/nanovis
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/packages/vizservers/nanovis/Trace.cpp

    r1196 r1199  
    1818}
    1919
    20 void
    21 CheckFramebuffer(const char *string)
     20bool
     21CheckFramebuffer(GLenum *statusPtr)
    2222{
     23    *statusPtr = (GLenum)glCheckFramebufferStatusEXT(GL_FRAMEBUFFER_EXT);
     24    return (*statusPtr == GL_FRAMEBUFFER_COMPLETE_EXT);
     25}
     26
     27
     28
     29void
     30PrintFramebufferStatus(GLenum status, const char *string)
     31{
     32  const char *mesg;
    2333  fprintf(stderr, "FB Status: %s: ", string);
    24   GLenum status = (GLenum)glCheckFramebufferStatusEXT(GL_FRAMEBUFFER_EXT);
    2534  switch(status) {
    2635    case GL_FRAMEBUFFER_COMPLETE_EXT:
    27       fprintf(stderr, "<<<< OK >>>>\n");
     36      mesg = "<<<< OK >>>>";
    2837      break;
    2938    case GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT:
    30       fprintf(stderr, "GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT\n");
     39      mesg = "GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT";
    3140      break;
    3241    case GL_FRAMEBUFFER_UNSUPPORTED_EXT:
    33       fprintf(stderr, "GL_FRAMEBUFFER_UNSUPPORTED_EXT\n");
     42      mesg = "GL_FRAMEBUFFER_UNSUPPORTED_EXT";
    3443      break;
    3544    case GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT:
    36       fprintf(stderr, "GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT\n");
     45      mesg = "GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT";
    3746      break;
    3847    case GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT:
    39       fprintf(stderr, "GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT\n");
     48      mesg = "GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT";
    4049      break;
    4150    case GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT:
    42       fprintf(stderr, "GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT\n");
     51      mesg = "GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT";
    4352      break;
    4453    case GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT:
    45       fprintf(stderr, "GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT\n");
     54      mesg = "GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT";
    4655      break;
    4756    case GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT:
    48       fprintf(stderr, "GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT\n");
     57      mesg = "GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT";
    4958      break;
    5059    default:
    51       fprintf(stderr, "UNKNOWN framebuffer status %d\n", status);
     60      fprintf(stderr, "UNKNOWN framebuffer status %u\n", (unsigned int)status);
     61      return;
    5262  }
     63  fprintf(stderr, "%d\n", mesg);
    5364}
    5465
     
    5667CheckGL(const char *string)
    5768{
    58   fprintf(stderr, "GL Status: %s: ", string);
     69  const char *mesg;
    5970  GLenum status = (GLenum)glGetError();
    6071  switch(status) {
    6172    case GL_NO_ERROR:
    62       fprintf(stderr, "OK\n");
    6373      return true;
    6474    case GL_INVALID_ENUM:
    65       fprintf(stderr, "GL_INVALID_ENUM\n");
    66       break;
     75      mesg = "GL_INVALID_ENUM"; break;
    6776    case GL_INVALID_VALUE:
    68       fprintf(stderr, "GL_INVALID_VALUE\n");
    69       break;
     77      mesg = "GL_INVALID_VALUE"; break;
    7078    case GL_INVALID_OPERATION:
    71       fprintf(stderr, "GL_INVALID_OPERATION\n");
    72       break;
     79      mesg = "GL_INVALID_OPERATION"; break;
    7380    case GL_STACK_OVERFLOW:
    74       fprintf(stderr, "GL_STACK_OVERFLOW\n");
    75       break;
     81      mesg = "GL_STACK_OVERFLOW"; break;
    7682    case GL_STACK_UNDERFLOW:
    77       fprintf(stderr, "GL_STACK_UNDERFLOW\n");
    78       break;
     83      mesg = "GL_STACK_UNDERFLOW"; break;
    7984    case GL_OUT_OF_MEMORY:
    80       fprintf(stderr, "GL_OUT_OF_MEMORY\n");
    81       break;
     85      mesg = "GL_OUT_OF_MEMORY"; break;
    8286    case GL_INVALID_FRAMEBUFFER_OPERATION_EXT:
    83       fprintf(stderr, "GL_INVALID_FRAMEBUFFER_OPERATION_EXT\n");
    84       break;
     87      mesg = "GL_INVALID_FRAMEBUFFER_OPERATION_EXT"; break;
    8588    default:
    86       fprintf(stderr, "UNKNOWN GL status %d\n", status);
     89      fprintf(stderr, "UNKNOWN GL status %d: %s\n", status, string);
     90      return false;
    8791  }
     92  fprintf(stderr, "GL Status: %s: %s", string, mesg);
    8893  return false;
    8994}
  • trunk/packages/vizservers/nanovis/Trace.h

    r1196 r1199  
    22#define __TRACE_H__
    33
     4#include <GL/glew.h>
     5#include <GL/glut.h>
     6
    47extern void Trace(const char* format, ...);
    5 extern void CheckFramebuffer(const char *string);
     8extern bool CheckFramebuffer(GLenum *statusPtr);
     9extern void PrintFramebufferStatus(GLenum status, const char *string);
    610extern bool CheckGL(const char *string);
    711#endif
  • trunk/packages/vizservers/nanovis/nanovis.cpp

    r1198 r1199  
    579579    //glReadPixels(0, 0, width, height, GL_BGR, GL_UNSIGNED_BYTE, screen_buffer); // INSOO's
    580580
    581     if (!debug_flag) {
     581    if (debug_flag) {
     582        fprintf(stderr, "ppm legend image not written (debug mode)\n");
     583    } else {
    582584        char prefix[200];
    583585        sprintf(prefix, "nv>legend %s %g %g", volArg, min, max);
     
    631633        GL_RENDERBUFFER_EXT, final_depth_rb);
    632634    CheckGL("glFramebufferTexture2DEXT");
    633     CheckFramebuffer("final_fbo");
    634 
     635    GLenum status;
     636    if (!CheckFramebuffer(&status)) {
     637       if (debug_flag) {
     638          PrintFramebufferStatus(status, "final_fbo");
     639       }
     640    }
    635641    // Check framebuffer completeness at the end of initialization.
    636642    //CHECK_FRAMEBUFFER_STATUS();
     
    708714
    709715    CheckGL("glFramebufferText2DEXT");
    710     CheckFramebuffer("final_fbo");
    711     CHECK_FRAMEBUFFER_STATUS();
     716    GLenum status;
     717    if (!CheckFramebuffer(&status)) {
     718       if (debug_flag) {
     719          PrintFramebufferStatus(status, "final_fbo");
     720       }
     721    }
     722    //CHECK_FRAMEBUFFER_STATUS();
    712723    if (debug_flag) {
    713724       fprintf(stderr, "leaving resize_offscreen_buffer(%d, %d)\n", w, h);
     
    22332244    write(0, rle, rle_size);    //unsigned byte
    22342245#else
    2235     if (!debug_flag) {
     2246    if (debug_flag) {
     2247        fprintf(stderr, "ppm image not written (debug mode)\n");
     2248    } else {
    22362249        NanoVis::ppm_write("nv>image -bytes");
    22372250    }
    22382251#endif
    22392252    if (feof(NanoVis::stdin)) {
    2240         exit(2);
     2253        DoExit(2);
    22412254    }
    22422255    if (debug_flag) {
Note: See TracChangeset for help on using the changeset viewer.