Main Page | Modules | Class Hierarchy | Class List | Directories | File List | Class Members | File Members | Related Pages

msacmdrv.h

00001 /*
00002  *      msacmdrv.h   -       Declarations for MSACM driver
00003  */
00004 
00005 #ifndef __WINE_MSACMDRV_H
00006 #define __WINE_MSACMDRV_H
00007 
00008 #include "windef.h"
00009 #include "msacm.h"
00010 
00011 /***********************************************************************
00012  * Types
00013  */
00014 
00015 /***********************************************************************
00016  * Defines/Enums
00017  */
00018 
00019 #define MAKE_ACM_VERSION(mjr, mnr, bld) \
00020   (((long)(mjr)<<24) | ((long)(mnr)<<16) | ((long)bld))
00021 
00022 #define ACMDRVOPENDESC_SECTIONNAME_CHARS    
00023 
00024 #define ACMDM_DRIVER_NOTIFY             (ACMDM_BASE + 1)
00025 #define ACMDM_DRIVER_DETAILS            (ACMDM_BASE + 10)
00026 
00027 #define ACMDM_HARDWARE_WAVE_CAPS_INPUT  (ACMDM_BASE + 20)
00028 #define ACMDM_HARDWARE_WAVE_CAPS_OUTPUT (ACMDM_BASE + 21)
00029 
00030 #define ACMDM_FORMATTAG_DETAILS         (ACMDM_BASE + 25)
00031 #define ACMDM_FORMAT_DETAILS            (ACMDM_BASE + 26)
00032 #define ACMDM_FORMAT_SUGGEST            (ACMDM_BASE + 27)
00033 
00034 #define ACMDM_FILTERTAG_DETAILS         (ACMDM_BASE + 50)
00035 #define ACMDM_FILTER_DETAILS            (ACMDM_BASE + 51)
00036 
00037 #define ACMDM_STREAM_OPEN               (ACMDM_BASE + 76)
00038 #define ACMDM_STREAM_CLOSE              (ACMDM_BASE + 77)
00039 #define ACMDM_STREAM_SIZE               (ACMDM_BASE + 78)
00040 #define ACMDM_STREAM_CONVERT            (ACMDM_BASE + 79)
00041 #define ACMDM_STREAM_RESET              (ACMDM_BASE + 80)
00042 #define ACMDM_STREAM_PREPARE            (ACMDM_BASE + 81)
00043 #define ACMDM_STREAM_UNPREPARE          (ACMDM_BASE + 82)
00044 #define ACMDM_STREAM_UPDATE             (ACMDM_BASE + 83)
00045 
00046 /***********************************************************************
00047  * Structures
00048  */
00049 
00050 typedef struct _ACMDRVOPENDESCA
00051 {
00052   DWORD  cbStruct;
00053   FOURCC fccType;
00054   FOURCC fccComp;
00055   DWORD  dwVersion;
00056   DWORD  dwFlags;
00057   DWORD  dwError;
00058   LPCSTR pszSectionName;
00059   LPCSTR pszAliasName;
00060   DWORD  dnDevNode;
00061 } ACMDRVOPENDESCA, *PACMDRVOPENDESCA;
00062 
00063 typedef struct _ACMDRVOPENDESCW
00064 {
00065   DWORD   cbStruct;
00066   FOURCC  fccType;
00067   FOURCC  fccComp;
00068   DWORD   dwVersion;
00069   DWORD   dwFlags;
00070   DWORD   dwError;
00071   LPCWSTR pszSectionName;
00072   LPCWSTR pszAliasName;
00073   DWORD   dnDevNode;
00074 } ACMDRVOPENDESCW, *PACMDRVOPENDESCW;
00075 
00076 typedef struct _ACMDRVOPENDESC16
00077 {
00078   DWORD  cbStruct;
00079   FOURCC fccType;
00080   FOURCC fccComp;
00081   DWORD  dwVersion;
00082   DWORD  dwFlags;
00083   DWORD  dwError;
00084   LPCSTR pszSectionName;
00085   LPCSTR pszAliasName;
00086   DWORD  dnDevNode;
00087 } ACMDRVOPENDESC16, *NPACMDRVOPENDESC16, *LPACMDRVOPENDESC16;
00088 
00089 typedef struct _ACMDRVSTREAMINSTANCE16
00090 {
00091   DWORD            cbStruct;
00092   LPWAVEFORMATEX   pwfxSrc;
00093   LPWAVEFORMATEX   pwfxDst;
00094   LPWAVEFILTER     pwfltr;
00095   DWORD            dwCallback;
00096   DWORD            dwInstance;
00097   DWORD            fdwOpen;
00098   DWORD            fdwDriver;
00099   DWORD            dwDriver;
00100   HACMSTREAM16     has;
00101 } ACMDRVSTREAMINSTANCE16, *NPACMDRVSTREAMINSTANCE16, *LPACMDRVSTREAMINSTANCE16;
00102 
00103 typedef struct _ACMDRVSTREAMINSTANCE
00104 {
00105   DWORD           cbStruct;
00106   PWAVEFORMATEX   pwfxSrc;
00107   PWAVEFORMATEX   pwfxDst;
00108   PWAVEFILTER     pwfltr;
00109   DWORD           dwCallback;
00110   DWORD           dwInstance;
00111   DWORD           fdwOpen;
00112   DWORD           fdwDriver;
00113   DWORD           dwDriver;
00114   HACMSTREAM    has;
00115 } ACMDRVSTREAMINSTANCE, *PACMDRVSTREAMINSTANCE;
00116 
00117 
00118 typedef struct _ACMDRVSTREAMHEADER16 *LPACMDRVSTREAMHEADER16;
00119 typedef struct _ACMDRVSTREAMHEADER16 {
00120   DWORD  cbStruct;
00121   DWORD  fdwStatus;
00122   DWORD  dwUser;
00123   LPBYTE pbSrc;
00124   DWORD  cbSrcLength;
00125   DWORD  cbSrcLengthUsed;
00126   DWORD  dwSrcUser;
00127   LPBYTE pbDst;
00128   DWORD  cbDstLength;
00129   DWORD  cbDstLengthUsed;
00130   DWORD  dwDstUser;
00131 
00132   DWORD fdwConvert;
00133   LPACMDRVSTREAMHEADER16 *padshNext;
00134   DWORD fdwDriver;
00135   DWORD dwDriver;
00136 
00137   /* Internal fields for ACM */
00138   DWORD  fdwPrepared;
00139   DWORD  dwPrepared;
00140   LPBYTE pbPreparedSrc;
00141   DWORD  cbPreparedSrcLength;
00142   LPBYTE pbPreparedDst;
00143   DWORD  cbPreparedDstLength;
00144 } ACMDRVSTREAMHEADER16, *NPACMDRVSTREAMHEADER16;
00145 
00146 typedef struct _ACMDRVSTREAMHEADER *PACMDRVSTREAMHEADER;
00147 typedef struct _ACMDRVSTREAMHEADER {
00148   DWORD  cbStruct;
00149   DWORD  fdwStatus;
00150   DWORD  dwUser;
00151   LPBYTE pbSrc;
00152   DWORD  cbSrcLength;
00153   DWORD  cbSrcLengthUsed;
00154   DWORD  dwSrcUser;
00155   LPBYTE pbDst;
00156   DWORD  cbDstLength;
00157   DWORD  cbDstLengthUsed;
00158   DWORD  dwDstUser;
00159 
00160   DWORD fdwConvert;
00161   PACMDRVSTREAMHEADER *padshNext;
00162   DWORD fdwDriver;
00163   DWORD dwDriver;
00164 
00165   /* Internal fields for ACM */
00166   DWORD  fdwPrepared;
00167   DWORD  dwPrepared;
00168   LPBYTE pbPreparedSrc;
00169   DWORD  cbPreparedSrcLength;
00170   LPBYTE pbPreparedDst;
00171   DWORD  cbPreparedDstLength;
00172 } ACMDRVSTREAMHEADER;
00173 
00174 typedef struct _ACMDRVSTREAMSIZE
00175 {
00176   DWORD cbStruct;
00177   DWORD fdwSize;
00178   DWORD cbSrcLength;
00179   DWORD cbDstLength;
00180 } ACMDRVSTREAMSIZE16, *NPACMDRVSTREAMSIZE16, *LPACMDRVSTREAMSIZE16,
00181   ACMDRVSTREAMSIZE, *PACMDRVSTREAMSIZE;
00182 
00183 typedef struct _ACMDRVFORMATSUGGEST16
00184 {
00185   DWORD            cbStruct;
00186   DWORD            fdwSuggest;
00187   LPWAVEFORMATEX   pwfxSrc;
00188   DWORD            cbwfxSrc;
00189   LPWAVEFORMATEX   pwfxDst;
00190   DWORD            cbwfxDst;
00191 } ACMDRVFORMATSUGGEST16, *NPACMDRVFORMATSUGGEST, *LPACMDRVFORMATSUGGEST;
00192 
00193 typedef struct _ACMDRVFORMATSUGGEST
00194 {
00195   DWORD           cbStruct;
00196   DWORD           fdwSuggest;
00197   PWAVEFORMATEX   pwfxSrc;
00198   DWORD           cbwfxSrc;
00199   PWAVEFORMATEX   pwfxDst;
00200   DWORD           cbwfxDst;
00201 } ACMDRVFORMATSUGGEST, *PACMDRVFORMATSUGGEST;
00202 
00203 #endif  /* __WINE_MSACMDRV_H */

Generated on Tue Dec 20 10:14:22 2005 for vlc-0.8.4a by  doxygen 1.4.2