OSDN Git Service

SlimDX から SharpDX へ機械的に移行。
[dtxmania/dtxmania.git] / DTXManiaプロジェクト / コード / プラグイン / CPluginHost.cs
1 using System;\r
2 using System.Collections.Generic;\r
3 using System.Text;\r
4 using System.IO;\r
5 using System.Drawing;\r
6 using SharpDX;\r
7 using SharpDX.Direct3D9;\r
8 using FDK;\r
9 \r
10 namespace DTXMania\r
11 {\r
12         internal class CPluginHost : IPluginHost\r
13         {\r
14                 // コンストラクタ\r
15 \r
16                 public CPluginHost()\r
17                 {\r
18                         this._DTXManiaVersion = new CDTXVersion(CDTXMania.VERSION);\r
19                 }\r
20 \r
21 \r
22                 // IPluginHost 実装\r
23 \r
24                 public CDTXVersion DTXManiaVersion\r
25                 {\r
26                         get { return this._DTXManiaVersion; }\r
27                 }\r
28                 public Device D3D9Device\r
29                 {\r
30                         get { return (CDTXMania.Instance != null) ? CDTXMania.Instance.Device : null; }\r
31                 }\r
32                 public Format TextureFormat\r
33                 {\r
34                         get { return CDTXMania.Instance.TextureFormat; }\r
35                 }\r
36                 public CTimer Timer\r
37                 {\r
38                         get { return CDTXMania.Instance.Timer; }\r
39                 }\r
40                 public CSound管理 Sound管理\r
41                 {\r
42                         get { return CDTXMania.Instance.Sound管理; }\r
43                 }\r
44                 public Size ClientSize\r
45                 {\r
46                         get { return CDTXMania.Instance.Window.ClientSize; }\r
47                 }\r
48                 public CStage.Eステージ e現在のステージ\r
49                 {\r
50                         get { return (CDTXMania.Instance.r現在のステージ != null) ? CDTXMania.Instance.r現在のステージ.eステージID : CStage.Eステージ.何もしない; }\r
51                 }\r
52                 public CStage.Eフェーズ e現在のフェーズ\r
53                 {\r
54                         get { return (CDTXMania.Instance.r現在のステージ != null) ? CDTXMania.Instance.r現在のステージ.eフェーズID : CStage.Eフェーズ.共通_通常状態; }\r
55                 }\r
56                 public bool t入力を占有する(IPluginActivity act)\r
57                 {\r
58                         if (CDTXMania.Instance.act現在入力を占有中のプラグイン != null)\r
59                                 return false;\r
60 \r
61                         CDTXMania.Instance.act現在入力を占有中のプラグイン = act;\r
62                         return true;\r
63                 }\r
64                 public bool t入力の占有を解除する(IPluginActivity act)\r
65                 {\r
66                         if (CDTXMania.Instance.act現在入力を占有中のプラグイン == null || CDTXMania.Instance.act現在入力を占有中のプラグイン != act)\r
67                                 return false;\r
68 \r
69                         CDTXMania.Instance.act現在入力を占有中のプラグイン = null;\r
70                         return true;\r
71                 }\r
72                 public void tシステムサウンドを再生する(Eシステムサウンド sound)\r
73                 {\r
74                         if (CDTXMania.Instance.Skin != null)\r
75                                 CDTXMania.Instance.Skin[sound].t再生する();\r
76                 }\r
77 \r
78 \r
79                 // その他\r
80 \r
81                 #region [ private ]\r
82                 //-----------------\r
83                 private CDTXVersion _DTXManiaVersion;\r
84                 //-----------------\r
85                 #endregion\r
86         }\r
87 }\r