OSDN Git Service

DTXMania089リリースに際してのtag付け。
[dtxmania/dtxmania.git] / 110401(DTXMania089) / SlimDXc_Jun2010(VC++2008) / source / directsound / EchoEffect.h
1 /*\r
2 * Copyright (c) 2007-2010 SlimDX Group\r
3\r
4 * Permission is hereby granted, free of charge, to any person obtaining a copy\r
5 * of this software and associated documentation files (the "Software"), to deal\r
6 * in the Software without restriction, including without limitation the rights\r
7 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\r
8 * copies of the Software, and to permit persons to whom the Software is\r
9 * furnished to do so, subject to the following conditions:\r
10\r
11 * The above copyright notice and this permission notice shall be included in\r
12 * all copies or substantial portions of the Software.\r
13\r
14 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\r
15 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\r
16 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\r
17 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\r
18 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\r
19 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\r
20 * THE SOFTWARE.\r
21 */\r
22 #pragma once\r
23 \r
24 namespace SlimDX\r
25 {\r
26         namespace DirectSound\r
27         {\r
28                 /// <summary>\r
29                 /// The SoundEffectEcho object is used to set and retrieve effect parameters on a buffer that supports echo.\r
30                 /// </summary>\r
31                 /// <unmanaged>IDirectSoundFXEcho</unmanaged>\r
32                 public ref class EchoEffect : public ComObject\r
33                 {\r
34                         COMOBJECT(IDirectSoundFXEcho, EchoEffect);\r
35 \r
36                 public:\r
37                         /// <summary>\r
38                         /// Delay for right channel, in milliseconds. The default value is 500 ms.\r
39                         /// </summary>\r
40                         property float RightDelay\r
41                         {\r
42                                 float get();\r
43                                 void set( float value );\r
44                         }\r
45 \r
46                         /// <summary>\r
47                         /// Delay for left channel, in milliseconds. The default value is 500 ms.\r
48                         /// </summary>\r
49                         property float LeftDelay\r
50                         {\r
51                                 float get();\r
52                                 void set( float value );\r
53                         }\r
54 \r
55                         /// <summary>\r
56                         /// Value that specifies whether to swap left and right delays with each successive echo. The default value is zero, meaning no swap.\r
57                         /// </summary>\r
58                         property int PanDelay\r
59                         {\r
60                                 int get();\r
61                                 void set( int value );\r
62                         }\r
63 \r
64                         /// <summary>\r
65                         /// Percentage of output fed back into input. The default value is 50.\r
66                         /// </summary>\r
67                         property float Feedback\r
68                         {\r
69                                 float get();\r
70                                 void set( float value );\r
71                         }\r
72 \r
73                         /// <summary>\r
74                         /// Ratio of wet (processed) signal to dry (unprocessed) signal.\r
75                         /// </summary>\r
76                         property float WetDryMix\r
77                         {\r
78                                 float get();\r
79                                 void set( float value );\r
80                         }\r
81 \r
82                         /// <summary>\r
83                         /// Default ratio of wet (processed) signal to dry (unprocessed) signal.\r
84                         /// </summary>\r
85                         literal float WetDryMixDefault = 50.0f;\r
86 \r
87                         /// <summary>\r
88                         /// Maximum ratio of wet (processed) signal to dry (unprocessed) signal.\r
89                         /// </summary>\r
90                         literal float WetDryMixMax = DSFXECHO_WETDRYMIX_MAX;\r
91 \r
92                         /// <summary>\r
93                         /// Minimum ratio of wet (processed) signal to dry (unprocessed) signal.\r
94                         /// </summary>\r
95                         literal float WetDryMixMin = DSFXECHO_WETDRYMIX_MIN;\r
96 \r
97                         /// <summary>\r
98                         /// Default delay for left channel, in milliseconds.\r
99                         /// </summary>\r
100                         literal float LeftDelayDefault = 500.0f;\r
101 \r
102                         /// <summary>\r
103                         /// Maximum delay for left channel, in milliseconds.\r
104                         /// </summary>\r
105                         literal float LeftDelayMax = DSFXECHO_LEFTDELAY_MAX;\r
106 \r
107                         /// <summary>\r
108                         /// Minimum delay for left channel, in milliseconds.\r
109                         /// </summary>\r
110                         literal float LeftDelayMin = DSFXECHO_LEFTDELAY_MIN;\r
111 \r
112                         /// <summary>\r
113                         /// Default delay for right channel, in milliseconds.\r
114                         /// </summary>\r
115                         literal float RightDelayDefault = 500.0f;\r
116 \r
117                         /// <summary>\r
118                         /// Maximum delay for right channel, in milliseconds.\r
119                         /// </summary>\r
120                         literal float RightDelayMax = DSFXECHO_RIGHTDELAY_MAX;\r
121 \r
122                         /// <summary>\r
123                         /// Minimum delay for right channel, in milliseconds.\r
124                         /// </summary>\r
125                         literal float RightDelayMin = DSFXECHO_RIGHTDELAY_MIN;\r
126 \r
127                         /// <summary>\r
128                         /// Default value that specifies whether to swap left and right delays with each successive echo. The default value is zero, meaning no swap.\r
129                         /// </summary>\r
130                         literal int   PanDelayDefault = 0;\r
131 \r
132                         /// <summary>\r
133                         /// Maximum value that specifies whether to swap left and right delays with each successive echo. The default value is zero, meaning no swap.\r
134                         /// </summary>\r
135                         literal int   PanDelayMax = DSFXECHO_PANDELAY_MAX;\r
136 \r
137                         /// <summary>\r
138                         /// Minimum value that specifies whether to swap left and right delays with each successive echo. The default value is zero, meaning no swap.\r
139                         /// </summary>\r
140                         literal int   PanDelayMin = DSFXECHO_PANDELAY_MIN;\r
141 \r
142                         /// <summary>\r
143                         /// Default percentage of output fed back into input.\r
144                         /// </summary>\r
145                         literal float FeedbackDefault = 50.0f;\r
146 \r
147                         /// <summary>\r
148                         /// Maximum percentage of output fed back into input.\r
149                         /// </summary>\r
150                         literal float FeedbackMax = DSFXECHO_FEEDBACK_MAX;\r
151 \r
152                         /// <summary>\r
153                         /// Minimum percentage of output fed back into input.\r
154                         /// </summary>\r
155                         literal float FeedbackMin = DSFXECHO_FEEDBACK_MIN;\r
156                 };\r
157         }\r
158 }