]> git.lizzy.rs Git - irrlicht.git/blob - source/Irrlicht/CFPSCounter.h
Add OpenGL3 renderer
[irrlicht.git] / source / Irrlicht / CFPSCounter.h
1 // Copyright (C) 2002-2012 Nikolaus Gebhardt\r
2 // This file is part of the "Irrlicht Engine".\r
3 // For conditions of distribution and use, see copyright notice in irrlicht.h\r
4 \r
5 #ifndef __C_FPSCOUNTER_H_INCLUDED__\r
6 #define __C_FPSCOUNTER_H_INCLUDED__\r
7 \r
8 #include "irrTypes.h"\r
9 \r
10 namespace irr\r
11 {\r
12 namespace video\r
13 {\r
14 \r
15 \r
16 class CFPSCounter\r
17 {\r
18 public:\r
19         CFPSCounter();\r
20 \r
21         //! returns current fps\r
22         s32 getFPS() const;\r
23 \r
24         //! returns primitive count\r
25         u32 getPrimitive() const;\r
26 \r
27         //! returns average primitive count of last period\r
28         u32 getPrimitiveAverage() const;\r
29 \r
30         //! returns accumulated primitive count since start\r
31         u32 getPrimitiveTotal() const;\r
32 \r
33         //! to be called every frame\r
34         void registerFrame(u32 now, u32 primitive);\r
35 \r
36 private:\r
37 \r
38         s32 FPS;\r
39         u32 Primitive;\r
40         u32 StartTime;\r
41 \r
42         u32 FramesCounted;\r
43         u32 PrimitivesCounted;\r
44         u32 PrimitiveAverage;\r
45         u32 PrimitiveTotal;\r
46 };\r
47 \r
48 \r
49 } // end namespace video\r
50 } // end namespace irr\r
51 \r
52 \r
53 #endif\r
54 \r