vicon jittering, opengl no draw_refresh if no ovly for last frame
[goodguy/history.git] / cinelerra-5.1 / guicast / vicon.C
index d726265030e57ffb1c13adf536c9f193f3a8553e..8ae7a7c0ba667a10ad2978113b1b6fc52bde14db 100644 (file)
@@ -105,6 +105,7 @@ VIconThread(BC_WindowBase *wdw, int vw, int vh)
        this->refresh_rate = VICON_RATE;
        done = 0;
        interrupted = -1;
+       stop_age = 0;
 }
 
 VIconThread::
@@ -130,6 +131,8 @@ start_drawing()
                wdw->set_active_subwindow(view_win);
         if( interrupted < 0 )
                draw_lock->unlock();
+       timer->update();
+       timer->subtract(-stop_age);
        interrupted = 0;
        wdw->unlock_window();
 }
@@ -141,6 +144,7 @@ stop_drawing()
        set_view_popup(0);
        if( !interrupted )
                interrupted = 1;
+       stop_age = timer->get_difference();
        wdw->unlock_window();
 }
 
@@ -290,6 +294,14 @@ draw(VIcon *vicon)
        return 1;
 }
 
+void VIconThread::hide_vicons(int v)
+{
+       for( int i=0; i<t_heap.size(); ++i ) {
+               t_heap[i]->hidden = v;
+               t_heap[i]->age = 0;
+       }
+}
+
 void VIconThread::
 run()
 {