summaryrefslogtreecommitdiffstats
path: root/src/VBox/Devices/Graphics/shaderlib/wine/include/austream.idl
diff options
context:
space:
mode:
Diffstat (limited to 'src/VBox/Devices/Graphics/shaderlib/wine/include/austream.idl')
-rw-r--r--src/VBox/Devices/Graphics/shaderlib/wine/include/austream.idl117
1 files changed, 117 insertions, 0 deletions
diff --git a/src/VBox/Devices/Graphics/shaderlib/wine/include/austream.idl b/src/VBox/Devices/Graphics/shaderlib/wine/include/austream.idl
new file mode 100644
index 00000000..b3a965ab
--- /dev/null
+++ b/src/VBox/Devices/Graphics/shaderlib/wine/include/austream.idl
@@ -0,0 +1,117 @@
+/*
+ * Copyright 2004 Christian Costa
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+/*
+ * Oracle LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
+ * other than GPL or LGPL is available it will apply instead, Oracle elects to use only
+ * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
+ * a choice of LGPL license versions is made available with the language indicating
+ * that LGPLv2 or any later version may be used, or where a choice of which version
+ * of the LGPL is applied is otherwise unspecified.
+ */
+
+import "unknwn.idl";
+import "mmstream.idl";
+
+cpp_quote("#if 0")
+typedef struct tWAVEFORMATEX WAVEFORMATEX;
+cpp_quote ("#endif")
+
+interface IAudioMediaStream;
+interface IAudioStreamSample;
+interface IMemoryData;
+interface IAudioData;
+
+[
+object,
+local,
+uuid(f7537560-a3be-11d0-8212-00c04fc32c45),
+pointer_default(unique)
+]
+interface IAudioMediaStream : IMediaStream
+{
+ HRESULT GetFormat(
+ [out] /*[optional]*/ WAVEFORMATEX *pWaveFormatCurrent
+ );
+
+ HRESULT SetFormat(
+ [in] const WAVEFORMATEX *lpWaveFormat);
+
+ HRESULT CreateSample(
+ [in] IAudioData *pAudioData,
+ [in] DWORD dwFlags,
+ [out] IAudioStreamSample **ppSample
+ );
+}
+
+
+[
+object,
+local,
+uuid(345fee00-aba5-11d0-8212-00c04fc32c45),
+pointer_default(unique)
+]
+interface IAudioStreamSample : IStreamSample
+{
+ HRESULT GetAudioData(
+ [out] IAudioData **ppAudio
+ );
+}
+
+
+[
+object,
+local,
+uuid(327fc560-af60-11d0-8212-00c04fc32c45),
+pointer_default(unique)
+]
+interface IMemoryData : IUnknown
+{
+ HRESULT SetBuffer(
+ [in] DWORD cbSize,
+ [in] BYTE *pbData,
+ [in] DWORD dwFlags
+ );
+
+ HRESULT GetInfo(
+ [out] DWORD *pdwLength,
+ [out] BYTE **ppbData,
+ [out] DWORD *pcbActualData
+ );
+ HRESULT SetActual(
+ [in] DWORD cbDataValid
+ );
+}
+
+
+[
+object,
+local,
+uuid(54c719c0-af60-11d0-8212-00c04fc32c45),
+pointer_default(unique)
+]
+interface IAudioData : IMemoryData
+{
+ HRESULT GetFormat(
+ [out] /*[optional]*/ WAVEFORMATEX *pWaveFormatCurrent
+ );
+
+ HRESULT SetFormat(
+ [in] const WAVEFORMATEX *lpWaveFormat
+ );
+}