arsa  2.7
IGUIProfiler.h
Go to the documentation of this file.
1 // This file is part of the "Irrlicht Engine".
2 // For conditions of distribution and use, see copyright notice in irrlicht.h
3 // Written by Michael Zeilfelder
4 
5 #ifndef I_GUI_PROFILER_H_INCLUDED__
6 #define I_GUI_PROFILER_H_INCLUDED__
7 
8 #include "IGUIElement.h"
9 
10 namespace irr
11 {
12 class IProfiler;
13 
14 namespace gui
15 {
16  class IGUIFont;
17 
19  class IGUIProfiler : public IGUIElement
20  {
21  public:
23 
24  IGUIProfiler(IGUIEnvironment* environment, IGUIElement* parent, s32 id, core::rect<s32> rectangle, IProfiler* profiler = NULL)
25  : IGUIElement(EGUIET_PROFILER, environment, parent, id, rectangle)
26  {}
27 
29 
30  virtual void firstPage(bool includeOverview=true) = 0;
31 
33 
34  virtual void nextPage(bool includeOverview=true) = 0;
35 
37 
38  virtual void previousPage(bool includeOverview=true) = 0;
39 
41 
42  virtual void setShowGroupsTogether(bool groupsTogether) = 0;
43 
45  virtual bool getShowGroupsTogether() const = 0;
46 
48 
50  virtual void setOverrideFont(IGUIFont* font=0) = 0;
51 
53 
54  virtual IGUIFont* getOverrideFont(void) const = 0;
55 
57 
59  virtual IGUIFont* getActiveFont() const = 0;
60 
62  virtual void setDrawBackground(bool draw) = 0;
63 
65 
66  virtual bool isDrawBackgroundEnabled() const = 0;
67 
69 
70  virtual void setFrozen(bool freeze) = 0;
71 
73  virtual bool getFrozen() const = 0;
74 
76  virtual void setFilters(irr::u32 minCalls = 0, irr::u32 minTimeSum = 0, irr::f32 minTimeAverage = 0.f, irr::u32 minTimeMax = 0) = 0;
77  };
78 
79 } // end namespace gui
80 } // end namespace irr
81 
82 #endif
GLuint id
IGUIProfiler(IGUIEnvironment *environment, IGUIElement *parent, s32 id, core::rect< s32 > rectangle, IProfiler *profiler=NULL)
constructor
Definition: IGUIProfiler.h:24
float f32
32 bit floating point variable.
Definition: irrTypes.h:108
virtual void setFilters(irr::u32 minCalls=0, irr::u32 minTimeSum=0, irr::f32 minTimeAverage=0.f, irr::u32 minTimeMax=0)=0
Filters prevents data that doesn't achieve the conditions from being displayed.
Everything in the Irrlicht Engine can be found in this namespace.
Definition: CARSADPad.h:6
GUI Environment. Used as factory and manager of all other GUI elements.
virtual void nextPage(bool includeOverview=true)=0
Show next page of profile data.
virtual IGUIFont * getOverrideFont(void) const =0
Gets the override font (if any)
Font interface.
Definition: IGUIFont.h:39
virtual bool getFrozen() const =0
Are updates currently frozen.
virtual void setShowGroupsTogether(bool groupsTogether)=0
Try to show as many group-pages together as possible instead of showing at most one group per page.
signed int s32
32 bit signed variable.
Definition: irrTypes.h:70
virtual bool isDrawBackgroundEnabled() const =0
Checks if background drawing is enabled.
virtual void draw()
Draws the element and its children.
Definition: IGUIElement.h:309
GLfloat f
unsigned int u32
32 bit unsigned variable.
Definition: irrTypes.h:62
virtual void setDrawBackground(bool draw)=0
Sets whether to draw the background. By default disabled,.
virtual void previousPage(bool includeOverview=true)=0
Show previous page of profile data.
virtual void setFrozen(bool freeze)=0
Allows to freeze updates which makes it easier to read the numbers.
virtual void setOverrideFont(IGUIFont *font=0)=0
Sets another skin independent font.
Base class of all GUI elements.
Definition: IGUIElement.h:23
#define NULL
Definition: begin_code.h:167
Code-profiler. Please check the example in the Irrlicht examples folder about how to use it.
Definition: IProfiler.h:101
virtual void firstPage(bool includeOverview=true)=0
Show first page of profile data.
virtual IGUIFont * getActiveFont() const =0
Get the font which is used right now for drawing.
Element to display profiler information.
Definition: IGUIProfiler.h:19
virtual bool getShowGroupsTogether() const =0
Can several groups be displayed per page?