/[libvob]/libvob/include/vob/Renderer.hxx
ViewVC logotype

Diff of /libvob/include/vob/Renderer.hxx

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.1 by tjl, Wed Mar 12 13:37:57 2003 UTC revision 1.2 by tjl, Sat Apr 19 19:37:32 2003 UTC
# Line 59  public: Line 59  public:
59                              ObjectStorer<Vob0> &r0s,                              ObjectStorer<Vob0> &r0s,
60                              ObjectStorer<Vob1> &r1s,                              ObjectStorer<Vob1> &r1s,
61                              ObjectStorer<Vob2> &r2s,                              ObjectStorer<Vob2> &r2s,
62                              ObjectStorer<Vob> &r3s) {                              ObjectStorer<Vob> &r3s) ;
         int i=0;  
         DBG(dbg_renderer) << "renderScene\n";  
         while(codes[i] != 0) {  
             DBG(dbg_renderer) << "Rendercode "<<i<<" "<<codes[i]<<"\n";  
             // cout << "Code: "<<codes[i]<<"\n";  
             int code = codes[i] & ~RMASK;  
             if((codes[i] & RMASK) == RENDERABLE0) {  
                 DBG(dbg_renderer) << "rend0 "<<r0s[code]<<"\n";  
                 r0s[code]->render0();  
                 i += 1;  
             }  
             else if((codes[i] & RMASK) ==  RENDERABLE1) {  
                 Transform *cs1 = coordset.get(codes[i+1]);  
                 DBG(dbg_renderer) << "rend1 "<<r1s[code]<<": "<<codes[i+1]<<" "<<cs1<<"\n";  
                 if(cs1)  
                     r1s[code]->render1(*cs1);  
                 i += 2;  
             }  
             else if((codes[i] & RMASK) == RENDERABLE2) {  
                 Transform *cs1 = coordset.get(codes[i+1]);  
                 Transform *cs2 = coordset.get(codes[i+2]);  
                 DBG(dbg_renderer) << "rend2 "<<r2s[code]<<": "  
                         <<codes[i+1]<<" "<<cs1<<" "<<codes[i+2]<<" "<<cs2<<"\n";  
                 if(cs1 && cs2)  
                     r2s[code]->render2(*cs1, *cs2);  
                 i += 3;  
             }  
             else if((codes[i] & RMASK) == RENDERABLE3) {  
                 Transform *cs1 = coordset.get(codes[i+1]);  
                 Transform *cs2 = coordset.get(codes[i+2]);  
                 Transform *cs3 = coordset.get(codes[i+3]);  
                 DBG(dbg_renderer) << "rend3 "<<r3s[code]<<": "  
                                   <<codes[i+1]<<" "<<cs1<<" "<<codes[i+2]<<" "<<cs2<<" "  
                                   <<cs3<<" "<<codes[i+3]<<"\n";  
                 /* XXX  
                 if(cs1 && cs2 && cs3)  
                     r3s[code]->render(*cs1, *cs2, *cs3);  
                 */  
                 i += 4;  
             }  
             else {  
                 // We have a problem  
                 cout << "HELP!\n";  
                 std::cerr << "We seem to have a problem!!! "<<codes[i]<<"\n";  
                 cout << "HELP!\n";  
                 exit(19);  
             }  
         }  
         DBG(dbg_renderer) << "renderScene end\n";  
     }  
63  };  };
64    
65    

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.2

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26