direcs  2012-09-30
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
RGBWindow.h
Go to the documentation of this file.
1 /***************************************************************************
2  * This file is part of the OpenKinect Project. http://www.openkinect.org *
3  * *
4  * Copyright (c) 2010 individual OpenKinect contributors. *
5  * See the CONTRIB file for details. *
6  * *
7  * This file is part of direcs. *
8  * www.direcs.de *
9  * *
10  * direcs is free software: you can redistribute it and/or modify it *
11  * under the terms of the GNU General Public License as published *
12  * by the Free Software Foundation, version 3 of the License. *
13  * *
14  * direcs is distributed in the hope that it will be useful, *
15  * but WITHOUT ANY WARRANTY; without even the implied warranty of *
16  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
17  * GNU General Public License for more details. *
18  * *
19  * You should have received a copy of the GNU General Public License *
20  * along with direcs. If not, see <http://www.gnu.org/licenses/>. *
21  * *
22  ***************************************************************************/
23 
24 #ifndef __RGB_WINDOW_H__
25 #define __RGB_WINDOW_H__
26 
27 #include <QtOpenGL>
28 #include <QTime>
29 #include "QKinect.h"
30 #include <QTime>
31 
42 
43 
44 class RGBWindow : public QGLWidget
45 {
46 Q_OBJECT // must include this if you use Qt signals/slots
47 
48 public :
51  RGBWindow(QWidget *_parent);
52 
53  ~RGBWindow();
54 
57  inline void setMode(int _m){m_mode=_m;}
58 
59 
60 private :
62  std::vector<uint8_t> m_rgb;
63 
65  GLuint m_rgbTexture;
66 
68  int m_mode;
69 
70 
71 protected:
76  void initializeGL();
77 
83  void resizeGL(const int _w, const int _h);
84 
86  // be re-drawn
87  void paintGL();
88 
89 
90 private :
95  void mouseMoveEvent (QMouseEvent * _event);
96 
102  void mousePressEvent (QMouseEvent *_event);
103 
109  void mouseReleaseEvent (QMouseEvent *_event);
110 
112  void timerEvent(QTimerEvent *_event);
113 };
114 
115 #endif