00001 #ifndef CGLRENDERTHREAD_H 00002 #define CGLRENDERTHREAD_H 00003 00004 /****************************************************************************\ 00005 * REQUIRED HEADERS * 00006 \****************************************************************************/ 00007 00008 //QT 00009 #include <QThread> 00010 //OWN 00011 #include "Definitions.h" 00012 00013 /****************************************************************************\ 00014 * DEFINITIONS * 00015 \****************************************************************************/ 00016 class CGLSurface; 00017 00018 /****************************************************************************\ 00019 * CLASS * 00020 \****************************************************************************/ 00021 class CGLRenderThread : private QThread 00022 { 00023 Q_OBJECT 00024 00025 friend class CGLSurface; 00026 00027 /**************************************************************************\ 00028 * PRIVATE CLASS FUNCTIONS * 00029 \**************************************************************************/ 00030 private: 00031 00032 CGLRenderThread(CGLSurface *newSurface); 00033 ~CGLRenderThread(); 00034 00035 void run(); 00036 00037 /**************************************************************************\ 00038 * PRIVATE CLASS MEMBERS * 00039 \**************************************************************************/ 00040 private: 00041 00042 CGLSurface *surface; 00043 volatile bool render_flag; 00044 volatile bool resize_flag; 00045 }; 00046 00047 #endif // CGLRENDERTHREAD_H