LunaSysMgr
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Pages
FpsHistory.h
Go to the documentation of this file.
1
/* @@@LICENSE
2
*
3
* Copyright (c) 2010-2012 Hewlett-Packard Development Company, L.P.
4
*
5
* Licensed under the Apache License, Version 2.0 (the "License");
6
* you may not use this file except in compliance with the License.
7
* You may obtain a copy of the License at
8
*
9
* http://www.apache.org/licenses/LICENSE-2.0
10
*
11
* Unless required by applicable law or agreed to in writing, software
12
* distributed under the License is distributed on an "AS IS" BASIS,
13
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
* See the License for the specific language governing permissions and
15
* limitations under the License.
16
*
17
* LICENSE@@@ */
18
19
20
21
22
#ifndef FPSHISTORY_H
23
#define FPSHISTORY_H
24
25
#include <stdio.h>
26
#include "
CircularBuffer.h
"
27
#include <vector>
28
29
#ifndef MIN
30
#define MIN(a, b) (((a) < (b)) ? (a) : (b))
31
#endif
32
33
struct
FpsHistoryElem
34
{
35
int
Fps
;
36
int
Standard_Deviation
;
37
};
38
39
struct
FpsHistory
:
public
CircularBuffer
<FpsHistoryElem>
40
{
41
FpsHistory
()
42
{
43
Reset
(1);
44
SetSamplePeriod
(200);
45
}
46
47
void
SetSamplePeriod
(
int
PeriodMs)
48
{
49
SamplePeriodMs
= PeriodMs;
50
}
51
52
void
Reset
(
int
NewSize);
53
void
Dump
();
54
55
const
FpsHistoryElem
&
Flip
();
56
57
protected
:
58
int
SamplePeriodMs
;
59
int
FrameCount
;
60
int
LastSampleMs
;
61
62
};
63
64
#endif
luna-sysmgr
Src
base
FpsHistory.h
Generated on Fri Jun 21 2013 00:53:53 for LunaSysMgr by
1.8.3.1