OSDN Git Service

DTXMania089リリースに際してのtag付け。
[dtxmania/dtxmania.git] / 110401(DTXMania089) / FDK17プロジェクト / コード / 00.共通 / CFPS.cs
1 using System;\r
2 using System.Collections.Generic;\r
3 using System.Text;\r
4 \r
5 namespace FDK\r
6 {\r
7         public class CFPS\r
8         {\r
9                 // プロパティ\r
10 \r
11                 public int n現在のFPS\r
12                 {\r
13                         get;\r
14                         private set;\r
15                 }\r
16                 public bool bFPSの値が変化した\r
17                 {\r
18                         get;\r
19                         private set;\r
20                 }\r
21 \r
22 \r
23                 // コンストラクタ\r
24 \r
25                 public CFPS()\r
26                 {\r
27                         this.n現在のFPS = 0;\r
28                         this.timer = new CTimer( CTimer.E種別.MultiMedia );\r
29                         this.基点時刻ms = this.timer.n現在時刻;\r
30                         this.内部FPS = 0;\r
31                         this.bFPSの値が変化した = false;\r
32                 }\r
33 \r
34 \r
35                 // メソッド\r
36 \r
37                 public void tカウンタ更新()\r
38                 {\r
39                         this.timer.t更新();\r
40                         this.bFPSの値が変化した = false;\r
41 \r
42                         const long INTERVAL = 1000;\r
43                         while( ( this.timer.n現在時刻 - this.基点時刻ms ) >= INTERVAL )\r
44                         {\r
45                                 this.n現在のFPS = this.内部FPS;\r
46                                 this.内部FPS = 0;\r
47                                 this.bFPSの値が変化した = true;\r
48                                 this.基点時刻ms += INTERVAL;\r
49                         }\r
50                         this.内部FPS++;\r
51                 }\r
52 \r
53 \r
54                 // その他\r
55 \r
56                 #region [ private ]\r
57                 //-----------------\r
58                 private CTimer  timer;\r
59                 private long    基点時刻ms;\r
60                 private int             内部FPS;\r
61                 //-----------------\r
62                 #endregion\r
63         }\r
64 }\r