OSDN Git Service

フォーラム[#56172] SlimDX(改)のフォルダ内容が不完全だったので再UP。
[dtxmania/dtxmania.git] / SlimDXc_Jun2010(VC++2008) / source / xact3 / Cue.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 #include "Engine.h"\r
25 #include "Enums.h"\r
26 #include "CueInstanceProperties.h"\r
27 \r
28 namespace SlimDX\r
29 {\r
30         namespace XACT3\r
31         {\r
32                 public ref class Cue\r
33                 {\r
34                 private:\r
35                         IXACT3Cue* InternalPointer;\r
36 \r
37                 internal:\r
38                         Cue( IXACT3Cue *cue );\r
39 \r
40                 public:\r
41                         Result Destroy();\r
42 \r
43                         /// <summary>\r
44                         /// Get the value for a variable.\r
45                         /// </summary>\r
46                         /// <param name="index">The index of the variable.</param>\r
47                         /// <returns>The value that is currently held by the variable.</returns>\r
48                         float GetVariable(int index);\r
49 \r
50                         /// <summary>\r
51                         /// Get the corresponding index for a variable name string.\r
52                         /// </summary>\r
53                         /// <param name="friendlyName">A string that contains the friendly name of the variable.</param>\r
54                         /// <returns>The index for the variable if it exists, otherwise -1.</returns>\r
55                         int GetVariableIndex(System::String^ friendlyName);\r
56 \r
57                         /// <summary>\r
58                         /// Pause playback of the cue.\r
59                         /// </summary>\r
60                         /// <param name="pause">The action to take. If true, playback is paused, if false, playback is resumed.</param>\r
61                         Result Pause(bool pause);\r
62 \r
63                         /// <summary>\r
64                         /// Play the cue.\r
65                         /// </summary>\r
66                         Result Play();\r
67 \r
68                         Result SetMatrixCoefficients(int sourceChannelCount, int destinationChannelCount, array<float>^ pMatrixCoefficients);\r
69 \r
70                         /// <summary>\r
71                         /// Set the value of a variable.\r
72                         /// </summary>\r
73                         /// <param name="index">The index of the variable.</param>\r
74                         /// <param name="value">The new value of the variable.</param>\r
75                         Result SetVariable(int index, float value);\r
76 \r
77                         /// <summary>\r
78                         /// Stop the cue.\r
79                         /// </summary>\r
80                         /// <param name="flags"><see cref="StopFlags"/> that specify how the cue is stopped.</param>\r
81                         Result Stop(StopFlags flags);\r
82 \r
83                         /// <summary>\r
84                         /// Gets a <see cref="CueInstanceProperties"/> object that contains the properties of the cue instance.\r
85                         /// </summary>\r
86                         property CueInstanceProperties Properties\r
87                         {\r
88                                 CueInstanceProperties get();\r
89                         }\r
90 \r
91                         /// <summary>\r
92                         /// Get a <see cref="CueState"/> value representing the current state of the cue.\r
93                         /// </summary>\r
94                         property CueState State\r
95                         {\r
96                                 CueState get();\r
97                         }\r
98                 };\r
99         }\r
100 }\r