1 // CUSTOM_CAMERA.H : an extended ogl_camera class.
2 
3 // Copyright (C) 2006 Tommi Hassinen.
4 
5 // This package is free software; you can redistribute it and/or modify
6 // it under the terms of the GNU General Public License as published by
7 // the Free Software Foundation; either version 2 of the License, or
8 // (at your option) any later version.
9 
10 // This package is distributed in the hope that it will be useful,
11 // but WITHOUT ANY WARRANTY; without even the implied warranty of
12 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 // GNU General Public License for more details.
14 
15 // You should have received a copy of the GNU General Public License
16 // along with this package; if not, write to the Free Software
17 // Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
18 
19 /*################################################################################################*/
20 
21 #ifndef CUSTOM_CAMERA_H
22 #define CUSTOM_CAMERA_H
23 
24 class ghemical_camera;
25 
26 /*################################################################################################*/
27 
28 #include <ghemical/typedef.h>
29 #include <oglappth/ogl_camera.h>
30 
31 #include "project.h"
32 
33 /*################################################################################################*/
34 
35 class custom_camera :
36 	public ogl_camera
37 {
38 	protected:
39 
40 	project * prj;
41 
42 	int ccam_index;
43 	int wcl_counter;
44 
45 	static int ccam_counter;
46 
47 	friend class oglview_wcl;
48 	friend class custom_app;
49 
50 	public:
51 
52 	custom_camera(const ogl_object_location &, GLfloat, project *);
53 	~custom_camera(void);
54 
GetCCamI(void)55 	int GetCCamI(void) { return ccam_index; }
56 };
57 
58 /*################################################################################################*/
59 
60 #endif	// CUSTOM_CAMERA_H
61 
62 // eof
63