ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

msacmdrv.h
Go to the documentation of this file.
00001 /*
00002  * Declarations for MSACM driver
00003  *
00004  * Copyright 1998 Patrik Stridvall
00005  *
00006  * This library is free software; you can redistribute it and/or
00007  * modify it under the terms of the GNU Lesser General Public
00008  * License as published by the Free Software Foundation; either
00009  * version 2.1 of the License, or (at your option) any later version.
00010  *
00011  * This library is distributed in the hope that it will be useful,
00012  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00013  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00014  * Lesser General Public License for more details.
00015  *
00016  * You should have received a copy of the GNU Lesser General Public
00017  * License along with this library; if not, write to the Free Software
00018  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
00019  */
00020 
00021 #ifndef __WINE_MSACMDRV_H
00022 #define __WINE_MSACMDRV_H
00023 
00024 #include <stdarg.h>
00025 
00026 #include <windef.h>
00027 #include <winbase.h>
00028 #include <mmsystem.h>
00029 #include <mmreg.h>
00030 #include <msacm.h>
00031 
00032 /***********************************************************************
00033  * Types
00034  */
00035 
00036 /***********************************************************************
00037  * Defines/Enums
00038  */
00039 
00040 #define MAKE_ACM_VERSION(mjr, mnr, bld) \
00041   (((LONG)(mjr)<<24) | ((LONG)(mnr)<<16) | ((LONG)bld))
00042 
00043 #define ACMDRVOPENDESC_SECTIONNAME_CHARS
00044 
00045 #define ACMDM_DRIVER_NOTIFY             (ACMDM_BASE + 1)
00046 #define ACMDM_DRIVER_DETAILS            (ACMDM_BASE + 10)
00047 
00048 #define ACMDM_HARDWARE_WAVE_CAPS_INPUT  (ACMDM_BASE + 20)
00049 #define ACMDM_HARDWARE_WAVE_CAPS_OUTPUT (ACMDM_BASE + 21)
00050 
00051 #define ACMDM_FORMATTAG_DETAILS         (ACMDM_BASE + 25)
00052 #define ACMDM_FORMAT_DETAILS            (ACMDM_BASE + 26)
00053 #define ACMDM_FORMAT_SUGGEST            (ACMDM_BASE + 27)
00054 
00055 #define ACMDM_FILTERTAG_DETAILS         (ACMDM_BASE + 50)
00056 #define ACMDM_FILTER_DETAILS            (ACMDM_BASE + 51)
00057 
00058 #define ACMDM_STREAM_OPEN               (ACMDM_BASE + 76)
00059 #define ACMDM_STREAM_CLOSE              (ACMDM_BASE + 77)
00060 #define ACMDM_STREAM_SIZE               (ACMDM_BASE + 78)
00061 #define ACMDM_STREAM_CONVERT            (ACMDM_BASE + 79)
00062 #define ACMDM_STREAM_RESET              (ACMDM_BASE + 80)
00063 #define ACMDM_STREAM_PREPARE            (ACMDM_BASE + 81)
00064 #define ACMDM_STREAM_UNPREPARE          (ACMDM_BASE + 82)
00065 #define ACMDM_STREAM_UPDATE             (ACMDM_BASE + 83)
00066 
00067 /***********************************************************************
00068  * Structures
00069  */
00070 
00071 typedef struct _ACMDRVOPENDESCA
00072 {
00073   DWORD  cbStruct;
00074   FOURCC fccType;
00075   FOURCC fccComp;
00076   DWORD  dwVersion;
00077   DWORD  dwFlags;
00078   DWORD  dwError;
00079   LPCSTR pszSectionName;
00080   LPCSTR pszAliasName;
00081   DWORD  dnDevNode;
00082 } ACMDRVOPENDESCA, *PACMDRVOPENDESCA;
00083 
00084 typedef struct _ACMDRVOPENDESCW
00085 {
00086   DWORD   cbStruct;
00087   FOURCC  fccType;
00088   FOURCC  fccComp;
00089   DWORD   dwVersion;
00090   DWORD   dwFlags;
00091   DWORD   dwError;
00092   LPCWSTR pszSectionName;
00093   LPCWSTR pszAliasName;
00094   DWORD   dnDevNode;
00095 } ACMDRVOPENDESCW, *PACMDRVOPENDESCW;
00096 
00097 typedef struct _ACMDRVSTREAMINSTANCE
00098 {
00099   DWORD           cbStruct;
00100   PWAVEFORMATEX   pwfxSrc;
00101   PWAVEFORMATEX   pwfxDst;
00102   PWAVEFILTER     pwfltr;
00103   DWORD_PTR       dwCallback;
00104   DWORD_PTR       dwInstance;
00105   DWORD           fdwOpen;
00106   DWORD           fdwDriver;
00107   DWORD_PTR       dwDriver;
00108   HACMSTREAM    has;
00109 } ACMDRVSTREAMINSTANCE, *PACMDRVSTREAMINSTANCE;
00110 
00111 typedef struct _ACMDRVSTREAMHEADER *PACMDRVSTREAMHEADER;
00112 typedef struct _ACMDRVSTREAMHEADER {
00113   DWORD                cbStruct;
00114   DWORD                fdwStatus;
00115   DWORD_PTR            dwUser;
00116   LPBYTE               pbSrc;
00117   DWORD                cbSrcLength;
00118   DWORD                cbSrcLengthUsed;
00119   DWORD_PTR            dwSrcUser;
00120   LPBYTE               pbDst;
00121   DWORD                cbDstLength;
00122   DWORD                cbDstLengthUsed;
00123   DWORD_PTR            dwDstUser;
00124 
00125   DWORD                fdwConvert;
00126   PACMDRVSTREAMHEADER *padshNext;
00127   DWORD                fdwDriver;
00128   DWORD_PTR            dwDriver;
00129 
00130   /* Internal fields for ACM */
00131   DWORD                fdwPrepared;
00132   DWORD_PTR            dwPrepared;
00133   LPBYTE               pbPreparedSrc;
00134   DWORD                cbPreparedSrcLength;
00135   LPBYTE               pbPreparedDst;
00136   DWORD                cbPreparedDstLength;
00137 } ACMDRVSTREAMHEADER;
00138 
00139 typedef struct _ACMDRVSTREAMSIZE
00140 {
00141   DWORD cbStruct;
00142   DWORD fdwSize;
00143   DWORD cbSrcLength;
00144   DWORD cbDstLength;
00145 } ACMDRVSTREAMSIZE, *PACMDRVSTREAMSIZE;
00146 
00147 typedef struct _ACMDRVFORMATSUGGEST
00148 {
00149   DWORD           cbStruct;
00150   DWORD           fdwSuggest;
00151   PWAVEFORMATEX   pwfxSrc;
00152   DWORD           cbwfxSrc;
00153   PWAVEFORMATEX   pwfxDst;
00154   DWORD           cbwfxDst;
00155 } ACMDRVFORMATSUGGEST, *PACMDRVFORMATSUGGEST;
00156 
00157 #endif  /* __WINE_MSACMDRV_H */

Generated on Sat May 26 2012 04:32:08 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.